2

私は単純なxmlファイルを持っています。そのファイルの要素を次のように定義しました...

<xs:element name="Comments" >
  <xs:simpleType>
   <xs:restriction base="xs:string">
     <xs:maxLength value="4000" />
   </xs:restriction>
  </xs:simpleType>
</xs:element>

そのスキーマに一致すると思われる 2 つの Xml ファイルを作成します。1 つは CR/LF 行末 (Windows) を使用し、もう 1 つは LF 行末 (Unix) を使用します。

Unix ファイルの場合、Comments 値の長さは 4000 バイトです。Windows ファイルの対応する長さは、余分な CR バイトがあるため、当然のことながら 4000 バイトを超えています。

Xml メモ帳で Xml ファイルを検証すると、両方のファイルが有効です。CR/LF は、Xml 仕様2.11 の行末処理に従って、単一の LF に自動的に変換されることになっているため、期待どおりです。

Xml タスクを介してファイルをロードすると、有効な Unix ファイルのみが表示され、Windows バージョンは 4000 文字を超えると表示されます。

Xml 仕様に従って動作するように Xml タスクを構成できますか? または、CR/LF 行末を自分で変換してから再検証する必要がありますか?

4

0 に答える 0