XML-Schema Document中的全局属性声明返回错误

时间:2015-04-17 12:25:31

标签: xml attributes

我是XML的新手,很抱歉任何愚蠢的问题。

我尝试在我的XMl-Document中将DataType vegJaNein声明为全局,以便在名为vegetarisch

的属性中使用它

我现在的问题是以下声明表格是正确的:

    <xsd:simpleType name="vegJaNein">
            <xsd:restriction base="xsd:string">
                <xsd:enumeration value="ja" />
                <xsd:enumeration value="nein" />
            </xsd:restriction>
        </xsd:simpleType>

but not this form:

    <xsd:attribute name="vegJaNein">
        <xsd:simpleType>
            <xsd:restriction base="xsd:string">
                <xsd:enumeration value="ja" />
                <xsd:enumeration value="nein" />
            </xsd:restriction>
        </xsd:simpleType>
    </xsd:attribute>

Why?

这是我的xml-Schema-Document:

        <?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified">
    <xsd:element name="Zutat" type="xsd:string"/>
    <xsd:element name="Name" type="xsd:string"/>
    <xsd:element name="Zeit" type="xsd:integer"/>
    <xsd:attribute name="vegJaNein">   <-- here is the crucial point!
        <xsd:simpleType>
            <xsd:restriction base="xsd:string">
                <xsd:enumeration value="ja" />
                <xsd:enumeration value="nein" />
            </xsd:restriction>
        </xsd:simpleType>
    </xsd:attribute>
    <xsd:element name="Kochbuch">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="Rezept" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="Rezept">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="Name"/>
                    <xsd:element name="Zutaten">
                        <xsd:complexType>
                            <xsd:sequence>
                                <xsd:element ref="Zutat" minOccurs="1" maxOccurs="unbounded"/>
                            </xsd:sequence>
                        </xsd:complexType>
                    </xsd:element>
                <xsd:element ref="Zeit" minOccurs="0"/>
            </xsd:sequence>
            <xsd:attribute name="vegetarisch" type="vegJaNein" use="required"/>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>

使用过的软件是:TIBCO ActiveMatrix BussinessWorks 5

错误消息为:vegetarisch:Schema error:unable to resolve reference type "vegJaNein" in namespace""

0 个答案:

没有答案