1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
\r
4 CollectionObject schema (XSD)
\r
6 Entity : CollectionObject
\r
8 Used for: Nuxeo EP core document type
\r
10 $LastChangedRevision$
\r
15 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
\r
16 xmlns:ns="http://collectionspace.org/collectionobject/"
\r
17 xmlns="http://collectionspace.org/collectionobject/"
\r
18 targetNamespace="http://collectionspace.org/collectionobject/" version="0.1">
\r
20 <xs:element name="remNumber" type="ns:otherNumber"/>
\r
22 <!-- Object identification information -->
\r
23 <xs:element name="objectNumber" type="xs:string"/>
\r
24 <xs:element name="otherNumberList" type="ns:otherNumberList"/>
\r
26 <!-- Remove these two elements when the App/UI layer is using -->
\r
27 <!-- the new repeatable 'otherNumbers' field: -->
\r
28 <xs:element name="otherNumber" type="xs:string"/>
\r
29 <xs:element name="otherNumberType" type="xs:string"/>
\r
31 <xs:element name="briefDescriptions" type="xs:string">
\r
34 <xs:element name="briefDescription" type="xs:string"
\r
35 minOccurs="0" maxOccurs="unbounded"/>
\r
39 <xs:element name="comments">
\r
42 <xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
46 <xs:element name="distinguishingFeatures" type="xs:string"/>
\r
47 <xs:element name="numberOfObjects" type="xs:string"/>
\r
48 <xs:element name="objectNameList" type="ns:objectNameList"/>
\r
50 <xs:element name="responsibleDepartments">
\r
53 <xs:element name="responsibleDepartment" type="xs:string"
\r
54 minOccurs="0" maxOccurs="unbounded"/>
\r
58 <xs:element name="collection" type="xs:string"/>
\r
60 <!-- FIXME Start of Title repeatable group -->
\r
61 <xs:element name="title" type="xs:string"/>
\r
62 <xs:element name="titleLanguage" type="xs:string"/>
\r
63 <xs:element name="titleTranslation" type="xs:string"/>
\r
64 <!-- FIXME [1.0 alpha] Need to add titleTranslationLanguage field here -->
\r
65 <xs:element name="titleType" type="xs:string"/>
\r
66 <!-- FIXME End of Title repeatable group -->
\r
68 <xs:element name="recordStatus" type="xs:string"/>
\r
70 <!-- Object Description Information -->
\r
71 <xs:element name="age" type="xs:string"/>
\r
72 <xs:element name="ageQualifier" type="xs:string"/>
\r
73 <xs:element name="ageUnit" type="xs:string"/>
\r
74 <xs:element name="colors">
\r
77 <xs:element name="color" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
81 <xs:element name="contentActivities">
\r
84 <xs:element name="contentActivity" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
88 <xs:element name="contentConcepts">
\r
91 <xs:element name="contentConcept" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
95 <!-- Note: Penelope's repeatability spreadsheet identifies a Content Date -->
\r
96 <!-- repeatable group, containing contentDate and dateAssociation fields. -->
\r
97 <!-- Did not find the dateAssociation field in the wiki schemas, however. -->
\r
98 <!-- contentDate is itself a structured date field, containing a dateAssociation -->
\r
99 <!-- field, so perhaps this may merely be a product of some confusion. -->
\r
100 <xs:element name="contentDate" type="xs:string"/>
\r
101 <xs:element name="contentDescription" type="xs:string"/>
\r
103 <!-- FIXME Start of Content event name repeatable group -->
\r
104 <xs:element name="contentEventName" type="xs:string"/>
\r
105 <xs:element name="contentEventNameType" type="xs:string"/>
\r
106 <!-- FIXME End of Content event name repeatable group -->
\r
108 <xs:element name="contentNote" type="xs:string"/>
\r
109 <xs:element name="contentLanguages">
\r
112 <xs:element name="contentLanguage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
117 <!-- FIXME Start of Content event name repeatable group -->
\r
118 <xs:element name="contentObject" type="xs:string"/>
\r
119 <xs:element name="contentObjectType" type="xs:string"/>
\r
120 <!-- FIXME End of Content event name repeatable group -->
\r
122 <xs:element name="contentOrganizations">
\r
125 <xs:element name="contentOrganization" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
130 <!-- FIXME Start of Content other group -->
\r
131 <xs:element name="contentOther" type="xs:string"/>
\r
132 <xs:element name="contentOtherType" type="xs:string"/>
\r
133 <!-- FIXME End of Content other group -->
\r
135 <xs:element name="contentPeoples">
\r
138 <xs:element name="contentPeople" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
142 <xs:element name="contentPersons">
\r
145 <xs:element name="contentPerson" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
149 <xs:element name="contentPlaces">
\r
152 <xs:element name="contentPlace" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
157 <!-- FIXME [1.0 alpha] contentPosition field must be made repeatable. -->
\r
158 <xs:element name="contentPosition" type="xs:string"/>
\r
160 <xs:element name="contentScripts">
\r
163 <xs:element name="contentScript" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
167 <xs:element name="copyNumber" type="xs:string"/>
\r
169 <!-- FIXME [1.0 alpha] Need to add dimensionSummary field here -->
\r
170 <xs:element name="dimensions" type="ns:dimensionList"/>
\r
172 <!-- FIXME Remove these six elements when the App/UI layer is -->
\r
173 <!-- using the new repeatable 'dimensions' field: -->
\r
174 <xs:element name="dimension" type="xs:string"/>
\r
175 <xs:element name="dimensionMeasuredPart" type="xs:string"/>
\r
176 <xs:element name="dimensionMeasurementUnit" type="xs:string"/>
\r
177 <xs:element name="dimensionValue" type="xs:string"/>
\r
178 <xs:element name="dimensionValueDate" type="xs:string"/>
\r
179 <xs:element name="dimensionValueQualifier" type="xs:string"/>
\r
181 <xs:element name="editionNumber" type="xs:string"/>
\r
182 <xs:element name="forms">
\r
185 <xs:element name="form" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
190 <!-- Object description Inscription - Content Information -->
\r
192 <!-- FIXME Start of Inscription content (or Textual inscription) repeatable group -->
\r
193 <!-- FIXME Consider whether changes to field names below are required -->
\r
194 <!-- in response to the renaming of this group to Textual inscription -->
\r
195 <xs:element name="inscriptionContent" type="xs:string"/>
\r
196 <xs:element name="inscriptionContentInscriber" type="xs:string"/>
\r
197 <xs:element name="inscriptionContentDate" type="xs:string"/>
\r
198 <xs:element name="inscriptionContentInterpretation" type="xs:string"/>
\r
199 <xs:element name="inscriptionContentLanguage" type="xs:string"/>
\r
200 <xs:element name="inscriptionContentMethod" type="xs:string"/>
\r
201 <xs:element name="inscriptionContentPosition" type="xs:string"/>
\r
202 <xs:element name="inscriptionContentScript" type="xs:string"/>
\r
203 <xs:element name="inscriptionContentTranslation" type="xs:string"/>
\r
204 <xs:element name="inscriptionContentTransliteration" type="xs:string"/>
\r
205 <xs:element name="inscriptionContentType" type="xs:string"/>
\r
206 <!-- FIXME End of Inscription content (or Textual inscription) repeatable group -->
\r
208 <!-- Object Description Inscription - Description Information -->
\r
210 <!-- FIXME Start of Inscription description (or Non-textual inscription) repeatable group -->
\r
211 <!-- FIXME Consider whether changes to field names below are required -->
\r
212 <!-- in response to the renaming of this group to Non-textual inscription -->
\r
213 <xs:element name="inscriptionDescription" type="xs:string"/>
\r
214 <xs:element name="inscriptionDescriptionInscriber" type="xs:string"/>
\r
215 <xs:element name="inscriptionDescriptionDate" type="xs:string"/>
\r
216 <xs:element name="inscriptionDescriptionInterpretation" type="xs:string"/>
\r
217 <xs:element name="inscriptionDescriptionMethod" type="xs:string"/>
\r
218 <xs:element name="inscriptionDescriptionPosition" type="xs:string"/>
\r
219 <xs:element name="inscriptionDescriptionType" type="xs:string"/>
\r
220 <!-- FIXME End of Inscription description (or Non-textual inscription) repeatable group -->
\r
222 <!-- Object Description Material Information -->
\r
224 <!-- FIXME Start of Material repeatable group -->
\r
225 <xs:element name="material" type="xs:string"/>
\r
226 <xs:element name="materialComponent" type="xs:string"/>
\r
227 <xs:element name="materialComponentNote" type="xs:string"/>
\r
228 <xs:element name="materialName" type="xs:string"/>
\r
229 <xs:element name="materialSource" type="xs:string"/>
\r
230 <!-- FIXME End of Material repeatable group -->
\r
232 <!-- Misc Object Description Information -->
\r
233 <xs:element name="objectStatus" type="xs:string"/>
\r
234 <xs:element name="phase" type="xs:string"/>
\r
235 <xs:element name="physicalDescription" type="xs:string"/>
\r
236 <xs:element name="sex" type="xs:string"/>
\r
237 <xs:element name="styles">
\r
240 <xs:element name="style" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
245 <!-- FIXME Start of Technical attribute repeatable group -->
\r
246 <xs:element name="technicalAttribute" type="xs:string"/>
\r
247 <xs:element name="technicalAttributeMeasurement" type="xs:string"/>
\r
248 <xs:element name="technicalAttributeMeasurementUnit" type="xs:string"/>
\r
249 <!-- FIXME End of Technical attribute repeatable group -->
\r
251 <!-- FIXME Start of Object component repeatable group -->
\r
252 <xs:element name="objectComponentName" type="xs:string"/>
\r
253 <xs:element name="objectComponentInformation" type="xs:string"/>
\r
254 <!-- FIXME End of Object component repeatable group -->
\r
256 <!-- Object Production Information -->
\r
258 <!-- FIXME [1.0 alpha] objectProductionDate field must be made repeatable -->
\r
259 <xs:element name="objectProductionDate" type="xs:string"/>
\r
261 <xs:element name="objectProductionNote" type="xs:string"/>
\r
263 <!-- FIXME Start of Object production organization repeatable group -->
\r
264 <xs:element name="objectProductionOrganization" type="xs:string"/>
\r
265 <xs:element name="objectProductionOrganizationRole" type="xs:string"/>
\r
266 <!-- FIXME End of Object production organization repeatable group -->
\r
268 <!-- FIXME Start of Object production people repeatable group -->
\r
269 <xs:element name="objectProductionPeople" type="xs:string"/>
\r
270 <xs:element name="objectProductionPeopleRole" type="xs:string"/>
\r
271 <!-- FIXME End of Object production people repeatable group -->
\r
273 <!-- FIXME Start of Object production person repeatable group -->
\r
274 <xs:element name="objectProductionPerson" type="xs:string"/>
\r
275 <xs:element name="objectProductionPersonRole" type="xs:string"/>
\r
276 <!-- FIXME End of Object production person repeatable group -->
\r
278 <!-- FIXME Start of Object production place repeatable group -->
\r
279 <xs:element name="objectProductionPlace" type="xs:string"/>
\r
280 <xs:element name="objectProductionPlaceRole" type="xs:string"/>
\r
281 <!-- FIXME End of Object production place repeatable group -->
\r
283 <!-- FIXME [1.0 alpha] objectProductionDate field must be made repeatable -->
\r
284 <xs:element name="objectProductionReason" type="xs:string"/>
\r
286 <!-- FIXME Start of Technique repeatable group -->
\r
287 <xs:element name="technique" type="xs:string"/>
\r
288 <xs:element name="techniqueType" type="xs:string"/>
\r
289 <!-- FIXME End of Technique repeatable group -->
\r
291 <!-- Object History and Association Information - Association -->
\r
293 <!-- In the following field names, "assoc" is an abbreviation for "associated". -->
\r
294 <!-- See the comments to CSPACE-2501 for a discussion of the database identifier -->
\r
295 <!-- length limit that made this abbreviation necessary. -->
\r
297 <!-- FIXME Start of Associated activity repeatable group -->
\r
298 <xs:element name="assocActivity" type="xs:string"/>
\r
299 <xs:element name="assocActivityNote" type="xs:string"/>
\r
300 <!-- FIXME End of Associated activity repeatable group -->
\r
302 <!-- FIXME [1.0 alpha] Need to add assocConceptNote field here. -->
\r
303 <!-- FIXME Convert to Associated concept repeatable group -->
\r
304 <xs:element name="assocConcepts">
\r
307 <xs:element name="assocConcept" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
308 <!-- FIXME Need to move assocConceptNote field here, after conversion. -->
\r
313 <!-- FIXME [1.0 Alpha] Need to add assocCulturalContextNote field here. -->
\r
314 <!-- FIXME rename fields, if not over CSPACE-2501 length limit, -->
\r
315 <!-- to assocCulturalAffinities, assocCulturalAffinity -->
\r
316 <!-- FIXME Convert to Associated cultural contexts repeatable group -->
\r
317 <xs:element name="assocCulturalContexts">
\r
320 <xs:element name="assocCulturalContext" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
321 <!-- FIXME Need to move assocCulturalContextNote field here, after conversion. -->
\r
326 <!-- FIXME [1.0 alpha] Need to add assocDateNote field here. -->
\r
327 <!-- FIXME Convert to Associated date repeatable group -->
\r
328 <xs:element name="assocDate" type="xs:string"/>
\r
329 <!-- FIXME Need to move assocDateNote field here, after conversion. -->
\r
331 <!-- FIXME Start of Associated event repeatable group -->
\r
332 <xs:element name="assocEventName" type="xs:string"/>
\r
333 <xs:element name="assocEventNameType" type="xs:string"/>
\r
334 <!-- FIXME [1.0 alpha] Need to add assocEventNote field here. -->
\r
335 <xs:element name="assocEventOrganizations">
\r
338 <xs:element name="assocEventOrganization" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
342 <xs:element name="assocEventPeoples">
\r
345 <xs:element name="assocEventPeople" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
349 <xs:element name="assocEventPersons">
\r
352 <xs:element name="assocEventPerson" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
356 <xs:element name="assocEventPlaces">
\r
359 <xs:element name="assocEventPlace" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
363 <!-- FIXME End of Associated event repeatable group -->
\r
365 <!-- FIXME Start of Associated object repeatable group -->
\r
366 <xs:element name="assocObject" type="xs:string"/>
\r
367 <xs:element name="assocObjectType" type="xs:string"/>
\r
368 <!-- FIXME End of Associated object repeatable group -->
\r
370 <!-- FIXME [1.0 alpha] Need to add assocOrganizationNote field here. -->
\r
371 <!-- FIXME Convert to Associated organizations repeatable group -->
\r
372 <xs:element name="assocOrganizations">
\r
375 <xs:element name="assocOrganization" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
376 <!-- FIXME Need to move assocOrganizationNote field here, after conversion. -->
\r
381 <!-- FIXME [1.0 alpha] Need to add assocPeopleNote field here. -->
\r
382 <!-- FIXME Convert to Associated people repeatable group -->
\r
383 <xs:element name="assocPeoples">
\r
386 <xs:element name="assocPeople" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
387 <!-- FIXME Need to move assocPeopleNote field here, after conversion. -->
\r
392 <!-- FIXME [1.0 alpha] Need to add assocPersonNote field here. -->
\r
393 <!-- FIXME Convert to Associated person repeatable group -->
\r
394 <xs:element name="assocPersons">
\r
397 <xs:element name="assocPerson" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
401 <!-- FIXME Need to move assocPersonNote field here, after conversion. -->
\r
403 <xs:element name="assocPlaces">
\r
406 <xs:element name="assocPlace" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
411 <!-- FIXME [1.0 alpha] Remove the associationNote field. -->
\r
412 <xs:element name="associationNote" type="xs:string"/>
\r
413 <!-- FIXME [1.0 alpha] Remove the associationType field. -->
\r
414 <xs:element name="associationType" type="xs:string"/>
\r
416 <!-- Object History and Association Information - History -->
\r
417 <xs:element name="objectHistoryNote" type="xs:string"/>
\r
419 <!-- Note: Erin has proposed the creation of a repeatable Ownership group -->
\r
420 <!-- that may wrap multiple fields below, TBD -->
\r
421 <xs:element name="owners">
\r
424 <xs:element name="owner" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
429 <xs:element name="ownershipAccess" type="xs:string"/>
\r
430 <xs:element name="ownershipCategory" type="xs:string"/>
\r
432 <!-- FIXME Make into a repeatable, structured date ("date units of information") -->
\r
433 <!-- field, when structured dates are introduced -->
\r
434 <xs:element name="ownershipDates" type="xs:string"/>
\r
436 <xs:element name="ownershipExchangeMethod" type="xs:string"/>
\r
437 <xs:element name="ownershipExchangeNote" type="xs:string"/>
\r
438 <xs:element name="ownershipExchangePriceCurrency" type="xs:string"/>
\r
439 <xs:element name="ownershipExchangePriceValue" type="xs:string"/>
\r
440 <xs:element name="ownershipPlace" type="xs:string"/>
\r
442 <!-- FIXME Start of Usage repeatable group -->
\r
443 <xs:element name="usage" type="xs:string"/>
\r
444 <xs:element name="usageNote" type="xs:string"/>
\r
445 <!-- FIXME End of Usage repeatable group -->
\r
447 <!-- Object Owner's Contribution Information -->
\r
448 <xs:element name="ownersPersonalExperience" type="xs:string"/>
\r
449 <xs:element name="ownersPersonalResponse" type="xs:string"/>
\r
450 <!-- FIXME [1.0 alpha] ownersReference field must be made repeatable. -->
\r
451 <xs:element name="ownersReference" type="xs:string"/>
\r
452 <xs:element name="ownersContributionNote" type="xs:string"/>
\r
454 <!-- Object Viewers Contribution Information -->
\r
455 <xs:element name="viewersRole" type="xs:string"/>
\r
456 <xs:element name="viewersPersonalExperience" type="xs:string"/>
\r
457 <xs:element name="viewersPersonalResponse" type="xs:string"/>
\r
458 <!-- FIXME [1.0 alpha] viewersReference field must be made repeatable. -->
\r
459 <xs:element name="viewersReference" type="xs:string"/>
\r
460 <xs:element name="viewersContributionNote" type="xs:string"/>
\r
462 <!-- Reference Information -->
\r
464 <!-- FIXME [1.0 alpha] reference field must be made repeatable. -->
\r
465 <xs:element name="reference" type="xs:string"/>
\r
467 <xs:element name="catalogNumber" type="xs:string"/>
\r
469 <!-- Object Collection Information Group -->
\r
470 <xs:element name="fieldCollectionDate" type="xs:string"/>
\r
471 <xs:element name="fieldCollectionMethods">
\r
474 <xs:element name="fieldCollectionMethod" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
478 <xs:element name="fieldCollectionNote" type="xs:string"/>
\r
479 <xs:element name="fieldCollectionNumber" type="xs:string"/>
\r
480 <xs:element name="fieldCollectionPlace" type="xs:string"/>
\r
481 <xs:element name="fieldCollectionSources">
\r
484 <xs:element name="fieldCollectionSource" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
488 <xs:element name="fieldCollectors">
\r
491 <xs:element name="fieldCollector" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
\r
495 <xs:element name="fieldCollectionEventName" type="xs:string"/>
\r
497 <xs:complexType name="otherNumberList">
\r
499 <xs:element name="otherNumber" type="ns:otherNumber" minOccurs="0"
\r
500 maxOccurs="unbounded"/>
\r
504 <xs:complexType name="otherNumber">
\r
506 <xs:element name="numberValue" type="xs:string"/>
\r
507 <xs:element name="numberType" type="xs:string"/>
\r
511 <xs:complexType name="objectNameList">
\r
513 <xs:element name="objectNameGroup" type="objectNameGroup" minOccurs="0"
\r
514 maxOccurs="unbounded"/>
\r
518 <xs:complexType name="objectNameGroup">
\r
520 <xs:element name="objectName" type="xs:string"/>
\r
521 <xs:element name="objectNameCurrency" type="xs:string"/>
\r
522 <xs:element name="objectNameLevel" type="xs:string"/>
\r
523 <xs:element name="objectNameNote" type="xs:string"/>
\r
524 <xs:element name="objectNameSystem" type="xs:string"/>
\r
525 <xs:element name="objectNameType" type="xs:string"/>
\r
526 <xs:element name="objectNameLanguage" type="xs:string"/>
\r
530 <xs:complexType name="dimensionList">
\r
532 <xs:element name="dimensionGroup" type="dimensionGroup" minOccurs="0"
\r
533 maxOccurs="unbounded"/>
\r
537 <xs:complexType name="dimensionGroup">
\r
539 <xs:element name="dimension" type="xs:string"/>
\r
540 <xs:element name="measuredPart" type="xs:string"/>
\r
541 <xs:element name="measurementUnit" type="xs:string"/>
\r
542 <xs:element name="value" type="xs:string"/>
\r
543 <xs:element name="valueDate" type="xs:string"/>
\r
544 <xs:element name="valueQualifier" type="xs:string"/>
\r
548 <!-- Object Description Date Information -->
\r
549 <!-- This appears to be a placeholder structured date -->
\r
550 <xs:element name="dateAssociation" type="xs:string"/>
\r
551 <xs:element name="dateEarliestSingle" type="xs:string"/>
\r
552 <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
\r
553 <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
\r
554 <xs:element name="dateLatest" type="xs:string"/>
\r
555 <xs:element name="dateLatestCertainty" type="xs:string"/>
\r
556 <xs:element name="dateLatestQualifier" type="xs:string"/>
\r
557 <xs:element name="datePeriod" type="xs:string"/>
\r
558 <xs:element name="dateText" type="xs:string"/>
\r