dtd

<!--
<!ELEMENT 元素(子元素,...)>
-->
<!ELEMENT students (student+,cat*) >
<!ELEMENT student (name,age,sex,birth,phone*,email?,student?) ><!-- 注意元素的顺序 -->
<!ELEMENT email EMPTY><!-- 元素里面不能包含内容 -->
<!ELEMENT phone (#PCDATA)>
<!ATTLIST sex value (男|女|保密) "男"><!-- 属性值可以使用枚举类型 -->
<!--
定义student元素的stuNo属性
ID类型: 保证唯一性(必须由数字和字母组成)
CDATA类型: 指定是字符串类型 #REQUIRED 属性值是必须
#IMPLIED 属性值是可选
-->
<!ATTLIST student stuNO ID #IMPLIED>
<!ATTLIST email value CDATA #IMPLIED>

xml

<?xml version="1.0" encoding="UTF-8" ?><!-- xml文件的声明 -->
<!DOCTYPE students SYSTEM "student.dtd"><!-- 引用外部的dtd校验文件 -->
<students>
<student stuNO="STU0001">
<name>关羽</name>
<age>20</age>
<sex>男</sex>
<birth>1988-10-29</birth>
<email value="guanyu@qq.com" />
<student stuNO="SUT11001">
<name>关羽</name>
<age>20</age>
<sex value="女">男</sex>
<birth>1988-10-29</birth>
<email value="guanyu@qq.com" />
</student>
</student> <student stuNO="STU0002">
<name>李四</name>
<age>20</age>
<sex>男</sex>
<birth>1988-10-29</birth>
<phone>123332</phone>
<email value="guanyu@qq.com" ></email>
</student> <student stuNO="STU0003">
<name>貂蝉</name>
<age>20</age>
<sex>女</sex>
<birth>1988-10-29</birth>
<phone>123332</phone>
<phone>123332</phone>
<!-- <email value="guanyu@qq.com" >fdfj</email> -->
</student> <cat>
<sex>母</sex>
<age>3</age>
<name>喵喵</name>
</cat>
<cat>
<sex>母</sex>
<age>3</age>
<name>喵喵</name>
</cat>
</students>

schema

<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="abc" xmlns="abc" elementFormDefault="qualified">
<!-- XML Schema 缩写 当elementFormDefault="qualified" 时,所有全局元素的子元素将被以缺省方式放到目标命名空间,连同全局元素或者类型一起;
而当elementFormDefault="unqualified" 时,所有全局元素的子元素将被以缺省方式放到无名命名空间。而属性的命名空间类似地由attributeFormDefault="?"来指明。
需要明白的是,elementFormDefault="?" 是有作用域的,并且是被继承的,除非在子定义中覆盖父定义。 -->
<xsd:element name="note"> <xsd:complexType>
<xsd:sequence>
<xsd:element name="to">
<xsd:complexType mixed="true"><!-- 混合 -->
<xsd:sequence minOccurs="1" maxOccurs="unbounded">
<xsd:element name="content" type="xsd:string" />
</xsd:sequence>
<xsd:attribute name="two" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="from" type="xsd:string" />
<xsd:element name="heading" type="xsd:string" />
<xsd:element name="body" type="xsd:string" />
<xsd:element name="age" type="xsd:integer" />
<xsd:element name="birth" type="xsd:date" />
<xsd:element name="sex">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="男" />
<xsd:enumeration value="女" />
<xsd:enumeration value="人妖" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="weight" type="xsd:decimal" />
</xsd:sequence>
<xsd:attribute name="one" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:schema>

xml

<?xml version="1.0"  encoding="UTF-8" ?>
<note xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="abc"
xsi:schemaLocation="abc note.xsd" one="属于note"> <to two="to的属性">
<content>fdsf</content>
<content>fdsf</content>
<content>fsdf</content>
</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
<age>20</age>
<birth>1988-10-23</birth>
<sex>人妖</sex>
<weight>75</weight>
</note>

XML文件基础,DTD校验文件编写,Schema文件的简单使用的更多相关文章

  1. 【HTML/XML 10】XML文档中的Schema文件

    导读:DTD是对XML文档进行有效性验证的方法之一,事实上,继DTD之后,出现了用来规范和描述XML文档的第二代标准:Schema.Schema是DTD的继承,但是也有其不同的地方,它是真正的以独立的 ...

  2. 关于XML的Schema文件讲解

    1 Schema概述 1.1 什么是Schema l  Schema是新的XML文档约束:DTD出现的比较早. l  Schema要比DTD强大很多: l  Schema本身也是XML文档,但Sche ...

  3. xml语法、DTD约束xml、Schema约束xml、DOM解析xml

    今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的ht ...

  4. gitbase cube.js schema 文件项目

    cube.js 进行数据分析,需要我们编写schema 文件,但是因为gitbase 的原因没发进行自动生成,而且还有些问题 所以做了一些简单的修改 注意直接使用cube-cli 0.9.0 可以自动 ...

  5. 根据给定文件编写Makefile文件 两种方法编译

    实例一 1.分析源文件代码依赖关系 mian.c #include "test1.h" #include "test2.h" #include <stdi ...

  6. MD5介绍及Windows下对文件做md5校验。

    MD5介绍参考百度百科: 摘要如下: MD5 校验和(checksum)通过对接收的传输数据执行散列运算来检查数据的正确性. 一个散列函数,比如 MD5,是一个将任意长度的数据字符串转化成短的固定长度 ...

  7. JAVA生成文件的md5校验值

    这里使用了lombok打印日志,也可以不用 import java.io.File; import java.io.FileInputStream; import java.io.IOExceptio ...

  8. 【HTML/XML 9】XML中的DTD文件

    导读:DTD是Document type definition(文档类型定义的缩写),是一套关于标记符的语法规则,它是XML文件的验证机制,数以XML文件的组成部分.XML文档是一种描述标记语言的语言 ...

  9. solr 6.0 没有schema.xml未自动创建schema文件

    solr 6.0 没有schema.xml未自动创建schema文件 摘要:在之前的Solr版本中(Solr5之前),在创建core的时候,Solr会自动创建好schema.xml,但是在之后的版本中 ...

随机推荐

  1. Function 和 eval 知识点总结

    1 Function 1.1 函数的创建方式 1 函数声明 2 函数表达式 3 new Function // 1 function foo() {} // 2 var foo = function( ...

  2. 我的nginx+php是如何配置的?

    nginx使用homebrew安装,安装之后 ngxin 安装目录:/usr/local/Cellar/nginx/1.8.0 删除掉默认的www目录,创建一个自己方便找到的 删除掉默认的www目录 ...

  3. Java Mail解决标题乱码问题

    在Java实现发送邮件功能时,直接使用 message.setSubject(subject) 的方式设置标题,在本地测试发送邮件的中文标题可以正常显示,但是将项目部署到服务器后,发送邮件的中文标题就 ...

  4. vector的resize与reserve的区别

  5. 11、E-commerce in Your Inbox:Product Recommendations at Scale-----产品推荐(prod2vec和user2vec)

    一.摘要 本文提出一种方法,将神经语言模型应用在用户购买时间序列上,将产品嵌入到低维向量空间中.结果,具有相似上下文(即,其周围购买)的产品被映射到嵌入空间中附近的向量. 二.模型: 低维项目向量表示 ...

  6. HTML 捕获window.close() 并做窗口关闭前的处理工作

    转自:http://www.xinotes.net/notes/note/261/ <html> <head> <script language="JavaSc ...

  7. HDU 1222 Wolf and Rabbit( 简单拓欧 )

    链接:传送门 题意:狼抓兔子,狼从 0 出发沿逆时针寻找兔子,每走一步的距离为 m ,所有洞窟的编号为 0 - n-1 ,问是否存在一个洞窟使得兔子能够安全躲过无数次狼的搜捕. 思路:简单的拓展欧几里 ...

  8. HDU 4535 吉哥系列故事——礼尚往来( 错排水题 )

    链接:传送门 思路:错排模板题,水题是非常浪费时间的. /*********************************************************************** ...

  9. vue定义对象变量并合并成新的对象

    背景: 一般情况下,向后台发送数据请求会存在公共的变量,为了避免每一个相同部分的变量都重新定义,则想出以下解决方案: 例如一下:function,version,Authorization是公共请求部 ...

  10. unity3d 延迟运行脚本语句

    在Unity3D中.有yield语句它负责延迟操作,yield return WaitForSeconds(3.0); //等待 3 秒 查看unity3d脚本手冊,使用方法须要在对应的格式. 以下代 ...