2016-03-28 4 views
0

いくつかの属性を持つ要素をcomplexTypeとして、simpleContentを文字列に基づいて作成するXmlスキーマを作成しています。空白を残したいと思っていました。今、私はこのスニペットを持っている:空白と属性が保存されたXmlスキーマデータ型

<xs:complexType name="actualType"> 
    <xs:simpleContent> 
    <xs:extension base="stringWithSpace"> 
     <xs:attribute name="a" type="xs:int"/> 
     <xs:attribute name="b" type="xs:int"/> 
    </xs:extension> 
    </xs:simpleContent> 
</xs:complexType> 

<xs:simpleType name="stringWithSpace"> 
    <xs:restriction base="xs:string"> 
    <xs:whiteSpace value="preserve" /> 
    </xs:restriction> 
</xs:simpleType> 

質問があり、私は属性と保存の空白を取得するには、2つの別々の種類を持っている必要がありますか、私は逃したものがあるのですか?

+0

現在の実装は機能しますか? –

+0

うん、それは現在動作します。私が望む唯一の "制限"はパーサーがすべての空白を食べないためです。私は基本的なタイプを1回の変更で1回拡張するプログラミングのバックグラウンドから間違っていると感じています。 –

+0

あなたの(正しい)アプローチはこれを行うための標準的な方法のようです。空白で保存された文字列を再利用できるとすれば、これはあまりにも悪いとは思われません。 –

答えて

1

これは、質問の元のスニペットに示されているようにこれを行うための標準的な方法であることが確認されています。私は質問に答えるので、後でこれを検索する人は誰でも同じ確認を受け取ることができます。

関連する問題