所以我们有必要知道如何通过xmlspy这个非常方便的工具进行xml的转换工作。
点击“File”-“New”系统会弹出“create new document”的窗口,此时选择“xml XML document”点击“ok”,并选择“Schema”单选框。粘贴你的样本xml。
样板xml内容如下:
<?xml version=”1.0″ encoding=”UTF-8″?>
<datas>
<data>
<storageDate>String</storageDate>
<goodsName>String</goodsName>
<passNo>String</passNo>
<spec>String</spec>
<form>String</form>
<goodsManu>String</goodsManu>
<prodLot>String</prodLot>
<prodDate>String</prodDate>
<validateDate>String</validateDate>
<count>String</count>
<unitName>String</unitName>
<storeName>String</storeName>
</data>
<data>
<storageDate>String</storageDate>
<goodsName>String</goodsName>
<passNo>String</passNo>
<spec>String</spec>
<form>String</form>
<goodsManu>String</goodsManu>
<prodLot>String</prodLot>
<prodDate>String</prodDate>
<validateDate>String</validateDate>
<count>String</count>
<unitName>String</unitName>
<storeName>String</storeName>
</data>
</datas>
此时,点击“DTD/Schema”-“Generate DTD/Schema”,选择“W3C Schema”其他选项如下图所示:
点击“ok”后,则需要对xsd文件进行微调,即根据需要去修改节点元素约束类型、是否必填、该节点是否可以重复出现等设置。这个过程比较乏味。
特别强调下如何修改,一般而言自动生成的xsd的模版,它会将你的样本某些数据生成“枚举类型”,可以根据实际的需要进行删减。即手工删除类似“”字符串。
另外在设定某一元素是否必填的时候,我们可以通过图形界面进行设定。即选择“schema”标签,如下图:
例如,我们需要设定“form”为可选字段,则点击“右键”-点击“optional”,对应生成的标签“minOccurs=”0″”
如果需要将某一节点重复输出,则可以设置为unbounded,如下图: