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 n'est pas exhaustive.
Il existe deux solutions pour étendre un schéma déjà existant :
-
Modifier directement le schéma source.
-
Créer un autre schéma de 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 Vous n’êtes pas autorisé à modifier les schémas intégrés à l’application ; vous devez utiliser le mécanisme d’extension des schémas. En effet, lors des futures mises à jour de l’application, les schémas modifiés ne seraient pas mis à jour, ce qui 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.