1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
\r
4 Relation schema (XSD)
\r
8 Used for: Nuxeo EP core document type
\r
10 $LastChangedRevision$
\r
15 xmlns:xs="http://www.w3.org/2001/XMLSchema"
\r
16 xmlns="http://collectionspace.org/relation/"
\r
17 xmlns:rel="http://collectionspace.org/relation/"
\r
18 targetNamespace="http://collectionspace.org/relation/"
\r
21 <!-- Note: nuxeo ecm types does not support xs:anyURI type -->
\r
22 <!-- if xs:anyURI is used, it fails to register that doctype -->
\r
24 <!-- conventions for describing relationships -->
\r
25 <!-- 1. left to right in alphabetical order for the association relations -->
\r
26 <!-- e.g. for association between collectionobject and intake entities -->
\r
27 <!-- document-id-1 would be the id of the collectionobject -->
\r
28 <!-- document-type-1 would be the doc-type of the collectionobject -->
\r
29 <!-- document-id-2 would be the id of the intake -->
\r
30 ` <!-- document-type-2 would be the doc-type of the intake -->
\r
31 <!-- 2. left to right container and containee or children -->
\r
32 <!-- e.g. for collectionobject containing other collectionobjects -->
\r
33 <!-- document-id-1 would be the id of the container collectionobject -->
\r
34 <!-- document-type-1 would be the doc-type of the container collectionobject -->
\r
35 <!-- document-id-2 would be the id of the contained (or child) collectionobject -->
\r
36 <!-- document-type-2 would be the doc-type of the collectionobejct -->
\r
37 <xs:element name="subjectCsid" type="xs:string" minOccurs="1" maxOccurs="1"/> <!-- new name for documentId1 -->
\r
38 <xs:element name="subjectDocumentType" type="xs:string" minOccurs="1" maxOccurs="1"/> <!-- new name for documentType1 -->
\r
40 <xs:element name="objectCsid" type="xs:string" minOccurs="1" maxOccurs="1"/> <!-- new name for documentId2 -->
\r
41 <xs:element name="objectDocumentType" type="xs:string" minOccurs="1" maxOccurs="1"/> <!-- new name for documentType2 -->
\r
43 <!-- type of relationship between two entities -->
\r
44 <xs:element name="relationshipType" type="rel:RelationshipType" minOccurs="1" maxOccurs="1"/>
\r
45 <xs:element name="predicate" type="rel:RelationshipType" minOccurs="1" maxOccurs="1"/> <!-- new name for relationshipType -->
\r
46 <xs:element name="predicateDisplayName" type="xs:string" minOccurs="1"/>
\r
48 <xs:element name="subjectUri" type="xs:string"/>
\r
49 <xs:element name="objectUri" type="xs:string"/>
\r
51 <xs:element name="subjectRefName" type="xs:string"/>
\r
52 <xs:element name="objectRefName" type="xs:string"/>
\r
54 <!-- enumeration defining the type of relationship between two entities -->
\r
55 <xs:simpleType name="RelationshipType">
\r
56 <xs:restriction base="xs:string">
\r
57 <!-- document with id as document-id-1 is associated with document with id as document-id-2 -->
\r
58 <xs:enumeration value="association" />
\r
59 <!-- document with id as document-id-1 contains one or more document with id as document-id-2 -->
\r
60 <xs:enumeration value="contains" />
\r
61 <!-- document with id as document-id-1 has parent document with id as document-id-2 -->
\r
62 <xs:enumeration value="hasBroader" />
\r