2011-01-25 5 views
-2

xsdファイルを使用してxmlファイルの要素を空でないように制限する必要があります。要素にCDATAセクションのみを含めることができますか?xsdで要素を空でないように制限する方法

+1

あなたはすでにこれを尋ねた - 私はhttp://stackoverflow.com/questions/4781895/how-to-force-an-element-to-contain-only-cdata-through-xsd – skaffman

答えて

0

唯一のツールは、以下のようなxs:stringパターンの制限です。 CDATAは、エンティティ参照でエスケープする代わりに使用できます。あなたのパターンでエンティティ参照を使用する必要があります。

<simpleType name="NewType2"> 
    <restriction base="string"> 
     <minLength value="5"></minLength> 
     <maxLength value="30"></maxLength> 
     <pattern value="(&lt;html&gt;).*(&lt;/html&gt;)"></pattern> 
    </restriction> 
</simpleType> 
+0

注意を正規表現ではそれほど優れていないので、これで何かを正しく評価できるとは確信していません。また、あなたが相互運用しているクライアントがエンティティrefのものかCDATAのものかを選択するかどうかは無関心でなければならないことに注意してください。 –

関連する問題