Xslt xml dtd或xml模式链接具有不同属性的元素
我需要创建DTD或XMLSchema。如何链接元素collection@key=“角色”与collection@key“平局”? 这是可能的还是需要在不同的元素中完成 我有XMLXslt xml dtd或xml模式链接具有不同属性的元素,xslt,dtd,xml-schema-collection,Xslt,Dtd,Xml Schema Collection,我需要创建DTD或XMLSchema。如何链接元素collection@key=“角色”与collection@key“平局”? 这是可能的还是需要在不同的元素中完成 我有XML <!DOCTYPE schema [ <!ELEMENT schema (collection+, part+)> <!ELEMENT collection[key=role] (name, partref+)> <!ATTLIST collection[key=role]
<!DOCTYPE schema [
<!ELEMENT schema (collection+, part+)>
<!ELEMENT collection[key=role] (name, partref+)>
<!ATTLIST collection[key=role] collection-id ID #REQUIRED
key CDATA #REQUIRED>
<!ELEMENT name (#PCDATA)>
<!ELEMENT partref EMPTY>
<!ATTLIST partref refid IDREF #REQUIRED>
<!ELEMENT collection[key=tie] (name)>
<!ATTLIST collection[key=tie] part-id ID #REQUIRED>
]>
<schema>
<collection collection-id="C28392-33-TT" key="role">
<name>Turnip Twaddler</name>
<partref refid="P81952-26-PK"/>
<partref refid="P86679-52-SP"/>
<partref refid="P81472-68-FD"/>
<partref refid="P88107-39-GT"/>
</collection>
<collection collection-id="C28772-63-OB" key="role">
<name>Olive Bruiser</name>
<partref refid="P80228-21-PT"/>
<partref refid="P82387-85-PA"/>
</collection>
<part part-id="P80228-21-PT">
<name>Pitter</name>
</part>
<collection part-id="P86994-25-RC" key="tie">
<name>Ribbon Curler</name>
</collection>
</schema>
]>
芜菁吐丝机
橄榄布鲁瑟
麻点
卷发器
在DTD中,可以将一个属性定义为ID,将另一个属性定义为IDREF;ID值在文档中必须是唯一的,IDREF值必须“指向”文档中存在的ID
但是对于同一个元素名,不能有两个不同的内容模型,因此属性的类型不能取决于它出现的位置
在XSD中,通过定义本地元素声明,可以为相同的元素名创建两个不同的内容模型;但是,如果它们显示为兄弟(同一父元素的子元素),您就不能这样做。很抱歉,从用您自己发明的语言编写的代码中计算出您的需求并不容易。我不明白“链接”两个元素是什么意思,我不明白伪DTD中的
[…]
符号,我也不知道您想要施加什么约束。向下投票。对于ATTLIST集合[key=tie]part id#REQUIRED造成的混乱表示抱歉。这是一个错误的代码,我想向他们显示属性值等于属性值。所以它们是相互关联的,但我不知道如何在DTD中反映出来