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