[原] XML schema教程 XSD教程 XSL教程 XSLT教程 (一)
XML/DTD/XSD/XSLT
2008-01-14 04:01:04
阅读2226
评论4
字号:大
中
小
[ 本教程适用对象 ]: 具有XML基本知识的朋友;
[ 版权声明 ]: 一切版权归yyjacky412所有. 可以任意转载,方便时请加上出处
[ 学习必备工具 ]: 记事本+IE(基本不推荐) | 使用Altova XMLSpy(本教程使用XMLSpy) | 使用XMLWriter
第一部分: XML+XSD教程
XML能使用DTD进行验证,也能使用XSD,W3C组织更推荐使用XSD.
1-1 不带命名空间的XSD:
1-1.xml
<?xml version="1.0" encoding="gb2312"?>
<美女 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
"
xsi:noNamespaceSchemaLocation="1-1xsd.xsd">
美女全走光了
</美女>
1-1xsd.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema
">
<xs:element name="美女"/>
</xs:schema>
1-1例子为我们演示了不带命名空间的最简单的XSD及其在Xml源文件中的引用方法
不带命名空间的Xml中要使用XSD进行验证,我们注意以下几点:
a.:xmlns:xsi与xsi:noNamespaceSchemaLocation 这两个一定要带上,
而且只能是xsi,不能是xsd或自己取的任意前缀
b:一定要注意大小写, 拼错一个字符就会导致错误
在XSD验证文件中,我们要注意
c:根元素有且必须是<xs:schema>
d:xs前缀可以不同,你可以取为xsd,xsm,或者符合xml语法规定的任意单词
e:<xs:element>声明了element元素,这个元素对应着1-1.xml中的根元素, 它的名字叫美女name="美女"
f:特别提醒:以上两个文件中关于www.w3.org
的超链接,一定不能错,要十分注意大小写.
1-2 带命名空间的XSD:
我们只对1-1例子做小小改动,方便朋友们做对比,重点是学习XML文件如何引用xsd及xsd文件的schema根元素的写法
1-2.xml
<?xml version="1.0" encoding="gb2312"?>
<my:美女 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
"
xmlns:my="http://yyjacky412.blog.163.com
"
xsi:schemaLocation="http://yyjacky412.blog.163.com 1-2xsd.xsd">
美女全走光了
</my:美女>
1-2xsd.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema
"
xmlns="http://yyjacky412.blog.163.com
"
targetNamespace="http://yyjacky412.blog.163.com
">
<xs:element name="美女"/>
</xs:schema>
我们注意到 与1-1例子相比,1-2例子多了点东西
a。xml文件中多了my 前缀, 相应的xmlns:my="
http://yyjacky412.blog.163.com
"声明了这个my前缀,xmlns:前缀是我们曾经学过的声明命名空间前缀的语句,很熟悉了
b。声明xsd文件的地方也变了,变成了xsi:schemaLocation="
http://yyjacky412.blog.163.com 1-2xsd.xsd
",xsi:schemaLocation这里说明是带命名空间的xsd引用方式, 双引号里面的东西挺有趣,他是有一个命名空间+空格+xsd文件名组成的, 三者缺一不可, 这里的地址要与xmlns:my里的一致才行
c。XSD文件部们,多出了两个东西,一个是xmlns命名空间出来了,一个是targetNamespace属性也要写上一样的命名空间地址
1-3 学习schema中的各种元素(下次讲解)
schema中常用的元素有以下数种
schema element
group attribute
attributeGroup
choice
simpleType complexType
union unique
sequence
restriction
其中,我们最常用的七个元素我们将做重点讲解,在实际的NET+XML+XSLT、J2EE的struts+Hiberite+XML+XSLT中,99%的时间里我们都是和这 "天山七剑" 打交道
下篇我们对这七剑做详尽例子讲解.
分享到:
相关推荐
### XML Schema 教程知识点详解 #### 一、XML Schema 概述 - **XML Schema 定义**:XML Schema 是一种基于 XML 的语言,用于描述 XML 文档的结构。它定义了 XML 文档中可以出现的元素、属性及其结构,并且指定了...
XML Schema教程 XML Schema是一种基于XML的文档类型定义(DTD)替代方案,它提供了更为强大且灵活的方式来描述XML文档的结构和数据类型。XML Schema定义(XSD)使用XML语法,使得XML文档的验证和处理更加方便。在这...
在此教程中,你将学习如何在应用程序中读取和创建 XML Schema 语言,XML Schema 为何比 DTD 更加强大,以及如何在您的应用程序中使用 XML Schema。 (注,以上文档完全是我整理的难点要点的笔记!)
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> </xs:schema> ``` #### XSD 字符串数据类型 XML Schema 定义了一系列字符串相关的数据类型,如 `xs:string`、`xs:normalizedString`、...
### XML Schema 教程知识点详解 #### 一、XML Schema 简介 XML Schema是一种用于描述XML文档结构的语言,被视为DTD(Document Type Definition)的替代品,具有更丰富的特性和更高的灵活性。XML Schema(也常称为...
在此教程中,你将学习如何在应用程序中读取和创建 XML Schema 语言,XML Schema 为何比 DTD 更加强大,以及如何在您的应用程序中使用 XML Schema。 什么是 XML Schema? XML Schema 的作用是定义 XML 文档的合法构建...
XML Schema教程详解 XML Schema(通常简称为XSD,即XML Schema Define)是World Wide Web Consortium(W3C)制定的一种标准,它用于定义XML文档的结构和数据类型。相较于传统的DTD(Document Type Definition),...
XML Schema,全称为XML Schema Definition (XSD),是XML文档的一...通过阅读"XML Schema教程.pdf",读者可以逐步掌握XML Schema的基本概念、语法和使用方法,从而在实际项目中有效地应用XML Schema进行数据验证和交换。
压缩包里详细介绍了如何利用XML Spy这个软件新建一个XML Schema文档,内容非常充实,在网上找了很久自己整理好的,只要按照文档的步骤就可以很快学会如何使用XML Spy了,非常适合初次接触XML知识和XML Spy这个软件的...
这个“XMLSchema.chm”文件很可能是一个帮助文档,旨在为学习XML Schema的用户提供详细的指导和参考资料。下面我们将深入探讨XML Schema的相关知识点。 1. **XML Schema的作用**:XML Schema的主要功能是规范XML...
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> </xs:schema> ``` 在这个XML Schema中: - 定义了一个`book`元素,它包含了多个子元素如`title`、`author`、`price...
XML Schema教程 XML Schema是一种基于XML的规范,用于定义XML文档的结构和数据类型,它为XML文档提供了严格的语义约束。本教程适用于初学者,旨在帮助理解XML Schema的基础概念和使用方法。 一、XML Schema简介 ...
压缩包中的“XML Schema学习总结.pdf”很可能是一个详细的教程,包含了XML Schema的各个方面;而“xml.pptx”可能是配合讲解的PPT,可能包含图表、示例和关键点总结。 学习XML Schema对于理解和处理XML文档至关重要...
<note xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://example.com/note.xsd"> <to>George <from>John <heading>Reminder <body>Don't forget the meeting! ``` 对应的 ...