XML元素限定的意义:XML 用于数据交换,而标签又是可以任意定义的,为了让 XML 的编写者和使用者之间能正确交流----->需要对标签等约定.在 XML 中有两种约定方法 dtd 格式和 xsd 格式

DTD格式

  • 介绍:DTD 是 Document Type Definition 的简写,规定好文档内容如何书写:那个元素是根,有那些子元素,元素有那些属性等。如果编写者和阅读者实现约定好,那么他们就能沟通
  • 定义
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT person (name,pwd,age,birthday) >
<!ELEMENT name (#PCDATA)>
<!ELEMENT pwd ANY>
<!ELEMENT age ANY>
<!ELEMENT birthday ANY>
<!ATTLIST person id CDATA #REQUIRED>
  • 使用
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE person PUBLIC "http://www.xcu.edu.cn/person.dtd" "person.dtd" >
<person id="22">
<name>2>3</name>
<pwd/>
<age/>
<birthday/>
</person>

XSD格式

  • 介绍:XSD 是 XML 格式对文档结构进行说明,对 DTD 进行了增强,例如添加数据类型支持。
           XSD 的语法可以参考 https://www.w3school.com.cn/schema/schema_intro.asp。
                 我们学习的目标是能读懂它即可。
  • 定义
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/person"
  xmlns:tns="http://www.example.org/person" elementFormDefault="qualified">
    <element name="person">
      <complexType>
        <sequence>
          <element name="name" type="string"></element>
          <element name="pwd" type="string"></element>
          <element name="age" type="integer"></element>
          <element name="birthday" type="date"></element>
        </sequence>
        <attribute name="id" type="integer" use="required"></attribute>
      </complexType>
  </element>

</schema>
  •  使用
<?xml version="1.0" encoding="UTF-8"?>
<person id="100" xmlns="http://www.example.org/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.example.org/person person.xsd ">
<name>name</name>
<pwd>pwd</pwd>
<age>0</age>
<birthday>2001-01-01</birthday>
</person>


XML元素限定的更多相关文章

  1. [xsd学习]xsd元素限定

    限定(restriction)用于为 XML 元素或者属性定义可接受的值 一.xsd中主要限定格式如下: <xs:element name="xxx"><!--元 ...

  2. 转 web项目中的web.xml元素解析

    转 web项目中的web.xml元素解析 发表于1年前(2014-11-26 15:45)   阅读(497) | 评论(0) 16人收藏此文章, 我要收藏 赞0 上海源创会5月15日与你相约[玫瑰里 ...

  3. 递归获取XML元素

    看到的一道题,用递归获取XML元素.... static void Main(string[] args) { string xmlContent = @"<FileSystem> ...

  4. web.xml元素介绍

    每一个站的WEB-INF下都有一个web.xml的设定文件,它提供了对我们站台的配置设定.web.xml中定义元素有:◆站台的名称和说明◆针对环境参数(Context)做初始化工作◆Servlet的名 ...

  5. Python 关于xpath查找XML元素的一点总结

    关于xpath查找XML元素的一点总结 by:授客 QQ:1033553122   欢迎加入全国软件测试qq群:7156436   测试环境 Win7 64 python 3.4.0 实践出真知 代码 ...

  6. 雷林鹏分享:XML 元素

    XML 元素 XML 文档包含 XML 元素. 什么是 XML 元素? XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分. 一个元素可以包含: 其他元素 文本 属性 或混合以上所有. ...

  7. xml元素类型PCDATA和CDATA的区别(DTD中)

      PCDATAPCDATA 的意思是被解析的字符数据(parsed character data).可把字符数据想象为 XML 元素的开始标签与结束标签之间的文本.PCDATA 是会被解析器解析的文 ...

  8. AndroidStudio 3.5格式化xml文件出现自动改变xml元素位置问题

    问题描述格式化xml时,出现自动改变了xml元素位置问题.左侧是原始的,右侧是格式化后的. 坑娘啊,这样界面就完全变了啊. 解决方案在设置里,Appearance& Behavior > ...

  9. XML 文档包含 XML 元素。

    XML 文档包含 XML 元素. 什么是 XML 元素? XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分. 元素可包含其他元素.文本或者两者的混合物.元素也可以拥有属性. < ...

  10. WDSL文件中的XML元素

    WDSL文件中的XML元素 理解起来其实很简单Types指定类型,当然是在后面的Message中需要的类型Message可以理解为函数中的参数,只不过如果一个函数如果有多个参数的时候应该吧这些参数定义 ...

随机推荐

  1. TCP 粘包/拆包的原因及解决方法?

    TCP是以流的方式来处理数据,一个完整的数据包可能会被TCP拆分成多个包进行发送,也可能把多个小的包封装成一个大的数据包.由于TCP数据包之间没有边界保护,所以当发生粘包或拆包时,接收端难以从数据流中 ...

  2. python学习之路---基础概念扩展:变量,表达式,算法,语句,函数,模块,字符串

    对于学过一点编程语言的人,学习python基础知识不难,基本大同小异 本章是根据一本书来学习python的编程(强烈推荐)来记录学习python中的有意思的总结 Python 基础教程(第三版)    ...

  3. EPLAN部件库汇总贴转

    经常看到网友求EPLAN部件库,授人以鱼不如授人以渔,大可不必把所有部件装上,比如软件自带的部件库,我都弃之不用,新建一个部件库,把工作中经常要用到的部件慢慢添加进去.慢慢的你会发现:画图效率越来越高 ...

  4. WEB漏洞扫描工具之OWASP ZAP

    添加扫描策略 使用新建的扫描策略

  5. CSS兄弟范围选择器

    我们想要选择一部分兄弟元素,根据需要试着写了一个  td:nth-child(4)~td:not(:nth-child(7)~td) {        display: none;  } 从第5个元素 ...

  6. STM32中HAL库和标准库的区别

    转载自:https://www.lmonkey.com/t/RwykY8bBX STM32标准库与HAL库比较 ST为开发者提供了非常方便的开发库.到目前为止,有标准外设库(STD库).HAL库.LL ...

  7. keil 常用调试方法

    1.内存调试方法, 参考链接: https://blog.51cto.com/u_4029519/5423341 2.汇编调试方法 常用到bootlader和应用程序的调试 1.生成bin文件.汇编文 ...

  8. window 安装淘宝镜像

    打开cmd, 输入如下命令 npm config set registry https://registry.npm.taobao.org 判断是否配置淘宝镜像成功 npm config get re ...

  9. 关于Docker容器内不能ping通外网

    先在主机重启docker服务 systemctl stop docker systemctl start docker 然后再开启容器,进入容器 https://blog.csdn.net/qq_42 ...

  10. WebService接口实际场景应用(一)

    背景:要求写一套接口测试工具.过程中遇到了WebService接口的问题,遂写下本篇文章. 阶段问题1: 需要利用数据驱动,然后读取excel中的数据并直接调用.但是webService接口与http ...