Ampliación de un esquema extending-a-schema

IMPORTANT
Algunos esquemas integrados no deben ampliarse: principalmente aquellos para los que se definen las siguientes configuraciones:
dataSource="file" y mappingType="xmlFile".
No se deben ampliar los siguientes esquemas: xtk:entityBackupNew, xtk:entityBackupOriginal, xtk:entityOriginal, xtk:form, xtk:srcSchema, ncm:publishing, nl:monitoring, nms:calendar, nms:remoteTracking{1 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 .
Esta lista no es exhaustiva.

Existen dos métodos para ampliar un esquema existente:

  1. Modificar directamente el esquema de origen.

  2. Creación de otro esquema con el mismo nombre pero un área de nombres diferente. La ventaja es que puede ampliar una tabla sin necesidad de modificar el esquema original.

    El elemento raíz del esquema debe contener el atributo extendedSchema con el nombre del esquema que se va a extender como su valor.

    Un esquema de extensión no tiene su propio esquema: el esquema generado a partir del esquema de origen se rellena con los campos del esquema de extensión.

    note important
    IMPORTANT
    No se le permite modificar los esquemas integrados de la aplicación, sino el mecanismo de extensión del esquema. De lo contrario, los esquemas modificados no se actualizarán en el momento de futuras actualizaciones de la aplicación. Esto puede provocar un mal funcionamiento en el uso de Adobe Campaign.

    Ejemplo: extensión del esquema 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>
    

    El esquema extendido nms:recipient se ha rellenado con el campo rellenado en el esquema de extensión:

    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>
    

    El atributo dependSchemas del elemento raíz del esquema hace referencia a las dependencias de los esquemas de extensión.

    El atributo belongingTo del campo rellena el esquema donde se declaró.

IMPORTANT
Para que las modificaciones se tengan en cuenta, es necesario regenerar los esquemas. Para obtener más información, consulte esta página.
Si las modificaciones afectan a la estructura de la base de datos, debe ejecutar una actualización. Para obtener más información, consulte esta página.
recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1