如果你发布的一个topic重用了另一个topic的内容,只有当被引用的元素在发布map中可以获取时,内容引用才能被解析。例如:
-
如果topic包含被引用的元素,并且引用的元素在相同的map中,那么这些topic之间的conref可以通过该map的上下文被解析。
-
如果topic包含被引用的元素,并且引用的元素在单独的map中(这些map是整体待发布map的一部分),那么这些topic之间的conref可以通过发布map的上下文被解析。
通常,如果一个topic包含在一个map的topicref中,该topic会和其它topic一起被发布。但你不会想要在你的出版物中发布所有重用内容仓库里的所有内容。那么,你就要标记出那些不用于发布的资源,可以将topicref里的processing-role属性设置为resource-only。
在以下示例中,task.dita会被发布,但warnings.dita不会。然而,warnings.dita可被task.dita或map中的其它topic解析并引用。
<map> ... <topicref href="warehouse/warnings.dita" processing-role="resource-only"/> ... <topicref href="topics/task.dita"/> ... </map>
注: 当使用CCMS工作时,即使没有一个共同的map上下文,该系统也可能会解析在你正在查看或编辑的topic中出现的conref和其它直接引用。但是,取决于你的发布配置,当Topic发布时这些引用可能不能解析。最好的做法是将topic中被引用的元素和引用的元素都放在同一个map或它的子map中。