0

テキスト文字列を含み、2つのテキスト属性を持つ要素を宣言するのに問題があります。

<?xml version="1.0" encoding="UTF-8"?>
<!-- This schema is not valid -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:element name="Favorite" type="xs:string">
        <xs:complexType>
            <xs:attribute name="car"    type="xs:string"/>
            <xs:attribute name="fruit" type="xs:string"/>
        </xs:complexType>
    </xs:element>       
</xs:schema>

次のように、属性を削除するとスキーマは渡されます。

<?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
        <xs:element name="Favorite" type="xs:string">
        </xs:element>
    </xs:schema>

type="xs:string"または、 inを省略した場合<xs:element name="Favorite" type="xs:string">

目的のスキーマは、次のXMLファイルを検証することになっています。

<?xml version="1.0" encoding="UTF-8"?>
<Favorite car="Volvo" fruit="banana">These are a few of my favorite things</Favorite>

PS:この質問がささいなことならごめんなさい。私はまだXSDの初心者です。

4

1 に答える 1

2

w3schoolsから答えを見つけました:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Favorite">
        <xs:complexType>

            <xs:simpleContent>
                <xs:extension base="xs:string">
                    <xs:attribute name="car" type="xs:string"/>                 
                    <xs:attribute name="fruit" type="xs:string"/>   
                </xs:extension>
            </xs:simpleContent>

        </xs:complexType>
    </xs:element>
</xs:schema>
于 2012-04-10T15:04:14.500 に答える