-- 作者:xdwjack
-- 发布时间:11/22/2006 2:09:00 PM
-- 请教schema文件的这两种写法(.xml和.xsd)有什么不同?
大家好,我在学习XML的过程中发现,schema文件有两个写法: 这两种写法,一个类似于普通的XML格式,一个使用了XSD的方式。 我的问题是,这两种方式是否都可以,他们之间有什么不同,两种方式的优劣比较如何,那种方式更加常用。请高手能够指点一二,谢谢! 我下面的代码未必是十分好的schema文件,但是它们的形式,我想我已经展现给大家了,谢谢大家能够对我指点。 第一种: fclmlschema.xml ------------------------------------------------------------------------------------------------------------ <?xml version="1.0" encoding="GB2312" ?> <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <AttributeType name="公司"/> <ElementType name= "姓名"/> <ElementType name= "ID"/> <ElementType name= "公司"/> <ElementType name= "EMAIL"/> <ElementType name= "电话" dt:type="fixed.14.4"/> <ElementType name= "街道"/> <ElementType name= "城市"/> <ElementType name= "省份"/> </Schema> 第二种: abc.xsd --------------------------------------------------------------------------------------------------------------- <?xml version="1.0" encoding="ISO-8859-1" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="shiporder"> <xs:complexType> <xs:sequence> <xs:element name="orderperson" type="xs:string"/> <xs:element name="shipto"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="address" type="xs:string"/> <xs:element name="city" type="xs:string"/> <xs:element name="country" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="item" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="note" type="xs:string" minOccurs="0"/> <xs:element name="quantity" type="xs:positiveInteger"/> <xs:element name="price" type="xs:decimal"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="orderid" type="xs:string" use="required"/> </xs:complexType> </xs:element></xs:schema>
|