XML schema教程

[原] 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%的时间里我们都是和这 "天山七剑" 打交道

下篇我们对这七剑做详尽例子讲解.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值