スキーマの拡張 :headding-anchor:extending-a-schema

IMPORTANT
一部のビルトインスキーマは、拡張できません。主に、次の設定が定義されているスキーマです。
dataSource="file" および mappingType="xmlFile"
次のスキーマは拡張しないでください。xtk:entityBackupNewxtk:entityBackupOriginalxtk:entityOriginalxtk:formxtk:srcSchemancm:publishingnl:monitoringnms:calendarnms:remoteTrackingnms:userAgentRules ​**​** ​**​** ​**​** ​**​** ​**​** ​**​** ​xtk:builderconnections,
このリストは網羅的ではありません。

既存のスキーマを拡張するには、次の 2 つの方法があります。

  1. ソーススキーマを直接変更します。

  2. 同じ名前で別の名前空間を持つ別のスキーマを作成します。 この利点は、元のスキーマを変更しなくてもテーブルを拡張できることです。

    スキーマのルート要素には、拡張するスキーマの名前をその値として持つ extendedSchema 属性が含まれている必要があります。

    拡張スキーマに独自のスキーマはありません。ソーススキーマから生成されたスキーマは、拡張スキーマのフィールドで入力されます。

    note important
    IMPORTANT
    アプリケーションのビルトインスキーマではなく、スキーマ拡張メカニズムを変更できます。 標準スキーマを変更すると、今後アプリケーションのアップグレード時にスキーマが更新されなくなり、これは、Adobe Campaignの使用における誤動作の原因となる可能性があります。

    :nms:recipient スキーマの拡張。

    code language-none
    <srcSchema extendedSchema="nms:recipient" name="recipient" namespace="cus">
      <element name="recipient">
        <attribute name="code" label="Branch code" type="long"/>
      </element>
    </srcSchema>
    

    nms:recipient 拡張スキーマには、拡張スキーマ内に設定されたフィールドが入力されます。

    code language-none
    <schema dependingSchemas="cus:recipient" name="recipient" namespace="nms">
      ...
      <attribute belongsTo="cus:recipient" label="Branch code" name="code" sqlname="iCode" type="long"/>
      ...
    </schema>
    

    スキーマのルート要素の dependingSchemas 属性は、拡張スキーマの依存関係を参照します。

    フィールドの belongsTo 属性は、スキーマが宣言されている場所に入力されます。

IMPORTANT
変更を考慮するには、スキーマを再生成する必要があります。 詳しくは、このページを参照してください。
変更がデータベースの構造に影響を与える場合は、更新を実行する必要があります。 詳しくは、このページを参照してください。
recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1