第三十二章 控制到 XML 模式的映射 - %ListOfObjects

文章目录

  • [第三十二章 控制到 XML 模式的映射 - %ListOfObjects](#第三十二章 控制到 XML 模式的映射 - %ListOfObjects)
  • `%ArrayOfObjects`

第三十二章 控制到 XML 模式的映射 - %ListOfObjects

本部分显示了从支持 XML 的类生成的 XML架构的一部分,该类包含定义为 %ListOfObjects 的属性。例如,考虑以下属性定义:

java 复制代码
Property PropName As list Of %Integer(XMLITEMNAME = "MyXmlItemName");

如果此属性位于名为 Test.DemoObjList1 的启用 XML 的类中,则该类的 XML 架构包含以下内容:

xml 复制代码
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
targetNamespace="mytypes">
  <complexType name="DemoObjList1">
    <sequence>
      <element minOccurs="0" name="PropName" type="s01:ArrayOfMyXmlItemNameRegisteredObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="ArrayOfMyXmlItemNameRegisteredObject">
    <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s01:RegisteredObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
...
</schema>

类型的命名规则请参见类名列表。注意集合项类型是RegisteredObject,没有定义:

xml 复制代码
<element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s01:RegisteredObject" xmlns:s01="mytypes"/>

因此,该架构无法使用。

%ArrayOfObjects

本部分显示了从支持 XML 的类生成的 XML 架构的一部分,该类包含定义为 %ArrayOfObjects的属性。例如,考虑以下属性定义:

java 复制代码
Property PropName As %ArrayOfObjects(XMLITEMNAME = "MyXmlItemName", XMLKEYNAME = "MyXmlKeyName");

如果此属性位于名为 Test.DemoObjArray1 的启用 XML 的类中,则该类的 XML 架构包含以下内容:

xml 复制代码
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="mytypes">
  <complexType name="DemoObjArray1">
    <sequence>
      <element minOccurs="0" name="PropName" type="s01:ArrayOfMyXmlItemNamePairOfMyXmlKeyNameRegisteredObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="ArrayOfMyXmlItemNamePairOfMyXmlKeyNameRegisteredObject">
    <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s01:PairOfMyXmlKeyNameRegisteredObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="PairOfMyXmlKeyNameRegisteredObject">
    <complexContent>
      <extension base="s01:RegisteredObject" xmlns:s01="mytypes">
        <attribute name="MyXmlKeyName" type="s:string" use="required"/>
      </extension>
    </complexContent>
  </complexType>
...
</schema>

类型的命名规则请参见类名列表。注意,集合项类型是基于RegisteredObject的,没有定义:

xml 复制代码
  <complexType name="PairOfMyXmlKeyNameRegisteredObject">
    <complexContent>
      <extension base="s01:RegisteredObject" xmlns:s01="mytypes">
        <attribute name="MyXmlKeyName" type="s:string" use="required"/>
      </extension>
    </complexContent>
  </complexType>

因此,该架构无法使用。

相关推荐
测试_AI_一辰9 分钟前
项目实践笔记13:多用户事实碎片 Agent 的接口测试与约束设计
开发语言·人工智能·ai编程
数据知道11 分钟前
PostgreSQL 核心原理:读已提交与可重复读的底层实现差异(事务隔离级别)
数据库·postgresql
crossaspeed13 分钟前
MySQL的MVCC
数据库·mysql
2401_8576835418 分钟前
为你的Python脚本添加图形界面(GUI)
jvm·数据库·python
m0_7066532323 分钟前
使用Python自动收发邮件
jvm·数据库·python
twj_one31 分钟前
java中23种设计模式
java·开发语言·设计模式
梵刹古音33 分钟前
【C语言】 跳转语句
c语言·开发语言·算法
松涛和鸣36 分钟前
DAY67 IMX6 Development Board Configuration from Scratch
数据库·postgresql·sqlserver
路由侠内网穿透.40 分钟前
fnOS 飞牛云 NAS 本地部署私人影视库 MoonTV 并实现外部访问
运维·服务器·网络·数据库·网络协议
怣5043 分钟前
MySQL表筛选分组全解析:排序、分组与限制的艺术
数据库·mysql