Merge remote-tracking branch 'origin/new/bug_7178'
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / cataloguing / value_builder / marc21_field_CF.xsd
1 <?xml version="1.0"?>
2 <xs:schema xmlns="http://koha-community.org" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://koha-community.org" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.1">
3   <xs:annotation>
4     <xs:documentation>Control field plugin type of materials schema</xs:documentation>
5   </xs:annotation>
6
7
8   <xs:element name="Tagfield" type="TagfieldType" nillable="false">
9     <xs:annotation>
10       <xs:documentation>Element indicating the control field</xs:documentation>
11     </xs:annotation>
12   </xs:element>
13
14
15   <xs:complexType name="TagfieldType">
16     <xs:sequence minOccurs="1" maxOccurs="unbounded">
17       <xs:element name="Material" type="MaterialType"/>
18     </xs:sequence>
19     <xs:attribute name="tag" type="controltagDataType" use="required"/>
20   </xs:complexType>
21
22
23   <xs:simpleType name="controltagDataType">
24     <xs:restriction base="xs:string">
25       <xs:whiteSpace value="collapse"/>
26       <xs:pattern value="00[1-9A-Za-z]{1}"/>
27     </xs:restriction>
28   </xs:simpleType>
29
30
31   <xs:complexType name="MaterialType">
32     <xs:sequence minOccurs="1" maxOccurs="unbounded">
33       <xs:element name="Position" type="PositionType"/>
34     </xs:sequence>
35     <xs:attribute name="id" type="idDataType" use="required"/>
36     <xs:attribute name="name" type="xs:string" use="required"/>
37     <xs:attribute name="description" type="xs:string" use="required"/>
38   </xs:complexType>
39
40
41   <xs:simpleType name="idDataType">
42     <xs:restriction base="xs:string">
43       <xs:whiteSpace value="collapse"/>
44       <xs:enumeration value="BKS"/>
45       <xs:enumeration value="CF"/>
46       <xs:enumeration value="MP"/>
47       <xs:enumeration value="MU"/>
48       <xs:enumeration value="CR"/>
49       <xs:enumeration value="VM"/>
50       <xs:enumeration value="MX"/>
51     </xs:restriction>
52   </xs:simpleType>
53
54
55   <xs:complexType name="PositionType">
56     <xs:sequence minOccurs="0" maxOccurs="unbounded">
57       <xs:element name="Value" type="ValueType"/>
58     </xs:sequence>
59     <xs:attribute name="pos" type="posDataType" use="required"/>
60     <xs:attribute name="url" type="xs:anyURI" use="optional"/>
61     <xs:attribute name="urltext" type="xs:string" use="optional"/>
62     <xs:attribute name="name" type="xs:string" use="required"/>
63     <xs:attribute name="description" type="xs:string" use="required"/>
64   </xs:complexType>
65
66
67   <xs:simpleType name="posDataType">
68     <xs:restriction base="xs:string">
69       <xs:whiteSpace value="collapse"/>
70       <xs:pattern value="[0-9]+(-[0-9]+)?"/>
71     </xs:restriction>
72   </xs:simpleType>
73
74
75   <xs:complexType name="ValueType">
76     <xs:simpleContent>
77       <xs:extension base="xs:string">
78         <xs:attribute name="description" type="xs:string" />
79       </xs:extension>
80     </xs:simpleContent>
81   </xs:complexType>
82
83 </xs:schema>