-- 作者:keflo
-- 发布时间:11/5/2007 5:45:00 PM
-- 有没有牛人来解决以下xsd文件中元素名需要定义成变量的问题!在线等!很急!
应用需要将xsd中的元素名定义成变量形式。xsd片断如下。 <omp:Property omp:name="AppName1" omp:type="String" omp:value="PetShop"/> <omp:Property omp:name="RootDir1" omp:type="String" omp:value="C:\temp\PetShop\Web"/> <omp:Property omp:name="VDir11" omp:type="String" omp:value="data1"/> <omp:Property omp:name="VDirRoot11" omp:type="String" omp:value="D:\data1"/> <omp:Property omp:name="VDir12" omp:type="String" omp:value="data2"/> <omp:Property omp:name="VDirRoot12" omp:type="String" omp:value="D:\data2"/> <omp:Property omp:name="AppName2" omp:type="String" omp:value="PetShopSupply"/> <omp:Property omp:name="RootDir2" omp:type="String" omp:value="D:\temp\PetShop\Supply"/> <omp:Property omp:name="VDir21" omp:type="String" omp:value="supply1"/> <omp:Property omp:name="VDirRoot21" omp:type="String" omp:value="D:\supply1"/> <omp:Property omp:name="VDir22" omp:type="String" omp:value="supply2"/> <omp:Property omp:name="VDirRoot22" omp:type="String" omp:value="D:\supply2"/> 需求为 AppName必须出现至少一次,即AppName1必须有。 在没有AppName1的情况下AppName2,AppName3算错。 RootDir1必须有,RootDir的下标必须跟随AppName。 即AppName1的情况下出现RootDir2算错。 VDir,VDirRoot都是可选项。下标必须跟随AppName。 以上XSD将各个元素都定死了。如果需要将AppName1变成AppName[i]这样的形式,然后i可以从1到3取值。即以下的形式。 <xsd:element name="[color=#FF0000]AppName[i][/color]" type="xsd:string" minOccurs="1" maxOccurs="1"/> <xsd:element name="[color=#FF0000]RootDir[i][/color]" minOccurs="1" maxOccurs="1"/> 在xsd中怎样定义。xsd语法不太熟。但现在急需这样做,请问能办到吗。 xml用例为以下形式 <omp:Property omp:name="AppName1" omp:type="String" omp:value="PetShop"/> <omp:Property omp:name="RootDir1" omp:type="String" omp:value="C:\temp\PetShop\Web"/> <omp:Property omp:name="VDir11" omp:type="String" omp:value="data1"/> <omp:Property omp:name="VDirRoot11" omp:type="String" omp:value="D:\data1"/> <omp:Property omp:name="VDir12" omp:type="String" omp:value="data2"/> <omp:Property omp:name="VDirRoot12" omp:type="String" omp:value="D:\data2"/> <omp:Property omp:name="AppName2" omp:type="String" omp:value="PetShopSupply"/> <omp:Property omp:name="RootDir2" omp:type="String" omp:value="D:\temp\PetShop\Supply"/> <omp:Property omp:name="VDir21" omp:type="String" omp:value="supply1"/> <omp:Property omp:name="VDirRoot21" omp:type="String" omp:value="D:\supply1"/> <omp:Property omp:name="VDir22" omp:type="String" omp:value="supply2"/> <omp:Property omp:name="VDirRoot22" omp:type="String" omp:value="D:\supply2"/>
|