第二十五章 控制到 XML 模式的映射 - 将文字属性映射到 XML 模式

2023-12-06 07:28

本文主要是介绍第二十五章 控制到 XML 模式的映射 - 将文字属性映射到 XML 模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 第二十五章 控制到 XML 模式的映射 - 将文字属性映射到 XML 模式
  • 将文字属性映射到 `XML` 模式
    • `IRIS` 数据类型类的默认 `XSD` 类型

第二十五章 控制到 XML 模式的映射 - 将文字属性映射到 XML 模式

将文字属性映射到 XML 模式

本节讨论如何将文字(非集合)属性投影到 XML 类型,以及影响 XML 架构的选项。它讨论了以下内容:

  • 数据类型类的默认 XSD 类型
  • 影响架构的编译器关键字
  • 影响架构的参数

IRIS 数据类型类的默认 XSD 类型

如果类或类属性基于常见 IRIS 数据类型类之一,则将根据下表自动设置 XML 类型。 %xsd 包中的类直接映射到 XML 类型,如表中所示。

%Library%xsd 包中 IRIS 数据类型的 XM 类型

IRIS Class in the %xsd PackageIRIS Class in the %Library PackageXSD Type Used in Projections to XML
%xsd.anyURIanyURI
%xsd.base64Binary%Binary%Statusbase64Binary
%xsd.boolean%Booleanboolean
%xsd.byte%TinyIntbyte
%xsd.date%Datedate
%xsd.dateTime%PosixTime%StringTimeStamp%TimeStampdateTime
%xsd.decimal%Currency%Decimal%Numericdecimal
%xsd.double%Doubledouble
%xsd.floatfloat
%xsd.hexBinaryhexBinary
%xsd.intint
%xsd.integerinteger
%xsd.long%BigIn%Integerlong
%xsd.negativeIntegernegativeInteger
%xsd.nonNegativeIntegernonNegativeInteger
%xsd.nonPositiveIntegernonPositiveInteger
%xsd.positiveIntegerpositiveInteger
%xsd.short%SmallIntshort
%xsd.string%Name%String%Liststring
%xsd.time%Timetime
%xsd.unsignedByteunsignedByte
%xsd.unsignedIntunsignedInt
%xsd.unsignedLongunsignedLong
%xsd.unsignedShortunsignedShort

有关 XML 数据类型的信息,请参阅 https://www.w3.org/TR/xmlschema-2/。

例如,考虑以下类:

Class Schema.DataTypesDemo Extends (%RegisteredObject, %XML.Adaptor)
{Parameter XMLTYPENAMESPACE="mytypes";Property binaryprop As %xsd.base64Binary;Property booleanprop As %Boolean;Property dateprop As %Date;Property datetimeprop As %TimeStamp;Property decimalprop As %Numeric;Property integerprop As %Integer;Property stringprop As %String;Property timeprop As %Time;}

该类的架构如下:

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:s="http://www.w3.org/2001/XMLSchema" 
elementFormDefault="qualified" targetNamespace="mytypes"><complexType name="DataTypesDemo"><sequence><element minOccurs="0" name="binaryprop" type="s:base64Binary"/><element minOccurs="0" name="booleanprop" type="s:boolean"/><element minOccurs="0" name="dateprop" type="s:date"/><element minOccurs="0" name="datetimeprop" type="s:dateTime"/><element minOccurs="0" name="decimalprop" type="s:decimal"/><element minOccurs="0" name="integerprop" type="s:long"/><element minOccurs="0" name="stringprop" type="s:string"/><element minOccurs="0" name="timeprop" type="s:time"/></sequence></complexType>
</schema>

这篇关于第二十五章 控制到 XML 模式的映射 - 将文字属性映射到 XML 模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/460954

相关文章

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

Python如何调用另一个类的方法和属性

《Python如何调用另一个类的方法和属性》在Python面向对象编程中,类与类之间的交互是非常常见的场景,本文将详细介绍在Python中一个类如何调用另一个类的方法和属性,大家可以根据需要进行选择... 目录一、前言二、基本调用方式通过实例化调用通过类继承调用三、高级调用方式通过组合方式调用通过类方法/静

MyBatis的xml中字符串类型判空与非字符串类型判空处理方式(最新整理)

《MyBatis的xml中字符串类型判空与非字符串类型判空处理方式(最新整理)》本文给大家介绍MyBatis的xml中字符串类型判空与非字符串类型判空处理方式,本文给大家介绍的非常详细,对大家的学习或... 目录完整 Hutool 写法版本对比优化为什么status变成Long?为什么 price 没事?怎

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

spring中的@MapperScan注解属性解析

《spring中的@MapperScan注解属性解析》@MapperScan是Spring集成MyBatis时自动扫描Mapper接口的注解,简化配置并支持多数据源,通过属性控制扫描路径和过滤条件,利... 目录一、核心功能与作用二、注解属性解析三、底层实现原理四、使用场景与最佳实践五、注意事项与常见问题六

Kotlin Map映射转换问题小结

《KotlinMap映射转换问题小结》文章介绍了Kotlin集合转换的多种方法,包括map(一对一转换)、mapIndexed(带索引)、mapNotNull(过滤null)、mapKeys/map... 目录Kotlin 集合转换:map、mapIndexed、mapNotNull、mapKeys、map

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直