Estendere uno schema extending-a-schema

IMPORTANT
Alcuni schemi integrati non devono essere estesi: principalmente quelli per i quali sono definite le seguenti impostazioni:
dataSource="file" e mappingType="xmlFile".
I seguenti schemi non devono essere estesi: xtk:entityBackupNew, xtk:entityBackupOriginal, xtk:entityOriginal, xtk:form, xtk:srcSchema, ncm:publishing, nl:monitoring, nms:calendar, nms:remoteTracking, {16 8}nms:userAgentRules , xtk:builder , xtk:connections , xtk:dbInit , xtk:funcList , xtk:fusion , xtk: jst , xtk:navtree , xtk:query Def , xtk:resourceMenu , xtk:schema , xtk:scriptContext , xtk:session , xtk:sqlSchema , xtk:string .
Questo elenco non è esaustivo.

Esistono due metodi per estendere uno schema esistente:

  1. Modifica diretta dello schema di origine.

  2. Creazione di un altro schema con lo stesso nome ma uno spazio dei nomi diverso. Il vantaggio è che è possibile estendere una tabella senza dover modificare lo schema originale.

    L'elemento radice dello schema deve contenere l'attributo extendedSchema con il nome dello schema da estendere come valore.

    Uno schema di estensione non dispone di un proprio schema: lo schema generato dallo schema di origine verrà compilato con i campi dello schema di estensione.

    note important
    IMPORTANT
    Non è consentito modificare gli schemi incorporati dell’applicazione, ma il meccanismo di estensione dello schema. In caso contrario, gli schemi modificati non verranno aggiornati al momento di aggiornamenti futuri dell’applicazione. Questo può causare malfunzionamenti nell’utilizzo di Adobe Campaign.

    Esempio: estensione dello schema 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>
    

    Lo schema esteso nms:recipient viene compilato con il campo popolato nello schema dell'estensione:

    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>
    

    L'attributo dependSchemas dell'elemento principale dello schema fa riferimento alle dipendenze dagli schemi di estensione.

    L'attributo membersTo del campo viene compilato nello schema in cui è dichiarato.

IMPORTANT
Per tenere conto delle modifiche, è necessario rigenerare gli schemi. Per ulteriori informazioni, consulta questa pagina.
Se le modifiche influiscono sulla struttura del database, devi eseguire un aggiornamento. Per ulteriori informazioni, consulta questa pagina.
recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1