+ 有DTD 或Schema 规则
+ 遵循DTD 或Schema 的规则= 有效的xml 文件(valid xml file)
属性文件:
url = jdbc:oracle:thin@192.168.0.26:1521:tarena
dbUser = openlab
dbPwd = open123
xml 表示:
<datasource id="db_oracle">
<property name="url">jdbc:oracle.....</property>
<property name="dbUser">openlab</property>
<property name="dbPwd">open123</property>
<property name="show_sql">true</property>
</datasource>
二、DTD / Schema
1.DTD: Document Type Difinition,文档类型定义
用来定义XML 文件的格式。
约束XML 文件中的标记规则。
DTD 的类型:PUBLIC(行业共用的) / SYSTEM(小范围自定义的)
DTD 中的定义规则:
元素:
出现一次而且有顺序的元素:书名, 作者, 价格, 册数, 简介
*: 出现0 到多次的元素
+: 出现1 到多次的元素
|:或,(phone | mobile), 只能出现一个
(phone | mobile)*, phone 和mobile 没有顺序,任意多次
?: 有或没有,0-1 次
属性:Attribute,定义在开始标记中的键值对。
<!ATTLIST 标记名称属性名称属性类型>
isbn CDATA #REQUIRED :isbn 的属性时必须的
isbn CDATA #IMPLIED: isbn 的属性不是必须的
isbn CDATA "true" : 默认值,
如果标记定义了,取标记定义的值,
如果没定义,取值true
把xml 文件和DTD 分离:
1)新建book.dtd,把DTD 部分保存在此文件中.
2)xml 文件改为:指定DTD 文件为book.dtd
<!DOCTYPE 书籍列表SYSTEM "book.dtd">
遵循所有xml 语法规则的文件= 格式良好的xml 文件
格式良好的xml 文件+ 有DTD 的定义+ 遵循DTD 的规则
= 合法/有效的xml 文件(valid)
2.Schema
命名空间:NameSpace
xml: <html:table>
<line><column>这是一个表格</column></line>
</html:table>
<product:table>
<typetype>coffee table</type>
<meterial>wood</meterial>
</product:table>
DTD <!ELEMENT table ()> 出现歧义,DTD 无法解决命名冲突。
Schema 是DTD 的替代者,功能都是描述XML 的结构。
Schema 支持命名空间,实现语法是XML。
xml 被称作是自描述的语言。
XML Schema Difinition: 简称XSD,遵循W3C 标准。
XML 文件:
<?xml version="1.0" encoding="gb2312"?>
<note>
<to>张无忌</to>
<from>赵敏</from>
<subject>Hello</subject>
<body>别忘了开会!</body>
</note>
用DTD 约束xml 的格式note.dtd:
<!ELEMENT note (to, from, subject, body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT subject (#PCDATA)>
<!ELEMENT body (#PCDATA)>
用Schema 约束xml 文件的格式note.xsd:
复杂元素(有子元素的元素) / 简单元素(叶子元素)
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.tarena.com.cn"
xmlns="http://www.tarena.com.cn"
elementFormatDefault="qualified">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string" />
<xs:element name="from" type="xs:string" />
<xs:element name="subject" type="xs:string" />
<xs:element name="body" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
给xml 文件指定schema。
分享到:
相关推荐
XML(可扩展标记语言,eXtensible ...了解和掌握XML、DTD和Schema,对于编写和解析符合规范的XML文档,以及确保数据的准确性和一致性至关重要。在实际开发中,根据项目需求和复杂性,选择合适的验证工具是非常重要的。
为了确保XML文档的结构正确性与一致性,XML约束技术应运而生,主要有两种形式:DTD(Document Type Definition)和XML Schema。 **DTD(Document Type Definition)** DTD是XML的早期约束和验证机制,它定义了XML...
**DTD(Document Type Definition)与XML Schema是XML文档结构定义的两种主要方法,它们用于确保XML文档遵循预定义的规则,从而保持数据的一致性和可读性。** **DTD(文档类型定义)**是XML规范早期引入的一种方式...
[实验目的]: 1、掌握使用XMLSpy软件创建DTD和Schema文档 2、掌握在XML文档如何引入DTD和Schema,并验证有效 3、掌握DTD中声明元素、属性的方法 4、掌握Schema中声明元素,属性,类型的方法
在实际应用中,`www.pudn.com.txt`可能包含了有关这些概念的更多详细信息,例如如何在XML文档中引用DTD或XML Schema,以及如何解析和验证遵循这些规范的XML文档。而"设计一种表示图书信息的XML文档"可能是提供了一个...
2. **更好的文档描述**:相比 DTD (Document Type Definition),XML Schema 能够提供更丰富的结构和约束信息,帮助开发者更好地理解和使用 XML 文档。 3. **支持命名空间**:XML Schema 支持 XML 命名空间,这有助于...
DTD(Document Type Definition)和XSD(XML Schema Definition)是两种用来定义XML文档结构和数据类型的规范。 1. XML DTD:DTD是XML的早期规范,用于定义XML文档的元素、属性以及它们之间的关系。它通过一系列...
- **定义**: XML Schema 是一种用于描述 XML 文档结构的语言,它基于 XML,并提供了比 DTD 更加强大和灵活的功能来规范 XML 数据。 - **作用**: - 定义 XML 文档中可以出现的元素和属性。 - 规定元素之间的层次...
XML DTD(文档类型定义)是较早出现的规范,而XML Schema则在2001年成为W3C的正式推荐标准,旨在提供更强大和灵活的XML文档验证功能。 首先,XML Schema在格式上与XML保持一致,这意味着XML Schema本身就是XML文档...
XML Schema(XSD)作为一种用于描述XML文档结构和数据类型的标准,提供了更为强大的数据类型支持和约束定义能力,相较于早期的DTD(Document Type Definition),XSD被更多地应用于XML文档的校验中。 然而,Java中...
在XML应用开发中,XML Schema是用于定义XML文档结构和数据类型的规范,它提供了比DTD(Document Type Definition)更强大的功能。本实践主要关注XML Schema中的复杂类型(Complex Type)和复合元素(Composite ...
**DTD(Document Type Definition)**是XML的早期规范之一,用于定义XML文档的合法结构。它包含一系列的元素声明和实体定义,确保XML文档遵循预设的规则。以下是一些关于DTD的关键知识点: 1. **元素声明**:DTD...
XML Schema提供了比早期的DTD(Document Type Definition)更强大的功能,例如支持复杂数据类型、命名空间和更复杂的约束。本篇将深入探讨XML Schema中的常用标签及其作用。 1. `<schema>`:这是XML Schema文档的根...
XML Schema 是一种用于描述XML文档结构的规范,它与DTD(Document Type Definition)相比具有显著的优势。DTD使用自成一体的非XML语法,而XML Schema则完全基于XML,这意味着XML Schema文档本身就是有效的XML文档,...
了解并熟练掌握XML DTD和XML Schema对于编写和解析符合规范的XML文档至关重要。在实际开发中,根据项目需求和团队习惯选择合适的约束机制,可以有效地提高数据交换的准确性和可靠性。同时,XML DTD和XML Schema的...
弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子...02.<web-app xmlns:xsi=...
XML Schema教程 XML Schema是一种基于XML的文档类型定义(DTD)替代方案,它提供了更为强大且灵活的方式来描述...通过学习和使用XML Schema,开发者可以创建更规范、更易于维护的XML文档,提高数据的准确性和一致性。
- **有效的XML (Valid XML)**:除了满足格式良好的条件之外,还必须符合DTD或XML Schema的约束。这意味着XML文档不仅需要格式正确,还需要满足预定义的数据结构和语义规则。 #### 四、DTD(Document Type ...