第二十九章 控制到 XML 模式的映射 - 类名列表

这篇具有很好参考价值的文章主要介绍了第二十九章 控制到 XML 模式的映射 - 类名列表。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第二十九章 控制到 XML 模式的映射 - List of Classname

List of Classname

本部分显示了从支持 XML 的类生成的 XML 架构的一部分(当该类包含定义为类名列表的属性时)。例如,考虑以下属性定义:

Property PropName As list Of %Integer(XMLITEMNAME = "MyXmlItemName");

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

<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
targetNamespace="mytypes">
  <complexType name="DemoList1">
    <sequence>
      <element minOccurs="0" name="PropName" type="s01:ArrayOfMyXmlItemNameLong" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="ArrayOfMyXmlItemNameLong">
    <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s:long"/>
    </sequence>
  </complexType>
...
</schema>

以下规则管理类型的名称:

  • 对于 PropName 属性,相应的类型被命名为 ArrayOfXMLItemNameType,其中:

    • XMLItemName 是集合中项目的名称,如控制列表类型属性的元素和属性名称中所述。对于数据类型属性,默认项目名称是在属性名称末尾附加 Item 的名称。 (对于对象属性,默认项名称是短类名称。)
    • Type 是属性类映射到的 XML 类型。
    <element minOccurs="0" name="PropName" type="s01:ArrayOfMyXmlItemNameLong" xmlns:s01="mytypes"/>
    

    注意:如果 XMLItemNameType 相同,则对于 PropName 属性,相应的类型将命名为 ArrayOfXMLItemName。即,从类型名称中删除冗余数组项。要使类型名称包含冗余名称,请将( %XML.Schema 实例)AllowRedundantArrayName 属性指定为 1。同样,在 Web 服务类中,要在类型中包含冗余数组项名称在 WSDL 中,将(Web 服务类的)ALLOWREDUNDANTARRAYNAME 参数指定为 1

  • 类型 ArrayOfXMLItemNameType 被定义为另一种类型的 <sequence>,名为 XMLItemName

      <complexType name="ArrayOfMyXmlItemNameLong">
    <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s:long"/>
    </sequence>
    </complexType>
    
  • 元素 XMLItemName 基于与数据类型类对应的 XSD 类型:

    <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s:long"/>
    

Classname 引用对象类时,适用相同的规则。例如,考虑以下属性定义:

Property PropName As list Of SimpleObject(XMLITEMNAME = "MyXmlItemName");

其中 Simple.Object 包含两个属性:MyPropAnotherProp。如果此属性位于名为 Test.DemoObjList 的启用 XML 的类中,则该类的 XML 架构包含以下内容:文章来源地址https://www.toymoban.com/news/detail-759033.html

<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
targetNamespace="mytypes">
  <complexType name="DemoObjList">
    <sequence>
      <element minOccurs="0" name="PropName" type="s01:ArrayOfMyXmlItemNameSimpleObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="ArrayOfMyXmlItemNameSimpleObject">
    <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="MyXmlItemName" nillable="true" type="s01:SimpleObject" xmlns:s01="mytypes"/>
    </sequence>
  </complexType>
  <complexType name="SimpleObject">
    <sequence>
      <element minOccurs="0" name="MyProp" type="s:string"/>
      <element minOccurs="0" name="AnotherProp" type="s:string"/>
    </sequence>
  </complexType>
...
</schema>

