schema约束

  dtd语法:<!ELEMENT 元素名称 约束>

schema符合xml的语法,xml语句

一个xml中可以有多个schema,多个schema用名称空间区分(类似java包名)

dtd里面有PCDATA类型,但是在schema里面可以支持更多的数据类型

比如年龄只能是整数,在schema里面可以直接定义一个整数类型

schema语法更加复杂,目前不能代替dtd

快速入门

*创建一个schema文件(后缀名一般为.xsd)

根节点为<schema>

**在schema文件里面

属性:xmlns="http://www.w3.org/2001/XMLSchema"//表示当前xml文件是一个约束文件

targetNamespace="http://www.zyf.cn/20191111"//使用schema约束文件,直接通过这个地址引入约束文件
elementFormDefault="qualified"//表示元素质量良好

(1)看xml中有多少个元素

<element>

(2)看是简单元素还是复杂元素

 <element name="person">
<complexType>
<sequence>
<element name="name" type="string"></element>
<element name="age" type="int"></element>
</sequence>
</complexType>
</element>

(3)在被约束的文件中引入约束文件

<person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"//其中instance表明这是一个被约束的xml
xmlns="http://www.itcast.cn/20151111"//这与约束文件中的targetNamespace相同
xsi:schemaLocation="http://www.itcast.cn/20151111 2.xsd">//targetNamespace+空格+约束文件路径

最新文章

  1. iOS计算完整文字高度(适应iOS 10)
  2. sublime text2 ctrl+b出现错误
  3. Javascript 数组之判断取值和数组取值
  4. 说明&amp;总目录
  5. MYSQL数据库性能调优之八:mysql日志
  6. 多线程的单元测试工具 - GroboUtils
  7. linux RedHat6.4下nginx安装
  8. add.fun.php
  9. 【手打】LZW编码的C/C++实现
  10. UI----安健2 UIswitch UIslider
  11. YUM常用命令介绍
  12. JWT 在前后端分离中的应用与实践
  13. libevent和libcurl实现http和https服务器 cJSON使用
  14. Shiro笔记(四)Shiro的realm认证
  15. pycuda安装 python&lt;3.0
  16. setInterval与setTimeout 的区别
  17. Thinkpad X220 升级 Windows 10 后无线网卡消失问题
  18. 41F继电器座的解剖与妙用
  19. 设置Adobe Reader打开PDF文件保持记忆功能
  20. 二维码名片的格式 - vcard(非常好,可直接添加到手机通讯录)

热门文章

  1. F - What Is Your Grade?
  2. 爬虫实战2_有道翻译sign破解
  3. Apache solr velocity模块 漏洞复现
  4. python-Django与Nginx整合gunicorn模块
  5. Java 多线程 -- 指令重排(HappenBefore)
  6. 关于join on 和单表查询的实时效果
  7. linux抓包的实现
  8. [Inno Setup] 在 File Section 之前解压文件
  9. 在Spring Boot中配置web app
  10. MFC之动态调用自己写的类库中的类的成员方法