]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
7654170098794d215ee3a14e69b4c7c149f3f516
[tmp/jakarta-migration.git] /
1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
2 \r
3 <!--\r
4     Relation schema (XSD)\r
5     \r
6     Entity  : Relation\r
7     Part    : Common\r
8     Used for: Nuxeo EP core document type\r
9 \r
10     $LastChangedRevision$\r
11     $LastChangedDate$\r
12 -->\r
13 \r
14 <xs:schema \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
19     version="0.1">\r
20 \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
23 \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
39 \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
42 \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
47 \r
48     <xs:element name="subjectUri" type="xs:string"/>\r
49     <xs:element name="objectUri" type="xs:string"/>\r
50     \r
51     <xs:element name="subjectRefName" type="xs:string"/>\r
52     <xs:element name="objectRefName" type="xs:string"/>    \r
53 \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
63         </xs:restriction>\r
64     </xs:simpleType>\r
65 \r
66 \r
67 </xs:schema>\r
68 \r
69 \r
70 \r
71 \r
72 \r
73 \r