スキーマの拡張

重要

次の組み込みスキーマの中には、拡張できないものがあります。主に、次の設定が定義されます。
dataSource="file" および mappingType="xmlFile"
次のスキーマは拡張できません。xtk:entityBackupNewxtk:entityBackupOriginalxtk:entityOriginalxtk:formxtk:srcSchema、<a10>ncm:publishing , nl:monitoring , nms:calendar , nms:remoteTracking , nms:userAgentRules a19/>, xtk:builder, xtk:connections, xtk:dbInit, xtk:funcList, xtk:fusion, xtk:, xtk:navtree, xtk:queryDef, xtk:resourceMenu, xtk:スキーマxtk:scriptContextxtk:sessionxtk:sqlSchemaxtk:strings
このリストは完全なものではありません。

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

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

  2. 同じ名前で別の名前空間を持つ別のスキーマを作成する。 メリットは、元のスキーマを変更する必要なく、テーブルを拡張できる点です。

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

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

    重要

    アプリケーションの組み込みスキーマを変更することはできません。スキーマの拡張メカニズムを変更することはできません。 標準スキーマを変更すると、今後アプリケーションのアップグレード時にスキーマが更新されなくなり、これは、Adobe Campaignの使用に誤りを生じさせる可能性があります。

    :nms: recipientschemaの拡張

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

    nms:受信者​拡張スキーマに、拡張スキーマに入力されたフィールドが入力されます。

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

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

    フィールドの​belongsTo​属性は、宣言されたスキーマを入力します。

重要

変更を考慮するには、スキーマを再生成する必要があります。 詳しくは、「スキーマの再生成」を参照してください。
変更がデータベースの構造に影響する場合は、更新を実行する必要があります。 詳しくは、データベース構造の更新の節を参照してください。

このページ