某些内置模式不能扩展:主要是定义了以下设置的用户:
dataSource="file" and mappingType="xmlFile"。
以下模式不得扩展: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:模式、xtk:scriptContext、xtk:session、xtk:sqlSchema、xtk:strings。
此列表并非完全。
扩展现有模式有两种方法:
直接修改源模式。
创建名称相同但命名空间不同的其他模式。 其优点是您无需修改原始模式即可扩展表。
模式的根元素必须包含extendedSchema属性,其中要扩展的模式的名称为其值。
扩展模式没有自己的模式:从源模式生成的模式将填入扩展模式的字段。
不允许修改应用程序的内置模式,而是模式扩展机制。 否则,在应用程序将来升级时,将不更新修改的模式。 这会导致Adobe Campaign使用中的故障。
示例:nms:recipentschema 的 扩展。
<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属性引用了对扩展模式的依赖关系。
字段上的tersTo属性填充声明该字段的模式。