Files
alfresco-community-repo/config/alfresco/model/contentModel.xml
Britt Park b2f9df29d1 Humongous merge. It is incomplete, however; faces-config-navigation.xml and ClientConfigElement
were both beyond me, and are just the raw conflict merge data.  If Kev can't figure out how they should
go together by tomorrow AM (for me) I'll dig back in.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4306 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2006-11-08 05:17:40 +00:00

712 lines
23 KiB
XML

<model name="cm:contentmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<description>Alfresco Content Domain Model</description>
<author>Alfresco</author>
<published>2005-09-29</published>
<version>1.0</version>
<imports>
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<import uri="http://www.alfresco.org/model/system/1.0" prefix="sys"/>
</imports>
<namespaces>
<namespace uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
</namespaces>
<constraints>
<constraint name="cm:filename" type="REGEX">
<parameter name="expression"><value><![CDATA[.*[\"\*\\\>\<\?\/\:\|\xA3\xAC\%\&\+\;]+.*]]></value></parameter>
<parameter name="requiresMatch"><value>false</value></parameter>
</constraint>
</constraints>
<types>
<type name="cm:cmobject">
<title>Object</title>
<parent>sys:base</parent>
<properties>
<property name="cm:name">
<title>Name</title>
<type>d:text</type>
<mandatory enforced="true">true</mandatory>
<constraints>
<constraint ref="cm:filename" />
</constraints>
</property>
</properties>
<mandatory-aspects>
<aspect>cm:auditable</aspect>
</mandatory-aspects>
</type>
<type name="cm:folder">
<title>Folder</title>
<parent>cm:cmobject</parent>
<archive>true</archive>
<associations>
<child-association name="cm:contains">
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>sys:base</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
<duplicate>false</duplicate>
</child-association>
</associations>
</type>
<type name="cm:content">
<title>Content</title>
<parent>cm:cmobject</parent>
<archive>true</archive>
<properties>
<property name="cm:content">
<type>d:content</type>
<mandatory>false</mandatory>
<!--- Index content in the background -->
<index enabled="true">
<atomic>true</atomic>
<stored>false</stored>
<tokenised>true</tokenised>
</index>
</property>
</properties>
</type>
<type name="cm:dictionaryModel">
<title>Dictionary Model</title>
<parent>cm:content</parent>
<properties>
<property name="cm:modelName">
<title>Model name</title>
<type>d:qname</type>
<protected>true</protected>
</property>
<property name="cm:modelDescription">
<title>Description</title>
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:modelAuthor">
<title>Author</title>
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:modelPublishedDate">
<title>Published Date</title>
<type>d:date</type>
<protected>true</protected>
</property>
<property name="cm:modelVersion">
<title>Version</title>
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:modelActive">
<title>Model Active</title>
<type>d:boolean</type>
<default>false</default>
</property>
</properties>
</type>
<type name="cm:link">
<title>Link Object</title>
<parent>cm:cmobject</parent>
<properties>
<property name="cm:destination">
<title>Link Destination</title>
<type>d:noderef</type>
<mandatory>true</mandatory>
</property>
</properties>
</type>
<type name="cm:savedquery">
<title>Saved Query</title>
<parent>cm:content</parent>
</type>
<type name="cm:systemfolder">
<title>System Folder</title>
<parent>cm:folder</parent>
</type>
<type name="cm:person">
<title>Person</title>
<parent>sys:base</parent>
<properties>
<property name="cm:userName">
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="cm:homeFolder">
<type>d:noderef</type>
<mandatory>true</mandatory>
</property>
<property name="cm:firstName">
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="cm:lastName">
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="cm:middleName">
<type>d:text</type>
</property>
<property name="cm:email">
<type>d:text</type>
</property>
<property name="cm:organizationId">
<type>d:text</type>
</property>
<property name="cm:homeFolderProvider">
<type>d:text</type>
</property>
<property name="cm:defaultHomeFolderPath">
<type>d:text</type>
</property>
</properties>
</type>
<!-- Classification -->
<type name="cm:category_root">
<title>Category Root</title>
<parent>cm:cmobject</parent>
<associations>
<child-association name="cm:categories">
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:category</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</child-association>
</associations>
<mandatory-aspects>
<aspect>sys:aspect_root</aspect>
</mandatory-aspects>
</type>
<type name="cm:category">
<title>Category</title>
<parent>cm:cmobject</parent>
<associations>
<child-association name="cm:subcategories">
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:category</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</child-association>
</associations>
</type>
</types>
<aspects>
<aspect name="cm:titled">
<title>Titled</title>
<properties>
<property name="cm:title">
<title>Title</title>
<type>d:text</type>
</property>
<property name="cm:description">
<title>Description</title>
<type>d:text</type>
</property>
</properties>
</aspect>
<aspect name="cm:auditable">
<title>Auditable</title>
<properties>
<property name="cm:created">
<title>Created</title>
<type>d:datetime</type>
<protected>true</protected>
<mandatory enforced="true">true</mandatory>
</property>
<property name="cm:creator">
<title>Creator</title>
<type>d:text</type>
<protected>true</protected>
<mandatory enforced="true">true</mandatory>
</property>
<property name="cm:modified">
<title>Modified</title>
<type>d:datetime</type>
<protected>true</protected>
<mandatory enforced="true">true</mandatory>
</property>
<property name="cm:modifier">
<title>Modifier</title>
<type>d:text</type>
<protected>true</protected>
<mandatory enforced="true">true</mandatory>
</property>
<property name="cm:accessed">
<title>Accessed</title>
<type>d:datetime</type>
<protected>true</protected>
</property>
</properties>
</aspect>
<aspect name="cm:localizable">
<title>Localizable</title>
<properties>
<property name="cm:locale">
<title>Locale</title>
<!-- need to have means to identify root instance of appropriate category -->
<type>d:category</type>
</property>
</properties>
</aspect>
<aspect name="cm:translatable">
<title>Translatable</title>
<parent>cm:localizable</parent>
<!-- TODO: Support mandatory-aspects on an aspect in the meta-model
<mandatory-aspects>
<aspect>cm:localizable</aspect>
</mandatory-aspects>
-->
<associations>
<association name="cm:translations">
<title>Translations</title>
<source>
<role>cm:translationOf</role>
<mandatory>false</mandatory>
<many>false</many>
</source>
<target>
<class>cm:content</class>
<role>cm:hasTranslation</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:transformable">
<title>Transformable</title>
<associations>
<association name="cm:formats">
<title>Formats</title>
<source>
<role>cm:formatOf</role>
<mandatory>false</mandatory>
<many>false</many>
</source>
<target>
<class>cm:content</class>
<role>cm:hasFormat</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:templatable">
<title>Templatable</title>
<properties>
<property name="cm:template">
<title>Template</title>
<type>d:noderef</type>
<mandatory>false</mandatory>
</property>
</properties>
</aspect>
<aspect name="cm:complianceable">
<title>Complianceable</title>
<parent>cm:auditable</parent>
<!-- TODO: Support mandatory-aspects on an aspect in the meta-model
<mandatory-aspects>
<aspect>cm:auditable</aspect>
</mandatory-aspects>
-->
<properties>
<property name="cm:removeAfter">
<title>Remove After</title>
<type>d:datetime</type>
</property>
</properties>
</aspect>
<aspect name="cm:ownable">
<title>Ownable</title>
<properties>
<property name="cm:owner">
<title>Owner</title>
<type>d:text</type>
</property>
</properties>
</aspect>
<aspect name="cm:author">
<title>Author</title>
<properties>
<property name="cm:author">
<title>Author</title>
<type>d:text</type>
</property>
</properties>
</aspect>
<aspect name="cm:dublincore">
<title>Dublin Core</title>
<parent>cm:titled</parent>
<properties>
<property name="cm:publisher">
<title>Publisher</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:contributor">
<title>Contributor</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:type">
<title>Type</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:identifier">
<title>Identifier</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:dcsource">
<title>Source</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:coverage">
<title>Coverage</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:rights">
<title>Rights</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
<property name="cm:subject">
<title>Subject</title>
<type>d:text</type>
<mandatory enforced="false">true</mandatory>
</property>
</properties>
<mandatory-aspects>
<aspect>cm:auditable</aspect>
<aspect>cm:author</aspect>
</mandatory-aspects>
</aspect>
<aspect name="cm:basable">
<title>Basable</title>
<associations>
<association name="cm:basis">
<source>
<role>cm:basedOn</role>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:content</class>
<role>cm:hasBasis</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:partable">
<title>Partable</title>
<associations>
<association name="cm:parts">
<source>
<role>cm:partOf</role>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:content</class>
<role>cm:hasPart</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:referencing">
<title>Referencing</title>
<associations>
<association name="cm:references">
<source>
<role>cm:referencedBy</role>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:content</class>
<role>cm:references</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:replaceable">
<title>Replacable</title>
<associations>
<association name="cm:replaces">
<source>
<role>cm:replacedBy</role>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:content</class>
<role>cm:replaces</role>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:effectivity">
<title>Effectivity</title>
<properties>
<property name="cm:from">
<title>Effective From</title>
<type>d:datetime</type>
</property>
<property name="cm:to">
<title>Effective To</title>
<type>d:datetime</type>
</property>
</properties>
</aspect>
<aspect name="cm:summarizable">
<title>Summarizable</title>
<properties>
<property name="cm:summary">
<title>Summary</title>
<type>d:text</type>
</property>
</properties>
</aspect>
<aspect name="cm:countable">
<title>Countable</title>
<properties>
<property name="cm:hits">
<type>d:int</type>
</property>
<property name="cm:counter">
<type>d:int</type>
</property>
</properties>
</aspect>
<aspect name="cm:copiedfrom">
<title>Copied From</title>
<properties>
<property name="cm:source">
<type>d:noderef</type>
<protected>true</protected>
<mandatory>true</mandatory>
<multiple>false</multiple>
<index enabled="true">
<atomic>true</atomic>
<stored>false</stored>
<tokenised>true</tokenised>
</index>
</property>
</properties>
</aspect>
<aspect name="cm:workingcopy">
<title>Working Copy</title>
<properties>
<property name="cm:workingCopyOwner">
<type>d:text</type>
<protected>true</protected>
<mandatory>true</mandatory>
</property>
</properties>
</aspect>
<aspect name="cm:versionable">
<title>Versionable</title>
<properties>
<property name="cm:versionLabel">
<title>Version Label</title>
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:initialVersion">
<title>Initial Version</title>
<type>d:boolean</type>
<default>true</default>
</property>
<property name="cm:autoVersion">
<title>Auto Version</title>
<type>d:boolean</type>
<default>true</default>
</property>
</properties>
</aspect>
<aspect name="cm:lockable">
<title>Lockable</title>
<properties>
<property name="cm:lockOwner">
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:lockType">
<type>d:text</type>
<protected>true</protected>
</property>
<property name="cm:expiryDate">
<type>d:date</type>
<protected>true</protected>
<mandatory>false</mandatory>
</property>
<property name="cm:lockIsDeep">
<type>d:boolean</type>
<protected>true</protected>
</property>
</properties>
</aspect>
<aspect name="cm:subscribable">
<associations>
<association name="cm:subscribedBy">
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:person</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:classifiable">
<title>Classifiable</title>
</aspect>
<aspect name="cm:generalclassifiable">
<title>General Classifiable</title>
<parent>cm:classifiable</parent>
<properties>
<property name="cm:categories">
<title>Categories</title>
<type>d:category</type>
<mandatory>false</mandatory>
<multiple>true</multiple>
<index enabled="true">
<atomic>true</atomic>
<stored>true</stored>
<tokenised>true</tokenised>
</index>
</property>
</properties>
</aspect>
<aspect name="cm:attachable">
<title>Attachable</title>
<associations>
<association name="cm:attachments">
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:cmobject</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</aspect>
<aspect name="cm:emailed">
<title>Emailed</title>
<properties>
<property name="cm:originator">
<title>Originator</title>
<type>d:text</type>
</property>
<property name="cm:addressee">
<title>Addressee</title>
<type>d:text</type>
</property>
<property name="cm:addressees">
<title>Addressees</title>
<type>d:text</type>
<multiple>true</multiple>
</property>
<property name="cm:subjectline">
<title>Subject</title>
<type>d:text</type>
</property>
<property name="cm:sentdate">
<title>Sent Date</title>
<type>d:datetime</type>
</property>
</properties>
</aspect>
<!-- An aspect to make a node reference another node. Needed to
support cross repository references. There is a sys:reference type but
that is awkard for AVM Nodes which are less flexible as to type. -->
<aspect name="cm:referencesnode">
<title>References Node</title>
<properties>
<property name="cm:noderef">
<title>Node Reference</title>
<type>d:noderef</type>
<mandatory>true</mandatory>
</property>
</properties>
</aspect>
</aspects>
</model>