cm:content和sys:base之间有什么区别

时间:2011-08-01 10:18:57

标签: alfresco

我创建了一个新的内容模型,并将其继承与cm:content相关联,以将节点保存为特定文件夹下的内容。

但是,如果我想将内容模型与sys:base相关联,该怎么办?节点将被保存在哪里?如何为节点创建容器?

人和其他内容不会从cm:content继承,我不希望用户从其他地方管理节点,我想确保用户将管理从新内容创建的节点模型来自创建的对话框和旨在提供此类服务的页面。

非常感谢您的所有回复

穆罕默德·阿姆 高级系统开发人员 数码系列公司

1 个答案:

答案 0 :(得分:6)

sys:basesystemModel.xml中的定义如下(此处显示的最后HEAD修订版):

  <type name="sys:base">
     <title>Base</title>
     <mandatory-aspects>
        <aspect>sys:referenceable</aspect>
        <aspect>sys:localized</aspect>
     </mandatory-aspects>
  </type>

浏览systemModel以了解此类型必需的两个方面。 cm:content间接从sys:base间接继承cm:object,正如您在contentModel.xml中看到的那样,通过contentModel传递了一些约束并将精灵粉末编入其中。

cm:folder中,您还可以看到cm:contains公开了一个名为sys:base的新关联,该关联定位了cm:folder个对象。这意味着在sys:base(和子类型)中,您可以将cm:object开始的层次结构分支中的每个类型存储起来,包括cm:contentcm:content

这应该足以告诉你如何:

  • 创建允许特定子类型的容器
  • sys:base
  • 中存储此类类型时,cm:foldersys:base之间没有太大区别
  • 类型位于继承层次结构中,因此您可以选择要继承的类型,具体取决于其属性以及与存储库中其他实体的关系
  • 如果您愿意,可以继承cm:content而不是cm:objectusr:user,但是您会错过那些更高级别类型引入的所有功能

我无法理解为什么内容类型会改变或影响用户访问内容的方式,特别是如果您有自己的页面向用户显示内容。

作为旁注,sys:base也继承{{1}},正如您在userModel.xml

中所看到的那样