1

有没有办法在我的语法中声明全局可用的属性?

也就是说,我希望任何元素都能够具有某个属性。

或者,我想定义一个可以具有“id”属性的元素列表。

4

1 回答 1

1

您的问题的示例解决方案:

<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
    datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
    <start>
        <ref name="testDef"/>
    </start>
    <define name="testDef">
        <element name="test">
            <ref name="commonAttributes"/>
        </element>
    </define>
    <define name="commonAttributes">
        <attribute name="id">
            <data type="ID"/>
        </attribute>
        <attribute name="otherCommonAttr">
            <data type="string"/>
        </attribute>
    </define>
</grammar>

您必须在每个元素中声明对公共属性定义的引用,就像test上面示例中的元素一样。

于 2012-02-22T16:21:26.623 回答