Scheme
2016-05-14 09:47
295 查看
XML Schema 使用一套预先定义好元素和属性 开发的
—– 预先定义好元素和属性 规定了schema 结构和内容
—– 定义schema 规定xml文档 格式和内容
预先已经定义好元素和属性 —— 定义schema ——- 定义xml实例
Schema本身也是xml ,不像DTD使用单独语法
将schema中定义元素,绑定URI地址(名称空间)上,用来唯一标识元素来自哪个schema 。
* 为什么要有名称空间? 一个xml实例 引用多个Schema ,当两个schema定义同名元素,为了区分同名元素引用自哪个文档。
Schema快速入门
1、编写数据xml文件
2、编写schema文件 .xsd
1) 引入 W3C 名称空间 xmlns=”http://www.w3.org/2001/XMLSchema”
每一个元素 对应
区分复杂元素和简单元素
2) 为schema定义元素指定名称空间 URI (URI可以是任何路径)
3、在xml实例数据文件中 ,引用自定义Schema
elementFormDefault=”unqualified”
1、如果schema 将 elementFormDefault=”unqualified” ,xml 实例文档 引用名称空间必须使用前缀 —- 前缀修饰根元素
2、当前xml实例文档所有子元素必须不能用前缀
名称空间 作用 — 唯一标识schema当中定义元素
简单元素 直接编写type属性 、复杂元素
本节的笔记来源于视频教程
—– 预先定义好元素和属性 规定了schema 结构和内容
—– 定义schema 规定xml文档 格式和内容
预先已经定义好元素和属性 —— 定义schema ——- 定义xml实例
Schema本身也是xml ,不像DTD使用单独语法
将schema中定义元素,绑定URI地址(名称空间)上,用来唯一标识元素来自哪个schema 。
* 为什么要有名称空间? 一个xml实例 引用多个Schema ,当两个schema定义同名元素,为了区分同名元素引用自哪个文档。
Schema快速入门
1、编写数据xml文件
2、编写schema文件 .xsd
1) 引入 W3C 名称空间 xmlns=”http://www.w3.org/2001/XMLSchema”
每一个元素 对应
区分复杂元素和简单元素
2) 为schema定义元素指定名称空间 URI (URI可以是任何路径)
3、在xml实例数据文件中 ,引用自定义Schema
elementFormDefault=”unqualified”
1、如果schema 将 elementFormDefault=”unqualified” ,xml 实例文档 引用名称空间必须使用前缀 —- 前缀修饰根元素
2、当前xml实例文档所有子元素必须不能用前缀
名称空间 作用 — 唯一标识schema当中定义元素
简单元素 直接编写type属性 、复杂元素
<?xml version="1.0" encoding="UTF-8"?> <!-- 数据文件 应用多个scheme --> <company xmlns = "http://www.example.org/company" xmlns:dept = "http://www.example.org/department" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemeLocation="http://www.example.org/department department.xsd http://www.example.org/company company.xsd " > <employee age="30"> <dept:name>人力资源</dept:name> <name>李静</name> </employee> </company>
<?xml version="1.0" encoding="UTF-8"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/company" xmlns:tns="http://www.example.org/company" elementFormDefault="qualified"> <element name="company"> <complexType> <sequence> <element name="employee"> <complexType> <sequence> <!-- 引用任何一个元素 --> <any></any> <!-- 员工名称 --> <element name="name"></element> </sequence> <attribute name="age" type="int"></attribute> </complexType> </element> </sequence> </complexType> </element> </schema>
<?xml version="1.0" encoding="UTF-8"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/department" xmlns:tns="http://www.example.org/department" elementFormDefault="qualified"> <element name="name" type="string"></element> </schema>
本节的笔记来源于视频教程
相关文章推荐
- 洛谷1040加分二叉树【NOIP2003普及组】
- 【Web】Javascript、Python、Django模板配合处理URL Encode
- 【BZOJ2660】[Beijing wc2012]最多的方案【找规律】【计数DP】【二进制】【Fibonacci】
- 求最长等差数列长度
- LeetCode刷题之旅(6)
- Java 秒转mm:ss 格式
- 有趣的通讯录—<静态版>
- 递归和尾递归的比较,斐波那契
- 常用排序算法总结(五)
- sqlite基本sql语句使用
- matlab文件IO(读取写入)2 低级例程
- ...python の 学习
- 动态创建Lambda表达式实现高级查询
- 初见android
- 常用排序算法总结(四)
- 颜色代码大全
- Servlet获取表单提交过来的数据
- 前++和后++引发的血案~~!!
- C/C++ 堆与栈的区别
- 运行时的多态与多重继承