`

xml

 
阅读更多
1.xml中targetSchema的说明:
targetSchema是和elementFormDefault以及attributeFormDefault 结合在一起使用的。
Schema文件定义的目的就是为了效检,那Schema文件到底定义了一些什么东西呢?就是Element和Type,还有Attribute。 就是说,elementFormDefault和attributeFormDefault的值设为qualified之后,Element和Type,还有Attribute的默认命名空间就是targetNameSpace定义的命名空间。
翻译过来就是 元素,类型以及属性,而这些东西是可以定义命名空间也可以不定义命名空间,定义命名空间的作用就是为了避免重复,特别是在大型的系统中,出现重复的可能性很高,而这个命名空间是如何定义的呢,就是通过targetSchema 来定义的,elementFormDefault 和 attributeFormDefault 两个属性决定了 targetSchema 所定义的命名空间的作用范围
  是这样的,如果elementFormDefault和attributeFormDefault的值设为qualified之后,那么他们的命名空间就是 targetSchema 定义的命名空间
如果 elementFormDefault 定义为 elementFormDefault="unqualified" ,则只是元素的根元 素的命名空间为 targetSchema 所定义,其子元素 则是 没有命名空间的

 <xs:Schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="aaaa" elementFormDefault="unqualified" attributeFormDefault="unqualified">
    <xs:element name="c">
        <xs:complexType>
            <xs:Sequence>
                <xs:element name="c1" type="xs:Double"/>
                <xs:element name="c2" type="xs:String"/>
            </xs:Sequence>
        </xs:complexType>
    </xs:element>
</xs:Schema>



xs:element name="c" 是根,xs:element name="c1" 是其子元素

参考:请问Schema中elementFormDefault="qualified"是起什么作用呀

2.Schema Compositor说明
  Compositor表示元素节点出现的顺序,它包含三种类型sequence、all、choice。
  sequence -- 元素出现有先后顺序
  all -- 元素必须都出现,且只出现一次
  choice -- 只能从元素中选择一个
  那如何实现 元素出现的个数无限制,顺序也没有限制呢?
 
  <xs:element name="Connectors">
    <xs:complexType>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element ref="Association" />
            <xs:element ref="Message" />
            <xs:element ref="Sequence" />
        </xs:choice>
    </xs:complexType>
   </xs:element>
  

参考:define child elements 0-* in any order
分享到:
评论

相关推荐

    pugixml读写XML示例

    pugixml是一款轻量级、高性能的C++库,专为XML解析和操作而设计。这个库由Artemev开发,提供了简单易用的API,使得在C++项目中处理XML文档变得非常便捷。本示例将详细介绍如何使用pugixml进行XML的读取和写入操作。 ...

    tinyxml与tinyxml2

    TinyXML和TinyXML2是两个小型的开源库,专门用于解析和操作XML(eXtensible Markup Language)文档。这两个库都是用C++编写的,为C++开发者提供了方便的接口来读取、写入和操作XML数据。下面将详细介绍这两个库的...

    易语言 xml解析 易语言 xml解析 教程 带源码

    易语言XML解析是编程领域中的一个重要主题,尤其对于使用易语言进行开发的程序员来说,理解并掌握XML(可扩展标记语言)的解析方法是至关重要的。XML作为一种结构化数据存储和交换格式,广泛应用于网络通信、配置...

    andxml xml解密工具

    andxml汉化版是一个xml文件反编译工具,可与APKTOOL反编译配合使用,APK文件使用APKTool反编译生成XML文件后,就可以直接通过它进行汉化编辑 注意: 1、一键机器翻译会造成某些代码出现翻译错误现象,请人工识别。...

    XML解析工具- TinyXML2 -源代码 - C++

    TinyXML-2 是一个简单、小型、高效的 C++ XML 解析器,可以被轻松集成到其他程序中。它使用文档对象模型(DOM)的方式解析XML,可解析 XML 文档,并根据该文档构建可读取、修改和保存的文档对象模型。 作为XML解析...

    xml2axml反编译AndroidManafest文件

    使用java工具xml2axml.jar反编译AndroidManafest文件 通过xml2axml.jar工具反编译AndroidManafest文件 还原AndroidManafest.xml详细过程: 1、获取到apk 2、解压获取里面的AndroidManifest.xml文件 3、在xml2axml....

Global site tag (gtag.js) - Google Analytics