XML

作者: 那些傲慢的404 | 来源:发表于2020-07-16 22:40 被阅读0次

XML 全称是Extensible Markup Language,可扩展标记语言。

XML 声明

  • XML声明说明XML文档的基本信息,包括版本号与字符集,写在XML第一行。
<?xml version="1.0" encoding="UTF-8"?>

XML实体引用

截屏2020-07-16 下午10.11.50.png

CDATA标签

  • CDATA 指的是不应由XML解析器进行解析的文本数据
  • 从 "<![CDATA["开始,到"]]>"结束
<lesson>
    <content>
        <![CDATA][
        <body>
            <a href="index.html">首页</a>
        </body>
        ]
    </content>
</lesson>

DTD

  • DTD (Document Type Definition,文档类型定义)是一种简单易用的语义约束方式
  • DTD文件的扩展名为.dtd
DTD节点定义
  • 只允许出现1个employee 子节点
<!ELEMENT index(employee)>
  • employee 节点必须包含以下两个节点
<!ELEMENT employee(name, age)>
  • PCDATA 代表文本元素

<!ELEMENT name(#PCDATA)>
DTD定义节点数量
  • 至少出现一个子节点
  • 出现0...N个子节点
  • 最多出现一个子节点
<!ELEMENT index(employee+)>
<!ELEMENT index(employee*)>
<!ELEMENT index(employee?)>

XML中引用DTD文件

<!DOCTYPE index SYSTEM "index.dtd">

XML Schema

  • XML Schema 提供了数据类型、格式限定、数据范围等特性
  • XML Schema 是W3C标准
  • 后缀名.xsd
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema">
    <element name="hr">
        <!-- complexType标签含义是复杂节点,包含子节点时必须使用这个标签 -->
        <complexType>
            <sequence>
                <element name="employee" minOccurs="1" maxOccurs="9999">
                    <complexType>
                        <sequence>
                            <element name="name" type="string"></element>
                            <element name="age">
                                <simpleType>
                                    <restriction base="integer">
                                        <minInclusive value="18"></minInclusive>
                                        <maxInclusive value="60"></maxInclusive>
                                    </restriction>
                                </simpleType>
                            </element>
                            <element name="salary" type="integer"></element>
                            <element name="department">
                                <complexType>
                                    <sequence>
                                        <element name="dname" type="string"></element>
                                        <element name="address" type="string"></element>
                                    </sequence>
                                </complexType>
                            </element>
                        </sequence>
                        <attribute name="no" type="string" use="required"></attribute>                  
                    </complexType>
                </element>
            </sequence>
        </complexType>
    </element>  
</schema>
在XML中引入 XML Schema
<index xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:noNamespaceSchemaLocation="index.xsd">

相关文章

网友评论

      本文标题:XML

      本文链接:https://www.haomeiwen.com/subject/dxfvhktx.html