0

私は現在 XML を学んでおり、その構文を理解するのに多くの困難を抱えています。現在、グローバル要素機能を理解しようとしています..しかし、例にこだわっています。スキーマは XML ファイルで検証されません。できればエラーを指摘してください...ありがとう

<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="FirstName" type="xs:string"/>
    <xs:element name="LastName" type="xs:string"/>
    <xs:element name="Salary" type="xs:integer"/> 
    <xs:element name="Employees">
        <xs:complexType>
            <xs:sequence>
                <xs:element minOccurs="1" maxOccurs="unbounded" name="Employee">
                    <xs:complexType>
                        <xs:sequence>

                            <xs:element name="Name">
                                <xs:complexType>
                                    <xs:sequence>

                                        <xs:element ref="FirstName"/>
                                        <xs:element ref="LastName"/>

                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>

                            <xs:choice>
                                <xs:element>
                                    <xs:simpleType>
                                        <xs:restriction base="Salary">
                                            <xs:minInclusive value="10000"/>
                                            <xs:maxInclusive value="90000"/>
                                        </xs:restriction>
                                    </xs:simpleType>                         
                                </xs:element>
                                <xs:element name="Wage" type="xs:decimal"/>
                            </xs:choice>


                        </xs:sequence>
                    </xs:complexType>
                </xs:element>

            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
4

1 に答える 1

0

Xercesを使用した検証中にスキーマがスローするエラーは次のとおりです。

  • src-resolve: 名前 'Salary' を a(n) 'type definition' コンポーネントに解決できません。
  • cos-applicable-facets: ファセット 'maxInclusive' はタイプ #AnonType_EmployeeEmployees では許可されていません。
  • src-element.2.1: : 'ref' または 'name' のいずれかがローカル要素宣言に存在する必要があります。

これを次のように書き換えることができます。

<xs:element name="Salary">
    <xs:simpleType>
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="10000"/>
            <xs:maxInclusive value="90000"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>
于 2013-09-17T08:33:28.020 に答える