]> git.aero2k.de Git - tmp/jakarta-migration.git/blob
54a923e765b11509b18ae2d30591098d00322339
[tmp/jakarta-migration.git] /
1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
2 \r
3 <!--\r
4     CollectionObject schema (XSD)\r
5     \r
6     Entity  : CollectionObject\r
7     Part    : Common\r
8     Used for: Nuxeo EP core document type\r
9 \r
10     $LastChangedRevision: 4736 $\r
11     $LastChangedDate: 2011-05-12 17:36:23 -0700 (Thu, 12 May 2011) $\r
12 -->\r
13 \r
14 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"\r
15     xmlns:ns="http://collectionspace.org/collectionobject/"\r
16     xmlns="http://collectionspace.org/collectionobject/"\r
17     targetNamespace="http://collectionspace.org/collectionobject/" version="0.1">\r
18 \r
19     <!-- Object identification information -->\r
20 \r
21     <xs:element name="objectNumber" type="xs:string"/>\r
22     <xs:element name="otherNumberList" type="ns:otherNumberList"/>\r
23     <xs:element name="briefDescriptions">\r
24         <xs:complexType>\r
25             <xs:sequence>\r
26                 <xs:element name="briefDescription" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
27             </xs:sequence>\r
28         </xs:complexType>\r
29     </xs:element>\r
30     <xs:element name="comments">\r
31         <xs:complexType>\r
32             <xs:sequence>\r
33                 <xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
34             </xs:sequence>\r
35         </xs:complexType>\r
36     </xs:element>\r
37     <xs:element name="distinguishingFeatures" type="xs:string"/>\r
38     <xs:element name="numberOfObjects" type="xs:integer"/>\r
39     <xs:element name="objectNameList" type="ns:objectNameList"/>\r
40     <xs:element name="responsibleDepartments">\r
41         <xs:complexType>\r
42             <xs:sequence>\r
43                 <xs:element name="responsibleDepartment" type="xs:string"\r
44                     minOccurs="0" maxOccurs="unbounded"/>\r
45             </xs:sequence>\r
46         </xs:complexType>\r
47     </xs:element>\r
48     <xs:element name="collection" type="xs:string"/>\r
49     <xs:element name="titleGroupList" type="titleGroupList"/>\r
50     <xs:element name="recordStatus" type="xs:string"/>\r
51 \r
52     <!-- Object Description Information -->\r
53 \r
54     <xs:element name="age" type="xs:integer"/>\r
55     <xs:element name="ageQualifier" type="xs:string"/>\r
56     <xs:element name="ageUnit" type="xs:string"/>\r
57     <xs:element name="colors">\r
58         <xs:complexType>\r
59             <xs:sequence>\r
60                 <xs:element name="color" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
61             </xs:sequence>\r
62         </xs:complexType>\r
63     </xs:element>\r
64     <xs:element name="contentActivities">\r
65         <xs:complexType>\r
66             <xs:sequence>\r
67                 <xs:element name="contentActivity" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
68             </xs:sequence>\r
69         </xs:complexType>\r
70     </xs:element>\r
71     <xs:element name="contentConcepts">\r
72         <xs:complexType>\r
73             <xs:sequence>\r
74                 <xs:element name="contentConcept" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
75             </xs:sequence>\r
76         </xs:complexType>\r
77     </xs:element>\r
78     <xs:element name="contentDateGroup" type="structuredDateGroup"/>\r
79     <xs:element name="contentDescription" type="xs:string"/>\r
80     <xs:element name="contentEventNameGroupList" type="contentEventNameGroupList"/>\r
81     <xs:element name="contentNote" type="xs:string"/>\r
82     <xs:element name="contentLanguages">\r
83         <xs:complexType>\r
84             <xs:sequence>\r
85                 <xs:element name="contentLanguage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
86             </xs:sequence>\r
87         </xs:complexType>\r
88     </xs:element>\r
89     <xs:element name="contentObjectGroupList" type="contentObjectGroupList"/>\r
90     <xs:element name="contentOrganizations">\r
91         <xs:complexType>\r
92             <xs:sequence>\r
93                 <xs:element name="contentOrganization" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
94             </xs:sequence>\r
95         </xs:complexType>\r
96     </xs:element>\r
97     <xs:element name="contentOtherGroupList" type="contentOtherGroupList"/>\r
98     <xs:element name="contentPeoples">\r
99         <xs:complexType>\r
100             <xs:sequence>\r
101                 <xs:element name="contentPeople" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
102             </xs:sequence>\r
103         </xs:complexType>\r
104     </xs:element>\r
105     <xs:element name="contentPersons">\r
106         <xs:complexType>\r
107             <xs:sequence>\r
108                 <xs:element name="contentPerson" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
109             </xs:sequence>\r
110         </xs:complexType>\r
111     </xs:element>\r
112     <xs:element name="contentPlaces">\r
113         <xs:complexType>\r
114             <xs:sequence>\r
115                 <xs:element name="contentPlace" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
116             </xs:sequence>\r
117         </xs:complexType>\r
118     </xs:element>\r
119     <xs:element name="contentPositions">\r
120         <xs:complexType>\r
121             <xs:sequence>\r
122                 <xs:element name="contentPosition" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
123             </xs:sequence>\r
124         </xs:complexType>\r
125     </xs:element>\r
126     <xs:element name="contentScripts">\r
127         <xs:complexType>\r
128             <xs:sequence>\r
129                 <xs:element name="contentScript" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
130             </xs:sequence>\r
131         </xs:complexType>\r
132     </xs:element>\r
133     <xs:element name="copyNumber" type="xs:string"/>\r
134     <!-- Changed name of next field from dimensions (type="dimensionList") in v1.13 when adding repeatable sub group -->\r
135     <xs:element name="measuredPartGroupList" type="measuredPartGroupList"/>\r
136     <xs:element name="editionNumber" type="xs:string"/>\r
137     <xs:element name="forms">\r
138         <xs:complexType>\r
139             <xs:sequence>\r
140                 <xs:element name="form" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
141             </xs:sequence>\r
142         </xs:complexType>\r
143     </xs:element>\r
144 \r
145     <!-- Object description Inscription - Content Information -->\r
146     <xs:element name="textualInscriptionGroupList" type="textualInscriptionGroupList"/>\r
147     <xs:complexType name="textualInscriptionGroupList">\r
148         <xs:sequence>\r
149             <xs:element name="textualInscriptionGroup" type="textualInscriptionGroup" minOccurs="0"\r
150                 maxOccurs="unbounded"/>\r
151         </xs:sequence>\r
152     </xs:complexType>\r
153 \r
154     <!-- FIXME Consider whether changes to field names below are required -->\r
155     <!-- in response to the renaming of this group to Textual inscription -->\r
156     <xs:complexType name="textualInscriptionGroup">\r
157         <xs:sequence>\r
158             <xs:element name="inscriptionContent" type="xs:string"/>\r
159             <xs:element name="inscriptionContentInscriber" type="xs:string"/>\r
160             <xs:element name="inscriptionContentDateGroup" type="structuredDateGroup"/>\r
161             <xs:element name="inscriptionContentInterpretation" type="xs:string"/>\r
162             <xs:element name="inscriptionContentLanguage" type="xs:string"/>\r
163             <xs:element name="inscriptionContentMethod" type="xs:string"/>\r
164             <xs:element name="inscriptionContentPosition" type="xs:string"/>\r
165             <xs:element name="inscriptionContentScript" type="xs:string"/>\r
166             <xs:element name="inscriptionContentTranslation" type="xs:string"/>\r
167             <xs:element name="inscriptionContentTransliteration" type="xs:string"/>\r
168             <xs:element name="inscriptionContentType" type="xs:string"/>\r
169         </xs:sequence>\r
170     </xs:complexType>\r
171 \r
172     <!-- Object Description Inscription - Description Information -->\r
173     <xs:element name="nonTextualInscriptionGroupList" type="nonTextualInscriptionGroupList"/>\r
174     <xs:complexType name="nonTextualInscriptionGroupList">\r
175         <xs:sequence>\r
176             <xs:element name="nonTextualInscriptionGroup" type="nonTextualInscriptionGroup" minOccurs="0"\r
177                 maxOccurs="unbounded"/>\r
178         </xs:sequence>\r
179     </xs:complexType>\r
180 \r
181     <!-- FIXME Consider whether changes to field names below are required -->\r
182     <!-- in response to the renaming of this group to Non-textual inscription -->\r
183     <xs:complexType name="nonTextualInscriptionGroup">\r
184         <xs:sequence>\r
185             <xs:element name="inscriptionDescription" type="xs:string"/>\r
186             <xs:element name="inscriptionDescriptionInscriber" type="xs:string"/>\r
187             <xs:element name="inscriptionDescriptionDateGroup" type="structuredDateGroup"/>\r
188             <xs:element name="inscriptionDescriptionInterpretation" type="xs:string"/>\r
189             <xs:element name="inscriptionDescriptionMethod" type="xs:string"/>\r
190             <xs:element name="inscriptionDescriptionPosition" type="xs:string"/>\r
191             <xs:element name="inscriptionDescriptionType" type="xs:string"/>\r
192         </xs:sequence>\r
193     </xs:complexType>\r
194     <!-- Object Description Material Information -->\r
195 \r
196     <xs:element name="materialGroupList" type="materialGroupList"/>\r
197 \r
198     <!-- Misc Object Description Information -->\r
199 \r
200     <xs:element name="objectStatusList" type="objectStatusList" />      \r
201     <xs:element name="phase" type="xs:string"/>\r
202     <xs:element name="physicalDescription" type="xs:string"/>\r
203     <xs:element name="sex" type="xs:string"/>\r
204     <xs:element name="styles">\r
205         <xs:complexType>\r
206             <xs:sequence>\r
207                 <xs:element name="style" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
208             </xs:sequence>\r
209         </xs:complexType>\r
210     </xs:element>\r
211     <xs:element name="technicalAttributeGroupList" type="technicalAttributeGroupList"/>\r
212     <xs:element name="objectComponentGroupList" type="objectComponentGroupList"/>\r
213 \r
214     <!-- Object Production Information -->\r
215     <xs:element name="objectProductionDateGroupList" type="objectProductionDateGroupList"/>\r
216     <xs:element name="objectProductionNote" type="xs:string"/>\r
217     <xs:element name="objectProductionOrganizationGroupList" type="objectProductionOrganizationGroupList"/>\r
218     <xs:element name="objectProductionPeopleGroupList" type="objectProductionPeopleGroupList"/>\r
219     <xs:element name="objectProductionPersonGroupList" type="objectProductionPersonGroupList"/>\r
220     <xs:element name="objectProductionPlaceGroupList" type="objectProductionPlaceGroupList"/>\r
221     <xs:element name="objectProductionReasons">\r
222         <xs:complexType>\r
223             <xs:sequence>\r
224                 <xs:element name="objectProductionReason" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
225             </xs:sequence>\r
226         </xs:complexType>\r
227     </xs:element>\r
228     <xs:element name="techniqueGroupList" type="techniqueGroupList"/>\r
229 \r
230     <!-- Object History and Association Information - Association -->\r
231 \r
232     <!-- In the following field names, "assoc" is an abbreviation for "associated". -->\r
233     <!-- See the comments to CSPACE-2501 for a discussion of the database identifier -->\r
234     <!-- length limit that made this abbreviation necessary. -->\r
235     <xs:element name="assocActivityGroupList" type="assocActivityGroupList"/>\r
236     <xs:element name="assocConceptGroupList" type="assocConceptGroupList"/>\r
237     <!-- FIXME rename fields, if not over CSPACE-2501 length limit, -->\r
238     <!-- to assocCulturalAffinity -->\r
239     <xs:element name="assocCulturalContextGroupList" type="assocCulturalContextGroupList"/>\r
240     <xs:element name="assocDateGroupList" type="assocDateGroupList"/>\r
241     <!-- FIXME Start of Associated event repeatable group -->\r
242     <!-- Note: this group has repeatable sub-fields, and thus will -->\r
243     <!-- not be implemented as part of CSPACE-3229 in Release 1.2 -->\r
244     <xs:element name="assocEventName" type="xs:string"/>\r
245     <xs:element name="assocEventNameType" type="xs:string"/>\r
246     <xs:element name="assocEventNote" type="xs:string"/>\r
247     <xs:element name="assocEventOrganizations">\r
248         <xs:complexType>\r
249             <xs:sequence>\r
250                 <xs:element name="assocEventOrganization" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
251             </xs:sequence>\r
252         </xs:complexType>\r
253     </xs:element>\r
254     <xs:element name="assocEventPeoples">\r
255         <xs:complexType>\r
256             <xs:sequence>\r
257                 <xs:element name="assocEventPeople" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
258             </xs:sequence>\r
259         </xs:complexType>\r
260     </xs:element>\r
261     <xs:element name="assocEventPersons">\r
262         <xs:complexType>\r
263             <xs:sequence>\r
264                 <xs:element name="assocEventPerson" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
265             </xs:sequence>\r
266         </xs:complexType>\r
267     </xs:element>\r
268     <xs:element name="assocEventPlaces">\r
269         <xs:complexType>\r
270             <xs:sequence>\r
271                 <xs:element name="assocEventPlace" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
272             </xs:sequence>\r
273         </xs:complexType>\r
274     </xs:element>\r
275     <xs:element name="assocObjectGroupList" type="assocObjectGroupList"/>\r
276     <xs:element name="assocOrganizationGroupList" type="assocOrganizationGroupList"/>\r
277     <xs:element name="assocPeopleGroupList" type="assocPeopleGroupList"/>\r
278     <xs:element name="assocPersonGroupList" type="assocPersonGroupList"/>\r
279     <xs:element name="assocPlaceGroupList" type="assocPlaceGroupList"/>\r
280 \r
281     <!-- Object History and Association Information - History -->\r
282 \r
283     <xs:element name="objectHistoryNote" type="xs:string"/>\r
284     <!-- FIXME Start of owner repeatable group -->\r
285     <!-- Note: this group has repeatable sub-fields, and thus will -->\r
286     <!-- not be implemented as part of CSPACE-3229 in Release 1.2 -->\r
287     <xs:element name="owners">\r
288         <xs:complexType>\r
289             <xs:sequence>\r
290                 <xs:element name="owner" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
291             </xs:sequence>\r
292         </xs:complexType>\r
293     </xs:element>\r
294     <xs:element name="ownershipAccess" type="xs:string"/>\r
295     <xs:element name="ownershipCategory" type="xs:string"/>\r
296     <xs:element name="ownershipDateGroupList" type="ownershipDateGroupList"/>\r
297     <xs:element name="ownershipExchangeMethod" type="xs:string"/>\r
298     <xs:element name="ownershipExchangeNote" type="xs:string"/>\r
299     <xs:element name="ownershipExchangePriceCurrency" type="xs:string"/>\r
300     <xs:element name="ownershipExchangePriceValue" type="xs:decimal"/>\r
301     <xs:element name="ownershipPlace" type="xs:string"/>\r
302     <!-- FIXME End of owner repeatable group -->\r
303     <xs:element name="usageGroupList" type="usageGroupList"/>\r
304 \r
305     <!-- Object Owner's Contribution Information -->\r
306 \r
307     <xs:element name="ownersPersonalExperience" type="xs:string"/>\r
308     <xs:element name="ownersPersonalResponse" type="xs:string"/>\r
309     <xs:element name="ownersReferences">\r
310         <xs:complexType>\r
311             <xs:sequence>\r
312                 <xs:element name="ownersReference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
313             </xs:sequence>\r
314         </xs:complexType>\r
315     </xs:element>\r
316     <xs:element name="ownersContributionNote" type="xs:string"/>\r
317 \r
318     <!-- Object Viewers Contribution Information -->\r
319 \r
320     <xs:element name="viewersRole" type="xs:string"/>\r
321     <xs:element name="viewersPersonalExperience" type="xs:string"/>\r
322     <xs:element name="viewersPersonalResponse" type="xs:string"/>\r
323     <xs:element name="viewersReferences">\r
324         <xs:complexType>\r
325             <xs:sequence>\r
326                 <xs:element name="viewersReference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
327             </xs:sequence>\r
328         </xs:complexType>\r
329     </xs:element>\r
330     <xs:element name="viewersContributionNote" type="xs:string"/>\r
331 \r
332     <!-- Reference Information -->\r
333     \r
334     <xs:element name="referenceGroupList" type="referenceGroupList"/>\r
335 \r
336     <!--  Object Collection Information Group -->\r
337 \r
338     <xs:element name="fieldCollectionDateGroup" type="structuredDateGroup"/>\r
339     <xs:element name="fieldCollectionMethods">\r
340         <xs:complexType>\r
341             <xs:sequence>\r
342                 <xs:element name="fieldCollectionMethod" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
343             </xs:sequence>\r
344         </xs:complexType>\r
345     </xs:element>\r
346     <xs:element name="fieldCollectionNote" type="xs:string"/>\r
347     <xs:element name="fieldCollectionNumber" type="xs:string"/>\r
348     <xs:element name="fieldCollectionPlace" type="xs:string"/>\r
349     <xs:element name="fieldCollectionSources">\r
350         <xs:complexType>\r
351             <xs:sequence>\r
352                 <xs:element name="fieldCollectionSource" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
353             </xs:sequence>\r
354         </xs:complexType>\r
355     </xs:element>\r
356     <xs:element name="fieldCollectors">\r
357         <xs:complexType>\r
358             <xs:sequence>\r
359                 <xs:element name="fieldCollector" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
360             </xs:sequence>\r
361         </xs:complexType>\r
362     </xs:element>\r
363     <xs:element name="fieldColEventNames">\r
364         <xs:complexType>\r
365             <xs:sequence>\r
366                 <xs:element name="fieldColEventName" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
367             </xs:sequence>\r
368         </xs:complexType>\r
369     </xs:element>\r
370 \r
371     <xs:complexType name="otherNumberList">\r
372         <xs:sequence>\r
373             <xs:element name="otherNumber" type="ns:otherNumber" minOccurs="0"\r
374                 maxOccurs="unbounded"/>\r
375         </xs:sequence>\r
376     </xs:complexType>\r
377     <xs:complexType name="otherNumber">\r
378         <xs:sequence>\r
379             <xs:element name="numberValue" type="xs:string"/>\r
380             <xs:element name="numberType" type="xs:string"/>\r
381         </xs:sequence>\r
382     </xs:complexType>\r
383 \r
384     <xs:complexType name="objectNameList">\r
385         <xs:sequence>\r
386             <xs:element name="objectNameGroup" type="objectNameGroup" minOccurs="0"\r
387                 maxOccurs="unbounded"/>\r
388         </xs:sequence>\r
389     </xs:complexType>\r
390     <xs:complexType name="objectNameGroup">\r
391         <xs:sequence>\r
392             <xs:element name="objectName" type="xs:string"/>\r
393             <xs:element name="objectNameCurrency" type="xs:string"/>\r
394             <xs:element name="objectNameLevel" type="xs:string"/>\r
395             <xs:element name="objectNameNote" type="xs:string"/>\r
396             <xs:element name="objectNameSystem" type="xs:string"/>\r
397             <xs:element name="objectNameType" type="xs:string"/>\r
398             <xs:element name="objectNameLanguage" type="xs:string"/>\r
399         </xs:sequence>\r
400     </xs:complexType>\r
401 \r
402     <xs:complexType name="titleGroupList">\r
403         <xs:sequence>\r
404             <xs:element name="titleGroup" type="titleGroup" minOccurs="0"\r
405                 maxOccurs="unbounded"/>\r
406         </xs:sequence>\r
407     </xs:complexType>\r
408 \r
409     <xs:complexType name="titleGroup">\r
410         <xs:sequence>\r
411             <xs:element name="title" type="xs:string"/>\r
412             <xs:element name="titleLanguage" type="xs:string"/>\r
413             <xs:element name="titleType" type="xs:string"/>\r
414             <xs:element name="titleTranslationSubGroupList" type="titleTranslationSubGroupList"/>\r
415         </xs:sequence>\r
416     </xs:complexType>\r
417 \r
418     <xs:complexType name="titleTranslationSubGroupList">\r
419         <xs:sequence>\r
420             <xs:element name="titleTranslationSubGroup" type="titleTranslationSubGroup" minOccurs="0"\r
421                 maxOccurs="unbounded"/>\r
422         </xs:sequence>\r
423     </xs:complexType>\r
424 \r
425     <xs:complexType name="titleTranslationSubGroup">\r
426         <xs:sequence>\r
427             <xs:element name="titleTranslation" type="xs:string"/>\r
428             <xs:element name="titleTranslationLanguage" type="xs:string"/>\r
429         </xs:sequence>\r
430     </xs:complexType>\r
431 \r
432     <xs:complexType name="contentEventNameGroupList">\r
433         <xs:sequence>\r
434             <xs:element name="contentEventNameGroup" type="contentEventNameGroup" minOccurs="0"\r
435                 maxOccurs="unbounded"/>\r
436         </xs:sequence>\r
437     </xs:complexType>\r
438     <xs:complexType name="contentEventNameGroup">\r
439         <xs:sequence>\r
440             <xs:element name="contentEventName" type="xs:string"/>\r
441             <xs:element name="contentEventNameType" type="xs:string"/>\r
442         </xs:sequence>\r
443     </xs:complexType>\r
444 \r
445     <xs:complexType name="contentObjectGroupList">\r
446         <xs:sequence>\r
447             <xs:element name="contentObjectGroup" type="contentObjectGroup" minOccurs="0"\r
448                 maxOccurs="unbounded"/>\r
449         </xs:sequence>\r
450     </xs:complexType>\r
451     <xs:complexType name="contentObjectGroup">\r
452         <xs:sequence>\r
453             <xs:element name="contentObject" type="xs:string"/>\r
454             <xs:element name="contentObjectType" type="xs:string"/>\r
455         </xs:sequence>\r
456     </xs:complexType>\r
457 \r
458     <xs:complexType name="contentOtherGroupList">\r
459         <xs:sequence>\r
460             <xs:element name="contentOtherGroup" type="contentOtherGroup" minOccurs="0"\r
461                 maxOccurs="unbounded"/>\r
462         </xs:sequence>\r
463     </xs:complexType>\r
464     <xs:complexType name="contentOtherGroup">\r
465         <xs:sequence>\r
466             <xs:element name="contentOther" type="xs:string"/>\r
467             <xs:element name="contentOtherType" type="xs:string"/>\r
468         </xs:sequence>\r
469     </xs:complexType>\r
470 \r
471     <!-- Changed names, as of v1.13: dimensionList became measuredPartGroupList, dimensionGroup became measuredPartGroup. -->\r
472     <xs:complexType name="measuredPartGroupList">\r
473         <xs:sequence>\r
474             <xs:element name="measuredPartGroup" type="measuredPartGroup" minOccurs="0"\r
475                 maxOccurs="unbounded"/>\r
476         </xs:sequence>\r
477     </xs:complexType>\r
478     <xs:complexType name="measuredPartGroup">\r
479         <xs:sequence>\r
480             <xs:element name="measuredPart" type="xs:string"/>\r
481             <xs:element name="dimensionSummary" type="xs:string" />\r
482             <xs:element name="dimensionSubGroupList" type="dimensionSubGroupList"/>\r
483         </xs:sequence>\r
484     </xs:complexType>\r
485 \r
486     <xs:complexType name="dimensionSubGroupList">\r
487         <xs:sequence>\r
488             <xs:element name="dimensionSubGroup" type="dimensionSubGroup" minOccurs="0" maxOccurs="unbounded" />\r
489         </xs:sequence>\r
490     </xs:complexType>\r
491 \r
492     <xs:complexType name="dimensionSubGroup">\r
493         <xs:sequence>\r
494             <xs:element name="dimension" type="xs:string"/>\r
495             <xs:element name="measuredBy" type="xs:string"/>\r
496             <xs:element name="measurementUnit" type="xs:string"/>\r
497             <xs:element name="measurementMethod" type="xs:string"/>\r
498             <xs:element name="value" type="xs:decimal"/>\r
499             <xs:element name="valueDate" type="xs:dateTime"/>\r
500             <xs:element name="valueQualifier" type="xs:string"/>\r
501             <xs:element name="dimensionNote" type="xs:string"/>\r
502         </xs:sequence>\r
503     </xs:complexType>\r
504     \r
505     <xs:complexType name="materialGroupList">\r
506         <xs:sequence>\r
507             <xs:element name="materialGroup" type="materialGroup" minOccurs="0"\r
508                 maxOccurs="unbounded"/>\r
509         </xs:sequence>\r
510     </xs:complexType>\r
511     <xs:complexType name="materialGroup">\r
512         <xs:sequence>\r
513             <xs:element name="material" type="xs:string"/>\r
514             <xs:element name="materialComponent" type="xs:string"/>\r
515             <xs:element name="materialComponentNote" type="xs:string"/>\r
516             <xs:element name="materialName" type="xs:string"/>\r
517             <xs:element name="materialSource" type="xs:string"/>\r
518         </xs:sequence>\r
519     </xs:complexType>\r
520     \r
521     <xs:complexType name="objectStatusList">\r
522         <xs:sequence>\r
523             <xs:element name="objectStatus" type="xs:string" minOccurs="0" maxOccurs="unbounded" />\r
524         </xs:sequence>\r
525     </xs:complexType>\r
526 \r
527     <xs:complexType name="technicalAttributeGroupList">\r
528         <xs:sequence>\r
529             <xs:element name="technicalAttributeGroup" type="technicalAttributeGroup" minOccurs="0"\r
530                 maxOccurs="unbounded"/>\r
531         </xs:sequence>\r
532     </xs:complexType>\r
533     <xs:complexType name="technicalAttributeGroup">\r
534         <xs:sequence>\r
535             <xs:element name="technicalAttribute" type="xs:string"/>\r
536             <xs:element name="technicalAttributeMeasurement" type="xs:string"/>\r
537             <xs:element name="technicalAttributeMeasurementUnit" type="xs:string"/>\r
538         </xs:sequence>\r
539     </xs:complexType>\r
540 \r
541     <xs:complexType name="objectComponentGroupList">\r
542         <xs:sequence>\r
543             <xs:element name="objectComponentGroup" type="objectComponentGroup" minOccurs="0"\r
544                 maxOccurs="unbounded"/>\r
545         </xs:sequence>\r
546     </xs:complexType>\r
547     <xs:complexType name="objectComponentGroup">\r
548         <xs:sequence>\r
549             <xs:element name="objectComponentName" type="xs:string"/>\r
550             <xs:element name="objectComponentInformation" type="xs:string"/>\r
551         </xs:sequence>\r
552     </xs:complexType>\r
553 \r
554     <xs:complexType name="objectProductionDateGroupList">\r
555         <xs:sequence>\r
556             <xs:element name="objectProductionDateGroup" type="structuredDateGroup" minOccurs="0"\r
557                 maxOccurs="unbounded"/>\r
558         </xs:sequence>\r
559     </xs:complexType>\r
560 \r
561     <xs:complexType name="objectProductionOrganizationGroupList">\r
562         <xs:sequence>\r
563             <xs:element name="objectProductionOrganizationGroup" type="objectProductionOrganizationGroup" minOccurs="0"\r
564                 maxOccurs="unbounded"/>\r
565         </xs:sequence>\r
566     </xs:complexType>\r
567     <xs:complexType name="objectProductionOrganizationGroup">\r
568         <xs:sequence>\r
569             <xs:element name="objectProductionOrganization" type="xs:string"/>\r
570             <xs:element name="objectProductionOrganizationRole" type="xs:string"/>\r
571         </xs:sequence>\r
572     </xs:complexType>\r
573 \r
574     <xs:complexType name="objectProductionPeopleGroupList">\r
575         <xs:sequence>\r
576             <xs:element name="objectProductionPeopleGroup" type="objectProductionPeopleGroup" minOccurs="0"\r
577                 maxOccurs="unbounded"/>\r
578         </xs:sequence>\r
579     </xs:complexType>\r
580     <xs:complexType name="objectProductionPeopleGroup">\r
581         <xs:sequence>\r
582             <xs:element name="objectProductionPeople" type="xs:string"/>\r
583             <xs:element name="objectProductionPeopleRole" type="xs:string"/>\r
584         </xs:sequence>\r
585     </xs:complexType>\r
586 \r
587     <xs:complexType name="objectProductionPersonGroupList">\r
588         <xs:sequence>\r
589             <xs:element name="objectProductionPersonGroup" type="objectProductionPersonGroup" minOccurs="0"\r
590                 maxOccurs="unbounded"/>\r
591         </xs:sequence>\r
592     </xs:complexType>\r
593     <xs:complexType name="objectProductionPersonGroup">\r
594         <xs:sequence>\r
595             <xs:element name="objectProductionPerson" type="xs:string"/>\r
596             <xs:element name="objectProductionPersonRole" type="xs:string"/>\r
597         </xs:sequence>\r
598     </xs:complexType>\r
599 \r
600     <xs:complexType name="objectProductionPlaceGroupList">\r
601         <xs:sequence>\r
602             <xs:element name="objectProductionPlaceGroup" type="objectProductionPlaceGroup" minOccurs="0"\r
603                 maxOccurs="unbounded"/>\r
604         </xs:sequence>\r
605     </xs:complexType>\r
606     <xs:complexType name="objectProductionPlaceGroup">\r
607         <xs:sequence>\r
608             <xs:element name="objectProductionPlace" type="xs:string"/>\r
609             <xs:element name="objectProductionPlaceRole" type="xs:string"/>\r
610         </xs:sequence>\r
611     </xs:complexType>\r
612 \r
613     <xs:complexType name="techniqueGroupList">\r
614         <xs:sequence>\r
615             <xs:element name="techniqueGroup" type="techniqueGroup" minOccurs="0"\r
616                 maxOccurs="unbounded"/>\r
617         </xs:sequence>\r
618     </xs:complexType>\r
619     <xs:complexType name="techniqueGroup">\r
620         <xs:sequence>\r
621             <xs:element name="technique" type="xs:string"/>\r
622             <xs:element name="techniqueType" type="xs:string"/>\r
623         </xs:sequence>\r
624     </xs:complexType>\r
625 \r
626     <xs:complexType name="assocActivityGroupList">\r
627         <xs:sequence>\r
628             <xs:element name="assocActivityGroup" type="assocActivityGroup" minOccurs="0"\r
629                 maxOccurs="unbounded"/>\r
630         </xs:sequence>\r
631     </xs:complexType>\r
632     <xs:complexType name="assocActivityGroup">\r
633         <xs:sequence>\r
634             <xs:element name="assocActivity" type="xs:string"/>\r
635             <xs:element name="assocActivityType" type="xs:string"/>\r
636             <xs:element name="assocActivityNote" type="xs:string"/>\r
637         </xs:sequence>\r
638     </xs:complexType>\r
639 \r
640     <xs:complexType name="assocConceptGroupList">\r
641         <xs:sequence>\r
642             <xs:element name="assocConceptGroup" type="assocConceptGroup" minOccurs="0"\r
643                 maxOccurs="unbounded"/>\r
644         </xs:sequence>\r
645     </xs:complexType>\r
646     <xs:complexType name="assocConceptGroup">\r
647         <xs:sequence>\r
648             <xs:element name="assocConcept" type="xs:string"/>\r
649             <xs:element name="assocConceptType" type="xs:string"/>\r
650             <xs:element name="assocConceptNote" type="xs:string"/>\r
651         </xs:sequence>\r
652     </xs:complexType>\r
653 \r
654     <!-- FIXME rename fields, if not over CSPACE-2501 length limit, -->\r
655     <!-- to assocCulturalAffinity -->\r
656     <xs:complexType name="assocCulturalContextGroupList">\r
657         <xs:sequence>\r
658             <xs:element name="assocCulturalContextGroup" type="assocCulturalContextGroup" minOccurs="0"\r
659                 maxOccurs="unbounded"/>\r
660         </xs:sequence>\r
661     </xs:complexType>\r
662     <!-- FIXME rename fields, if not over CSPACE-2501 length limit, -->\r
663     <!-- to assocCulturalAffinity -->\r
664     <xs:complexType name="assocCulturalContextGroup">\r
665         <xs:sequence>\r
666             <xs:element name="assocCulturalContext" type="xs:string"/>\r
667             <xs:element name="assocCulturalContextType" type="xs:string"/>\r
668             <xs:element name="assocCulturalContextNote" type="xs:string"/>\r
669         </xs:sequence>\r
670     </xs:complexType>\r
671 \r
672     <xs:complexType name="assocDateGroupList">\r
673         <xs:sequence>\r
674             <xs:element name="assocDateGroup" type="assocDateGroup" minOccurs="0"\r
675                 maxOccurs="unbounded"/>\r
676         </xs:sequence>\r
677     </xs:complexType>\r
678     <xs:complexType name="assocDateGroup">\r
679         <xs:sequence>\r
680             <!-- CSPACE-4775: Renamed assocDate to assocStructuredDateGroup. This doesn't follow the convention where the -->\r
681             <!-- structured date field would normally be named assocDateGroup, because a complexType by that name already exists. -->\r
682             <!-- The app layer doesn't handle the duplicated name well, and it's more invasive to change the name of the complexType -->\r
683             <!-- than to use an unconventional name for the field, which we'd be renaming anyway. -->\r
684             <xs:element name="assocStructuredDateGroup" type="structuredDateGroup"/>\r
685             <xs:element name="assocDateType" type="xs:string"/>\r
686             <xs:element name="assocDateNote" type="xs:string"/>\r
687         </xs:sequence>\r
688     </xs:complexType>\r
689 \r
690     <xs:complexType name="assocObjectGroupList">\r
691         <xs:sequence>\r
692             <xs:element name="assocObjectGroup" type="assocObjectGroup" minOccurs="0"\r
693                 maxOccurs="unbounded"/>\r
694         </xs:sequence>\r
695     </xs:complexType>\r
696     <xs:complexType name="assocObjectGroup">\r
697         <xs:sequence>\r
698             <xs:element name="assocObject" type="xs:string"/>\r
699             <xs:element name="assocObjectType" type="xs:string"/>\r
700             <xs:element name="assocObjectNote" type="xs:string"/>\r
701         </xs:sequence>\r
702     </xs:complexType>\r
703 \r
704     <xs:complexType name="assocOrganizationGroupList">\r
705         <xs:sequence>\r
706             <xs:element name="assocOrganizationGroup" type="assocOrganizationGroup" minOccurs="0"\r
707                 maxOccurs="unbounded"/>\r
708         </xs:sequence>\r
709     </xs:complexType>\r
710     <xs:complexType name="assocOrganizationGroup">\r
711         <xs:sequence>\r
712             <xs:element name="assocOrganization" type="xs:string"/>\r
713             <xs:element name="assocOrganizationType" type="xs:string"/>\r
714             <xs:element name="assocOrganizationNote" type="xs:string"/>\r
715         </xs:sequence>\r
716     </xs:complexType>\r
717 \r
718     <xs:complexType name="assocPeopleGroupList">\r
719         <xs:sequence>\r
720             <xs:element name="assocPeopleGroup" type="assocPeopleGroup" minOccurs="0"\r
721                 maxOccurs="unbounded"/>\r
722         </xs:sequence>\r
723     </xs:complexType>\r
724     <xs:complexType name="assocPeopleGroup">\r
725         <xs:sequence>\r
726             <xs:element name="assocPeople" type="xs:string"/>\r
727             <xs:element name="assocPeopleType" type="xs:string"/>\r
728             <xs:element name="assocPeopleNote" type="xs:string"/>\r
729         </xs:sequence>\r
730     </xs:complexType>\r
731 \r
732     <xs:complexType name="assocPersonGroupList">\r
733         <xs:sequence>\r
734             <xs:element name="assocPersonGroup" type="assocPersonGroup" minOccurs="0"\r
735                 maxOccurs="unbounded"/>\r
736         </xs:sequence>\r
737     </xs:complexType>\r
738     <xs:complexType name="assocPersonGroup">\r
739         <xs:sequence>\r
740             <xs:element name="assocPerson" type="xs:string"/>\r
741             <xs:element name="assocPersonType" type="xs:string"/>\r
742             <xs:element name="assocPersonNote" type="xs:string"/>\r
743         </xs:sequence>\r
744     </xs:complexType>\r
745 \r
746     <xs:complexType name="assocPlaceGroupList">\r
747         <xs:sequence>\r
748             <xs:element name="assocPlaceGroup" type="assocPlaceGroup" minOccurs="0"\r
749                 maxOccurs="unbounded"/>\r
750         </xs:sequence>\r
751     </xs:complexType>\r
752     <xs:complexType name="assocPlaceGroup">\r
753         <xs:sequence>\r
754             <xs:element name="assocPlace" type="xs:string"/>\r
755             <xs:element name="assocPlaceType" type="xs:string"/>\r
756             <xs:element name="assocPlaceNote" type="xs:string"/>\r
757         </xs:sequence>\r
758     </xs:complexType>\r
759     \r
760     <xs:complexType name="ownershipDateGroupList">\r
761         <xs:sequence>\r
762             <xs:element name="ownershipDateGroup" type="structuredDateGroup" minOccurs="0"\r
763                 maxOccurs="unbounded"/>\r
764         </xs:sequence>\r
765     </xs:complexType>\r
766 \r
767     <xs:complexType name="usageGroupList">\r
768         <xs:sequence>\r
769             <xs:element name="usageGroup" type="usageGroup" minOccurs="0"\r
770                 maxOccurs="unbounded"/>\r
771         </xs:sequence>\r
772     </xs:complexType>\r
773     <xs:complexType name="usageGroup">\r
774         <xs:sequence>\r
775             <xs:element name="usage" type="xs:string"/>\r
776             <xs:element name="usageNote" type="xs:string"/>\r
777         </xs:sequence>\r
778     </xs:complexType>\r
779     \r
780     <xs:complexType name="referenceGroupList">\r
781         <xs:sequence>\r
782             <xs:element name="referenceGroup" type="referenceGroup" minOccurs="0" maxOccurs="unbounded"/>\r
783         </xs:sequence>\r
784     </xs:complexType>\r
785          \r
786     <xs:complexType name="referenceGroup">\r
787         <xs:sequence>\r
788             <xs:element name="reference" type="xs:string"/>\r
789             <xs:element name="referenceNote" type="xs:string"/>\r
790         </xs:sequence>\r
791     </xs:complexType>\r
792 \r
793     <!-- Before (re)using this generic complex type in any record type -->\r
794     <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->\r
795     <!-- that correctly in its table creation/row linking. -->\r
796     <xs:complexType name="structuredDateGroup">\r
797         <xs:sequence>\r
798             <xs:element name="dateDisplayDate" type="xs:string"/>\r
799             <xs:element name="dateAssociation" type="xs:string"/>\r
800             <xs:element name="dateEarliestSingleYear" type="xs:integer"/>\r
801             <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>\r
802             <xs:element name="dateEarliestSingleDay" type="xs:integer"/>\r
803             <xs:element name="dateEarliestSingleEra" type="xs:string"/>\r
804             <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>\r
805             <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>\r
806             <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>\r
807             <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>\r
808             <xs:element name="dateLatestYear" type="xs:integer"/>\r
809             <xs:element name="dateLatestMonth" type="xs:integer"/>\r
810             <xs:element name="dateLatestDay" type="xs:integer"/>\r
811             <xs:element name="dateLatestEra" type="xs:string"/>\r
812             <xs:element name="dateLatestCertainty" type="xs:string"/>\r
813             <xs:element name="dateLatestQualifier" type="xs:string"/>\r
814             <xs:element name="dateLatestQualifierValue" type="xs:integer"/>\r
815             <xs:element name="dateLatestQualifierUnit" type="xs:string"/>\r
816             <xs:element name="datePeriod" type="xs:string"/>\r
817             <xs:element name="dateNote" type="xs:string"/>\r
818             <xs:element name="dateEarliestScalarValue" type="xs:date"/>\r
819             <xs:element name="dateLatestScalarValue" type="xs:date"/>\r
820             <xs:element name="scalarValuesComputed" type="xs:boolean"/>\r
821         </xs:sequence>\r
822     </xs:complexType>\r
823 \r
824 </xs:schema>\r