3

私が書いたスキーマでxmlファイルを検証しようとしていますが、次の行で失敗します:

Element 'Route', attribute '{http://www.w3.org/XML/1998/namespace}space': The attribute '{http://www.w3.org/XML/1998/namespace}space' is not allowed.

XML ファイルには、次のものが含まれる場合があります。

 <Route xml:space="preserve">

</Route>

これが明らかに問題を引き起こしています。これを許可するには、xsd ファイルをどうすればよいですか?

これが私のXSDで、関連のないものはすべて削除されています

<?xml version="1.0" standalone="yes"?>
<xs:schema id="NewDataSet" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  <xs:element name="NewDataSet">
      <xs:element name="Route" type="xs:string" minOccurs="0" /> 
      <xs:element name="FurtherRequirements" type="xs:string" minOccurs="0" />

などなど

すべての助けに感謝します!

4

1 に答える 1

4

Routetypexs:stringからtypeに変更する必要がありますstring-with-xml-space。ここで、string-with-xml-spaceは単純なコンテンツを持つ複合型であり、次のように定義されています。

<xs:complexType name="string-with-xml-space">
  <xs:complexContent>
    <xs:extension base="xs:string">
      <xs:attribute ref="xml:space"/>

xs:importXML 名前空間のスキーマも必要です。

<xs:import namespace='http://www.w3.org/XML/1998/namespace'  
           schemaLocation='http://www.w3.org/2001/xml.xsd'/>
于 2012-06-27T13:50:00.177 に答える