xml验证(一)
在编程的时候,不免会涉及到对xml的读写。在对xml数据操作之前,还要对xml进行验证。即通过xsd文件来对xml进行验证。
那什么是xsd呢?
XSD是XML Schemas Definition的缩写,也是XML Schema文件的扩展名。XML是数据的集合。xsd是来规定XML的;xsd验证XML数据是否正确,比如你的XML数据要写进数据库,如果不验证,可能就会有很多问题。当你的XML通过XSD验证后,就可以用XSL进行格式化,生成HTML,矢量图形等。
XSD是W3C推荐的XML SCHEMA标准,SCHEMA即描述XML的结构和元素关系的规则模式,他规定了一个xml文档可以使用那些元素、元素的类型以及一些限制规则。schema和DTD一样,都是描述xml的,只不过SCHEMA的内容更丰富,更具有扩展性,同时他本身也是一个xml文档,更方便解析。
在开发阶段,我们可以根据需求文档中对字段的定义(比如,必填、可选、Int、String)来规定出相应的xsd。
下面是一段规格:
StudentInfo类参数:
字段名称类型可选性释意
sNoStringM学生学号
nameStringM学生姓名
ageIntM学生年龄
countryStringM所在国家/地区
interestStringO兴趣、爱好
那我们现在就可以根据上图所示的规格,来写出xsd。
<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"elementFormDefault="qualified" attributeFormDefault="unqualified"><xs:element name="student"><xs:complexType><xs:element name="sNo" type="xs:string"><xs:annotation><xs:documentation>学生学号</xs:documentation></xs:annotation></xs:element><xs:element name="name" type="xs:string"><xs:annotation><xs:documentation>学生姓名</xs:documentation></xs:annotation></xs:element><xs:element name="age" type="xs:int"><xs:annotation><xs:documentation>学生年龄</xs:documentation></xs:annotation></xs:element><xs:element name="country" type="xs:string"><xs:annotation><xs:documentation>所在国家/地区</xs:documentation></xs:annotation></xs:element><xs:element name="interest" minOccurs="0" type="xs:string"><xs:annotation><xs:documentation>兴趣、爱好</xs:documentation></xs:annotation></xs:element></xs:element></xs:complexType></xs:schema>