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