Extension dʼun schéma extending-a-schema
dataSource="file" et mappingType="xmlFile".
Les schémas suivants ne doivent pas être étendus : xtk:entityBackupNew, xtk:entityBackupOriginal, xtk:entityOriginal, xtk:form, xtk:srcSchema, ncm:publishing, nl:monitoring, nms:calendar, nms:remoteTracking, nms:userAgentRules, xtk:builder, xtk:connections, xtk:dbInit, xtk:funcList, xtk:fusion, xtk: jst, xtk:navtree, xtk:queryDef, xtk:resourceMenu, xtk:schema, xtk:scriptContext, xtk:session, xtk:sqlSchema, xtk:strings.
Cette liste est non exhaustive.
Il existe deux solutions pour étendre un schéma déjà existant :
-
Modifier directement le schéma source.
-
Création d’un autre schéma portant le même nom, mais avec un espace de noms différent.L’avantage est de pouvoir étendre une table sans avoir à modifier le schéma d’origine.
L’élément racine du schéma doit contenir l’attribut extendedSchema avec comme valeur le nom du schéma à étendre.
Un schéma d’extension ne possède pas son propre schéma : c’est le schéma généré à partir du schéma source qui sera complété avec les champs du schéma d’extension.
note important IMPORTANT Il ne vous est pas possible de modifier les schémas natifs de l’application. Utilisez plutôt le mécanisme d’extension de schéma.Sinon, les schémas modifiés ne seront pas mis à jour au moment des futures mises à niveau de l’application. Cela peut entraîner des dysfonctionnements dans l’utilisation d’Adobe Campaign. Exemple : extension du schéma 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>Le schéma étendu nms:recipient est complété avec le champ renseigné dans le schéma d’extension :
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’attribut dependingSchemas sur l’élément racine du schéma référence les dépendances sur les schémas d’extension.
L’attribut belongsTo sur le champ renseigne le schéma où il est déclaré.
Si les modifications affectent la structure de la base de données, vous devez exécuter une mise à jour. Pour plus d’informations, consultez cette page.