XML生成XSD的方法
Trang 是一种命令行的可以XML生成XSD的工具,生成XML文件对应的XSD文件只需要3个简单的步骤:
第一步 下载Trang
从http://www.thaiopensource.com/relaxng/trang.html 上下载trang-version.zip
第二步 解压zip
将trang-version.zip解压到某个目录,比如d:\trang
第三步 生成XSD
假设在 d:\ 下有一个xml文件 person.xml
- <?xmlversion="1.0"encoding="UTF-8"standalone="yes"?>
- <personNAME="ZhangSan">
- <addresscountry="China">
- <state>beijing</state>
- </address>
- <Job>IT</Job>
- </person>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<person NAME="ZhangSan">
<address country="China">
<state>beijing</state>
</address>
<Job>IT</Job>
</person>
打开windows命令行,将当前位置变更到 d:\
输入
java -jar %TrangHome%\trang.jar person.xml person.xsd
( %TrangHome%表示Trang解压目录, trang.jar 接受两个参数,第一个为源文件,第二个为目标文件)
ok!你可以看到在 d:\ 下就生成了 person.xsd 文件
- <?xmlversion="1.0"encoding="UTF-8"?>
- <xs:schemaxmlns:xs="http://www.w3.org/2001/XMLSchema"elementFormDefault="qualified">
- <xs:elementname="person">
- <xs:complexType>
- <xs:sequence>
- <xs:elementref="address"/>
- <xs:elementref="Job"/>
- </xs:sequence>
- <xs:attributename="NAME"use="required"type="xs:NCName"/>
- </xs:complexType>
- </xs:element>
- <xs:elementname="address">
- <xs:complexType>
- <xs:sequence>
- <xs:elementref="state"/>
- </xs:sequence>
- <xs:attributename="country"use="required"type="xs:NCName"/>
- </xs:complexType>
- </xs:element>
- <xs:elementname="state"type="xs:NCName"/>
- <xs:elementname="Job"type="xs:NCName"/>
- </xs:schema>