SchemaValidate

説明

このschemavalidateタスクは、XMLスキーマで記述されたXMLファイルを検証します。このタスクは、XSD固有の機能を備えたXmlValidateタスクを拡張したものです。

  1. パーサーは、検証と名前空間を認識するように作成されます。
  2. 検証が有効になっています。
  3. スキーマ検証が有効になっています。
  4. 指定された名前空間のないスキーマのURLまたはファイルは、名前空間のないスキーマとして使用されます。
  5. 入れ子になったすべてのスキーマ宣言は、スキーマ検索のための名前空間URLバインディングのリストに変換されます。

入れ子になったカタログは、スキーマ文書のソースとして指定されたURLの検索に引き続き使用されるため、カタログへの検索を委任できますが、すべてのスキーマURIとそのURL相当物をリストする必要があります。

このタスクは、入れ子になった

このタスクは、SAX2以降のパーサーのみをサポートします。SAX1パーサーを指定することはエラーです。

パラメーター

属性 説明 必須
classname 使用するパーサー。 いいえ
classpathref パーサークラスの場所。必要に応じて、埋め込み<classpath>要素を使用できます。 いいえ
disableDTD DTDサポートを無効にするフラグ。DTDサポートは、とりわけXSDファイル自体の検証に必要です。 いいえ; デフォルトはfalse
failonerror trueに設定されている場合、エラー時に失敗します。 いいえ; デフォルトはtrue
file チェックするファイル(必要に応じて、埋め込みファイルセットを使用)。 いいえ
fullchecking 完全なスキーマチェックを有効にします。遅いが厳格です。 いいえ; デフォルトはtrue
lenient trueの場合、XMLドキュメントが整形式であるかどうかのみチェックします。 いいえ
noNamespaceFile 名前空間のないXMLコンテンツのスキーマを提供する名前空間のないXSDファイルのファイル名。 いいえ
noNamespaceURL 名前空間のないXMLコンテンツのスキーマを提供する名前空間のないXSDファイルのURL。 いいえ
warn パーサーの警告イベントをログに記録します。 いいえ

入れ子になった要素として指定されたパラメーター

schema

ドキュメントの検証に使用できるスキーマの名前と場所を特定します。

属性 説明 必須
namespace スキーマ名前空間のURI はい
url スキーマのURL 2つのうち正確に1つ
file スキーマのファイル

dtd

<dtd>は、DTD解決の異なる場所を指定するために使用されます。

属性 説明 必須
publicId 解決するDTDのパブリックID はい
location 使用するDTDの場所。ファイル、リソース、またはURLにすることができます。 はい

xmlcatalog

<xmlcatalog>要素は、エンティティ解決を実行するために使用されます。

attribute

<attribute>要素は、パーサー機能の設定に使用されます。
Xercesパーサーで使用できる機能はここに定義されています。機能の設定
SAX機能はここに定義されています。http://xml.org/sax/features/

属性 説明 必須
name 機能の名前 はい
value 機能のブール値 はい

property

<property>要素は、プロパティの設定に使用されます。これらのプロパティは、Xerces XMLパーサー実装に対してここに定義されています。XMLパーサーのプロパティ。プロパティを使用して、XMLファイルの検証に使用されるスキーマを設定できます。

属性 説明 必須
name 機能の名前 はい
value プロパティの文字列値 はい

XMLスキーマに対してドキュメントを検証します。ドキュメント自体はスキーマを宣言していないため、noNamespaceFileが必要です。

<schemavalidate noNamespaceFile="document.xsd"
                file="xml/endpiece.xml"/>

XSDおよびWSDLドキュメントを関連する仕様に対して検証する新しいプリセットタスク<validate-soap>を宣言します。XSDドキュメントを検証するには、XMLSchema.xsdと同じディレクトリにある、またはカタログを介してポイントされたXMLSchema.dtddatatypes.dtdも必要です。これらのファイルはすべて、W3Cから取得できます。

<presetdef name="validate-soap">
  <schemavalidate>
    <schema namespace="http://schemas.xmlsoap.org/ws/2003/03/addressing"
            file="${soap.dir}/ws-addressing.xsd"/>
    <schema namespace="http://www.w3.org/2003/05/soap-envelope"
            file="${soap.dir}/soap12.xsd"/>
    <schema namespace="http://schemas.xmlsoap.org/wsdl/"
            file="${soap.dir}/wsdl.xsd"/>
    <schema namespace="http://www.w3.org/2001/XMLSchema"
            file="${soap.dir}/XMLSchema.xsd"/>
    </schemavalidate>
</presetdef>

上記のプリセットタスクを使用して、XMLスキーマドキュメントを検証します。

<validate-soap file="xml/test.xsd"/>