付録A.4 スキーマ検証の動作の差異

スキーマ検証の動作の差異を次の表に示します。

表A-4 スキーマ検証の動作の差異

項番条件Cosminexus XML Processorの動作
バージョン06-00の場合バージョン07-00以降の場合
1スキーマ文書にxsd:key要素が存在し,かつ,インスタンス文書にキーに該当するテキストが存在しない場合エラーにならないことがあります。エラーになります。
2スキーマ文書にxsd:key要素とxsd:keyref要素の組み合わせを指定していて,xsd:key要素とxsd:keyref要素の双方のfield要素の順序と型が一致していない場合エラーにならないことがあります。エラーになります。
3xsd:field要素のxpath属性がchild軸を含むXPath式の場合エラーになりません。child軸が指定できない旨のエラーになります。
4xsd:selector要素のxpath属性が「| ns1:element」のように不当な | 演算子を含むXPath式の場合エラーにならないか,または,XML文書の妥当性検証のエラーになります。スキーマ文書のエラーになります。
5xsd:redefine要素またはxsd:import要素のschemaLocation属性に空文字列を指定した場合エラーになりません。エラーになります。
6xsd:schema要素のtargetNamespace属性に"http://www.w3.org/2001/XMLSchema-instance"を指定している場合-(該当しない)
  • 08-00ではKECX06509-Eのエラーを通知します。
  • 08-50以降ではエラーを通知しません。ただし,広域属性が存在するときには,KECX06198-Eのエラーを通知します。
7次のすべての条件に該当する場合
  1. XMLスキーマ文書でanyURI型またはその派生型を使用している
  2. 1.の定義に対応するデータがRFC2396およびRFC2732の規定に反する文字を含んでいる
KECX06036-Eのエラーが発生します。データ型宣言に適合した値として処理されます。
8次のすべての条件に該当する場合
  1. XMLスキーマ文書でtime型またはdateTime型を使用している
  2. 1.の定義に対応するデータに,秒の値として「60」が指定されている
データ型宣言に適合した値として処理されます。データ型宣言の範囲外の値と見なされて,KECX06036-Eエラーが発生します。
9次のすべての条件に該当する場合
  1. XMLスキーマ文書でtime型またはdateTime型を使用している
  2. 1.の定義に対応するデータに,タイムゾーンオフセットとして-14:01~-14:59または+14:01~+14:59の範囲の値が指定されている
データ型宣言に適合した値として処理されます。データ型宣言の範囲外の値と見なされて,KECX06036-Eエラーが発生します。
メッセージの詳細については,マニュアル「Cosminexus アプリケーションサーバ メッセージ 3」の「2. KECX(Cosminexus XML Processorが出力するメッセージ)」を参照してください。