到了这里,关于第二十九章 控制到 XML 模式的映射 - 类名列表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue 3 第二十九章:路由管理(Vue Router4.x基础知识)

    Vue Router 是 Vue.js 官方的 路由管理器 。它和 Vue.js 的 核心 深度集成,可以轻松地 构建单页面应用程序 。Vue Router 允许我们在应用程序中 定义路由 ,然后根据 URL 来 匹配路由 ,并 渲染对应的组件 。 Vue Router 的核心概念包括 路由 、 路由器 、 路由视图 和 导航守卫 。 路由

    2024年02月07日
    浏览(36)
  • 第二十九篇、基于Arduino uno,控制MP3Player mini模块播放音乐——结果导向

    说明:通电后播放对应的歌曲,可以选择循环播放还是播放一次,也可以通过串口指定播放对应的音乐,如果是你想要的,可以接着往下看。 说明:虽然MP3Player mini模块有很多型号,但是原理和代码都是适用的。 说明:只需要连接六根线。 引脚图: uno————MP3Player mini模

    2024年02月03日
    浏览(57)
  • 第三十章 控制到 XML 模式的映射 - Array of Classname

    本部分显示了从启用 XML 的类生成的 XML 架构的一部分,此时该类包含定义为类名数组的属性。例如,考虑以下属性定义: 如果此属性位于名为 Test.DemoArray1 的启用 XML 的类中,则该类的 XML 架构包含以下内容: 以下规则管理类型的名称: 对于 PropName 属性,相应的类型被命名

    2024年02月05日
    浏览(36)
  • 路由器工作原理(第二十九课)

    路由器工作原理(第二十九课) 一图胜过千言 1) 路由:数据从一个网络到另外一个网络之间转发数据包的过程称为路由 2) 路由器:连接不同网络,实现不同网段之间的通信 3)路由表:路由器选择数据的传输路径的依据

    2024年02月14日
    浏览(39)
  • 【从零开始学习JAVA | 第二十九篇】Stream流

    目录 前言: Stram流: 设计目标: 使用步骤: 1.先得到一条Stream流,并把数据放上去。 2.利用Stream流中的各种API进行操作。 使用Stream流的注意事项: 总结:         本文我们将学习Stream流,他就像流水线一样,可以对我们要处理的对象进行逐步处理,最终达到我们想要的效果

    2024年02月17日
    浏览(48)
  • JavaScript从入门到精通系列第二十九篇:正则表达式初体验

      文章目录 一:正则表达式 1:简介 2:正则表达式 3:检查字符串         正则表达式应用的场景是什么呢?比方说检查客户注册的电子邮件的格式的标准性。让计算机基于固定的格式,去检测用户输入的电子邮件地址是不是正确的电子邮件地址。         正则表达式用于

    2024年02月06日
    浏览(61)
  • 《HeadFirst设计模式(第二版)》第九章代码——组合模式

    上一章链接: 《HeadFirst设计模式(第二版)》第九章代码——迭代器模式_轩下小酌的博客-CSDN博客         前面说到,当一个菜单里面出现了子菜单的时候,前面的迭代器模式得换成组合模式。 组合模式:         允许将对象组合成树形结构来表现部分-整体层次结构。组

    2024年02月12日
    浏览(46)
  • 网络安全进阶学习第二十一课——XML介绍

    XML(eXtensible Markup Language),可扩展标记语言,是一种标记语言,使用简单标记描述数据;(另一种常见的标记语言是HTML) XML是一种非常灵活的语言, 没有固定的标签,所有标签都可以自定义 ; 通常 XML被用于信息的传递和记录 ,因此,xml经常被用于充当配置文件。如果把

    2024年02月06日
    浏览(48)
  • 《HeadFirst设计模式(第二版)》第九章代码——迭代器模式

            一家早餐店和一家午餐点准备合并在一起,两家的点菜的菜单实现方式如下:         首先,他们的菜单选项都基于同一个类: 菜单选项类 早餐店初始菜单 午餐店初始菜单: 可以得知:前者使用List来实现,后者使用数组来实现。 这时候,如果不采取任何方法加以

    2024年02月12日
    浏览(41)
  • 二十三种设计模式第十九篇--命令模式

    命令模式是一种行为设计模式, 它将请求封装成一个独立的对象,从而允许您以参数化的方式将客户端代码与具体实现解耦 。在命令模式中, 命令对象充当调用者和接收者之间的中介 。这使您能够根据需要将请求排队、记录请求日志、撤销操作等。 命令模式的核心组成部

    2024年02月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包