XSR_UPDATE プロシージャー

XSR_UPDATE プロシージャーは、XML スキーマ・リポジトリー (XSR) 内の既存の XML スキーマを発展させるために使用されます。 これを使用すると、既存の XML 文書と新しく挿入された XML 文書の両方を妥当性検査できるように、既存の XML スキーマを変更または拡張できます。

構文図を読む構文図をスキップするXSR_UPDATE(rschema1,name1,rschema2,name2,dropnewschema)

スキーマは SYSPROC です。

XSR_UPDATE の引数として指定された元の XML スキーマと新しい XML スキーマは、プロシージャーが呼び出される前に XSR に登録され、かつ完成している必要があります。 これらの XML スキーマは互換性がなければなりません。 互換性要件の詳細については、『XML スキーマを発展させるための互換性要件』を参照してください。

許可

プロシージャーの呼び出し元の許可 ID が持つ特権には、少なくとも以下のいずれかが含まれていなければなりません。
  • DBADM 権限。
  • カタログ・ビュー SYSCAT.XSROBJECTS および SYSCAT.XSROBJECTCOMPONENTS に対する SELECT 特権、および次の特権セットの 1 つ:
    • SQL スキーマ rschema1 およびオブジェクト名 name1 によって指定された XML スキーマの OWNER
    • rschema1 引数で指定された SQL スキーマに対する ALTERIN 特権に加え、dropnewschema 引数がゼロに等しくない場合には、rschema2 引数で指定された SQL スキーマに対する DROPIN 特権。
rschema1
更新対象となる元の XML スキーマのための SQL スキーマを指定する、タイプ VARCHAR (128) の入力引数。 SQL スキーマは XSR 内でこの XML スキーマの識別に使用される SQL ID の一部です。 (SQL ID のもう 1 つの部分は name1 引数によって与えられます。) この引数に NULL 値を入れることはできません。 すべての SQL ID に適用される有効な文字と区切り文字の規則は、この引数にも適用されます。
name1
更新対象となる元の XML スキーマの名前を指定する、タイプ VARCHAR (128) の入力引数。 XML スキーマの完全 SQL ID は、rschema1.name1 です。 この XML スキーマは、XSR に既に登録され、かつ完成している必要があります。この引数に NULL 値を入れることはできません。 すべての SQL ID に適用される有効な文字と区切り文字の規則は、この引数にも適用されます。
rschema2
元の XML スキーマを更新するために使用される新しい XML スキーマのための SQL スキーマを指定する、タイプ VARCHAR (128) の入力引数。 SQL スキーマは XSR 内でこの XML スキーマの識別に使用される SQL ID の一部です。 (SQL ID のもう 1 つの部分は name2 引数によって与えられます。) この引数に NULL 値を入れることはできません。 すべての SQL ID に適用される有効な文字と区切り文字の規則は、この引数にも適用されます。
name2
元の XML スキーマを更新するために使用される新しい XML スキーマの名前を指定する、タイプ VARCHAR (128) の入力引数。 XML スキーマの完全 SQL ID は、rschema2.name2 です。 この XML スキーマは、XSR に既に登録され、かつ完成している必要があります。この引数に NULL 値を入れることはできません。 すべての SQL ID に適用される有効な文字と区切り文字の規則は、この引数にも適用されます。
dropnewschema
元の XML スキーマを更新するために新しい XML スキーマを使用した後にそのスキーマがドロップされるかどうかを示す integer タイプの入力パラメーター。 このパラメーターをゼロ以外のいずれかの値に設定した場合、新しい XML スキーマはドロップされます。 この引数に NULL 値を入れることはできません。

   CALL SYSPROC.XSR_UPDATE(
     'STORE',
     'PROD',
     'STORE',
     'NEWPROD',
     1)
XML スキーマ STORE.PROD の内容は STORE.NEWPROD の内容で更新され、XML スキーマ STORE.NEWPROD はドロップされます。