Revision 9581
Added by Jing Tao over 8 years ago
lib/schema/isotc211-noaa/xlink/xlinks.xsd | ||
---|---|---|
1 |
<?xml version='1.0' encoding='UTF-8'?> |
|
2 |
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3.org/1999/xlink" xmlns:xlink="http://www.w3.org/1999/xlink"> |
|
3 |
|
|
4 |
<xs:annotation> |
|
5 |
<xs:documentation>This schema document provides attribute declarations and |
|
6 |
attribute group, complex type and simple type definitions which can be used in |
|
7 |
the construction of user schemas to define the structure of particular linking |
|
8 |
constructs, e.g. |
|
9 |
<![CDATA[ |
|
10 |
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" |
|
11 |
xmlns:xl="http://www.w3.org/1999/xlink"> |
|
12 |
|
|
13 |
<xs:import namespace="http://www.w3.org/1999/xlink" |
|
14 |
location="http://www.w3.org/1999/xlink.xsd"> |
|
15 |
|
|
16 |
<xs:element name="mySimple"> |
|
17 |
<xs:complexType> |
|
18 |
... |
|
19 |
<xs:attributeGroup ref="xl:simpleAttrs"/> |
|
20 |
... |
|
21 |
</xs:complexType> |
|
22 |
</xs:element> |
|
23 |
... |
|
24 |
</xs:schema>]]></xs:documentation> |
|
25 |
</xs:annotation> |
|
26 |
|
|
27 |
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/> |
|
28 |
|
|
29 |
<xs:attribute name="type" type="xlink:typeType"/> |
|
30 |
|
|
31 |
<xs:simpleType name="typeType"> |
|
32 |
<xs:restriction base="xs:token"> |
|
33 |
<xs:enumeration value="simple"/> |
|
34 |
<xs:enumeration value="extended"/> |
|
35 |
<xs:enumeration value="title"/> |
|
36 |
<xs:enumeration value="resource"/> |
|
37 |
<xs:enumeration value="locator"/> |
|
38 |
<xs:enumeration value="arc"/> |
|
39 |
</xs:restriction> |
|
40 |
</xs:simpleType> |
|
41 |
|
|
42 |
<xs:attribute name="href" type="xlink:hrefType"/> |
|
43 |
|
|
44 |
<xs:simpleType name="hrefType"> |
|
45 |
<xs:restriction base="xs:anyURI"/> |
|
46 |
</xs:simpleType> |
|
47 |
|
|
48 |
<xs:attribute name="role" type="xlink:roleType"/> |
|
49 |
|
|
50 |
<xs:simpleType name="roleType"> |
|
51 |
<xs:restriction base="xs:anyURI"> |
|
52 |
<xs:minLength value="1"/> |
|
53 |
</xs:restriction> |
|
54 |
</xs:simpleType> |
|
55 |
|
|
56 |
<xs:attribute name="arcrole" type="xlink:arcroleType"/> |
|
57 |
|
|
58 |
<xs:simpleType name="arcroleType"> |
|
59 |
<xs:restriction base="xs:anyURI"> |
|
60 |
<xs:minLength value="1"/> |
|
61 |
</xs:restriction> |
|
62 |
</xs:simpleType> |
|
63 |
|
|
64 |
<xs:attribute name="title" type="xlink:titleAttrType"/> |
|
65 |
|
|
66 |
<xs:simpleType name="titleAttrType"> |
|
67 |
<xs:restriction base="xs:string"/> |
|
68 |
</xs:simpleType> |
|
69 |
|
|
70 |
<xs:attribute name="show" type="xlink:showType"/> |
|
71 |
|
|
72 |
<xs:simpleType name="showType"> |
|
73 |
<xs:restriction base="xs:token"> |
|
74 |
<xs:enumeration value="new"/> |
|
75 |
<xs:enumeration value="replace"/> |
|
76 |
<xs:enumeration value="embed"/> |
|
77 |
<xs:enumeration value="other"/> |
|
78 |
<xs:enumeration value="none"/> |
|
79 |
</xs:restriction> |
|
80 |
</xs:simpleType> |
|
81 |
|
|
82 |
<xs:attribute name="actuate" type="xlink:actuateType"/> |
|
83 |
|
|
84 |
<xs:simpleType name="actuateType"> |
|
85 |
<xs:restriction base="xs:token"> |
|
86 |
<xs:enumeration value="onLoad"/> |
|
87 |
<xs:enumeration value="onRequest"/> |
|
88 |
<xs:enumeration value="other"/> |
|
89 |
<xs:enumeration value="none"/> |
|
90 |
</xs:restriction> |
|
91 |
</xs:simpleType> |
|
92 |
|
|
93 |
<xs:attribute name="label" type="xlink:labelType"/> |
|
94 |
|
|
95 |
<xs:simpleType name="labelType"> |
|
96 |
<xs:restriction base="xs:NCName"/> |
|
97 |
</xs:simpleType> |
|
98 |
|
|
99 |
<xs:attribute name="from" type="xlink:fromType"/> |
|
100 |
|
|
101 |
<xs:simpleType name="fromType"> |
|
102 |
<xs:restriction base="xs:NCName"/> |
|
103 |
</xs:simpleType> |
|
104 |
|
|
105 |
<xs:attribute name="to" type="xlink:toType"/> |
|
106 |
|
|
107 |
<xs:simpleType name="toType"> |
|
108 |
<xs:restriction base="xs:NCName"/> |
|
109 |
</xs:simpleType> |
|
110 |
|
|
111 |
<xs:attributeGroup name="simpleAttrs"> |
|
112 |
<xs:attribute ref="xlink:type" fixed="simple"/> |
|
113 |
<xs:attribute ref="xlink:href"/> |
|
114 |
<xs:attribute ref="xlink:role"/> |
|
115 |
<xs:attribute ref="xlink:arcrole"/> |
|
116 |
<xs:attribute ref="xlink:title"/> |
|
117 |
<xs:attribute ref="xlink:show"/> |
|
118 |
<xs:attribute ref="xlink:actuate"/> |
|
119 |
</xs:attributeGroup> |
|
120 |
|
|
121 |
<xs:group name="simpleModel"> |
|
122 |
<xs:sequence> |
|
123 |
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
|
124 |
</xs:sequence> |
|
125 |
</xs:group> |
|
126 |
|
|
127 |
<xs:complexType mixed="true" name="simple"> |
|
128 |
<xs:annotation> |
|
129 |
<xs:documentation> |
|
130 |
Intended for use as the type of user-declared elements to make them |
|
131 |
simple links. |
|
132 |
</xs:documentation> |
|
133 |
</xs:annotation> |
|
134 |
<xs:group ref="xlink:simpleModel"/> |
|
135 |
<xs:attributeGroup ref="xlink:simpleAttrs"/> |
|
136 |
</xs:complexType> |
|
137 |
|
|
138 |
<xs:attributeGroup name="extendedAttrs"> |
|
139 |
<xs:attribute ref="xlink:type" fixed="extended" use="required"/> |
|
140 |
<xs:attribute ref="xlink:role"/> |
|
141 |
<xs:attribute ref="xlink:title"/> |
|
142 |
</xs:attributeGroup> |
|
143 |
|
|
144 |
<xs:group name="extendedModel"> |
|
145 |
<xs:choice> |
|
146 |
<xs:element ref="xlink:title"/> |
|
147 |
<xs:element ref="xlink:resource"/> |
|
148 |
<xs:element ref="xlink:locator"/> |
|
149 |
<xs:element ref="xlink:arc"/> |
|
150 |
</xs:choice> |
|
151 |
</xs:group> |
|
152 |
|
|
153 |
<xs:complexType name="extended"> |
|
154 |
<xs:annotation> |
|
155 |
<xs:documentation> |
|
156 |
Intended for use as the type of user-declared elements to make them |
|
157 |
extended links. |
|
158 |
Note that the elements referenced in the content model are all abstract. |
|
159 |
The intention is that by simply declaring elements with these as their |
|
160 |
substitutionGroup, all the right things will happen. |
|
161 |
</xs:documentation> |
|
162 |
</xs:annotation> |
|
163 |
<xs:group ref="xlink:extendedModel" minOccurs="0" maxOccurs="unbounded"/> |
|
164 |
<xs:attributeGroup ref="xlink:extendedAttrs"/> |
|
165 |
</xs:complexType> |
|
166 |
|
|
167 |
<xs:element name="title" type="xlink:titleEltType" abstract="true"/> |
|
168 |
|
|
169 |
<xs:attributeGroup name="titleAttrs"> |
|
170 |
<xs:attribute ref="xlink:type" fixed="title" use="required"/> |
|
171 |
<xs:attribute ref="xml:lang"> |
|
172 |
<xs:annotation> |
|
173 |
<xs:documentation> |
|
174 |
xml:lang is not required, but provides much of the |
|
175 |
motivation for title elements in addition to attributes, and so |
|
176 |
is provided here for convenience. |
|
177 |
</xs:documentation> |
|
178 |
</xs:annotation> |
|
179 |
</xs:attribute> |
|
180 |
</xs:attributeGroup> |
|
181 |
|
|
182 |
<xs:group name="titleModel"> |
|
183 |
<xs:sequence> |
|
184 |
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
|
185 |
</xs:sequence> |
|
186 |
</xs:group> |
|
187 |
|
|
188 |
<xs:complexType mixed="true" name="titleEltType"> |
|
189 |
<xs:group ref="xlink:titleModel"/> |
|
190 |
<xs:attributeGroup ref="xlink:titleAttrs"/> |
|
191 |
</xs:complexType> |
|
192 |
|
|
193 |
<xs:element name="resource" type="xlink:resourceType" abstract="true"/> |
|
194 |
|
|
195 |
<xs:attributeGroup name="resourceAttrs"> |
|
196 |
<xs:attribute ref="xlink:type" fixed="resource" use="required"/> |
|
197 |
<xs:attribute ref="xlink:role"/> |
|
198 |
<xs:attribute ref="xlink:title"/> |
|
199 |
<xs:attribute ref="xlink:label"/> |
|
200 |
</xs:attributeGroup> |
|
201 |
|
|
202 |
<xs:group name="resourceModel"> |
|
203 |
<xs:sequence> |
|
204 |
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> |
|
205 |
</xs:sequence> |
|
206 |
</xs:group> |
|
207 |
|
|
208 |
<xs:complexType mixed="true" name="resourceType"> |
|
209 |
<xs:group ref="xlink:resourceModel"/> |
|
210 |
<xs:attributeGroup ref="xlink:resourceAttrs"/> |
|
211 |
</xs:complexType> |
|
212 |
|
|
213 |
<xs:element name="locator" type="xlink:locatorType" abstract="true"/> |
|
214 |
|
|
215 |
<xs:attributeGroup name="locatorAttrs"> |
|
216 |
<xs:attribute ref="xlink:type" fixed="locator" use="required"/> |
|
217 |
<xs:attribute ref="xlink:href" use="required"/> |
|
218 |
<xs:attribute ref="xlink:role"/> |
|
219 |
<xs:attribute ref="xlink:title"/> |
|
220 |
<xs:attribute ref="xlink:label"> |
|
221 |
<xs:annotation> |
|
222 |
<xs:documentation> |
|
223 |
label is not required, but locators have no particular |
|
224 |
XLink function if they are not labeled. |
|
225 |
</xs:documentation> |
|
226 |
</xs:annotation> |
|
227 |
</xs:attribute> |
|
228 |
</xs:attributeGroup> |
|
229 |
|
|
230 |
<xs:group name="locatorModel"> |
|
231 |
<xs:sequence> |
|
232 |
<xs:element ref="xlink:title" minOccurs="0" maxOccurs="unbounded"/> |
|
233 |
</xs:sequence> |
|
234 |
</xs:group> |
|
235 |
|
|
236 |
<xs:complexType name="locatorType"> |
|
237 |
<xs:group ref="xlink:locatorModel"/> |
|
238 |
<xs:attributeGroup ref="xlink:locatorAttrs"/> |
|
239 |
</xs:complexType> |
|
240 |
|
|
241 |
<xs:element name="arc" type="xlink:arcType" abstract="true"/> |
|
242 |
|
|
243 |
<xs:attributeGroup name="arcAttrs"> |
|
244 |
<xs:attribute ref="xlink:type" fixed="arc" use="required"/> |
|
245 |
<xs:attribute ref="xlink:arcrole"/> |
|
246 |
<xs:attribute ref="xlink:title"/> |
|
247 |
<xs:attribute ref="xlink:show"/> |
|
248 |
<xs:attribute ref="xlink:actuate"/> |
|
249 |
<xs:attribute ref="xlink:from"/> |
|
250 |
<xs:attribute ref="xlink:to"> |
|
251 |
<xs:annotation> |
|
252 |
<xs:documentation> |
|
253 |
from and to have default behavior when values are missing |
|
254 |
</xs:documentation> |
|
255 |
</xs:annotation> |
|
256 |
</xs:attribute> |
|
257 |
</xs:attributeGroup> |
|
258 |
|
|
259 |
<xs:group name="arcModel"> |
|
260 |
<xs:sequence> |
|
261 |
<xs:element ref="xlink:title" minOccurs="0" maxOccurs="unbounded"/> |
|
262 |
</xs:sequence> |
|
263 |
</xs:group> |
|
264 |
|
|
265 |
<xs:complexType name="arcType"> |
|
266 |
<xs:group ref="xlink:arcModel"/> |
|
267 |
<xs:attributeGroup ref="xlink:arcAttrs"/> |
|
268 |
</xs:complexType> |
|
269 |
|
|
270 |
<xs:attributeGroup name="simpleLink"> |
|
271 |
<xs:attribute name="type" type="xs:string" fixed="simple" form="qualified"/> |
|
272 |
<xs:attribute ref="xlink:href" use="optional"/> |
|
273 |
<xs:attribute ref="xlink:role" use="optional"/> |
|
274 |
<xs:attribute ref="xlink:arcrole" use="optional"/> |
|
275 |
<xs:attribute ref="xlink:title" use="optional"/> |
|
276 |
<xs:attribute ref="xlink:show" use="optional"/> |
|
277 |
<xs:attribute ref="xlink:actuate" use="optional"/> |
|
278 |
</xs:attributeGroup> |
|
279 |
<xs:attributeGroup name="extendedLink"> |
|
280 |
<xs:attribute name="type" type="xs:string" fixed="extended" form="qualified"/> |
|
281 |
<xs:attribute ref="xlink:role" use="optional"/> |
|
282 |
<xs:attribute ref="xlink:title" use="optional"/> |
|
283 |
</xs:attributeGroup> |
|
284 |
<xs:attributeGroup name="locatorLink"> |
|
285 |
<xs:attribute name="type" type="xs:string" fixed="locator" form="qualified"/> |
|
286 |
<xs:attribute ref="xlink:href" use="required"/> |
|
287 |
<xs:attribute ref="xlink:role" use="optional"/> |
|
288 |
<xs:attribute ref="xlink:title" use="optional"/> |
|
289 |
<xs:attribute ref="xlink:label" use="optional"/> |
|
290 |
</xs:attributeGroup> |
|
291 |
<xs:attributeGroup name="arcLink"> |
|
292 |
<xs:attribute name="type" type="xs:string" fixed="arc" form="qualified"/> |
|
293 |
<xs:attribute ref="xlink:arcrole" use="optional"/> |
|
294 |
<xs:attribute ref="xlink:title" use="optional"/> |
|
295 |
<xs:attribute ref="xlink:show" use="optional"/> |
|
296 |
<xs:attribute ref="xlink:actuate" use="optional"/> |
|
297 |
<xs:attribute ref="xlink:from" use="optional"/> |
|
298 |
<xs:attribute ref="xlink:to" use="optional"/> |
|
299 |
</xs:attributeGroup> |
|
300 |
<xs:attributeGroup name="resourceLink"> |
|
301 |
<xs:attribute name="type" type="xs:string" fixed="resource" form="qualified"/> |
|
302 |
<xs:attribute ref="xlink:role" use="optional"/> |
|
303 |
<xs:attribute ref="xlink:title" use="optional"/> |
|
304 |
<xs:attribute ref="xlink:label" use="optional"/> |
|
305 |
</xs:attributeGroup> |
|
306 |
<xs:attributeGroup name="titleLink"> |
|
307 |
<xs:attribute name="type" type="xs:string" fixed="title" form="qualified"/> |
|
308 |
</xs:attributeGroup> |
|
309 |
<xs:attributeGroup name="emptyLink"> |
|
310 |
<xs:attribute name="type" type="xs:string" fixed="none" form="qualified"/> |
|
311 |
</xs:attributeGroup> |
|
312 |
|
|
313 |
|
|
314 |
</xs:schema> |
|
1 |
<?xml version="1.0" encoding="UTF-8"?> |
|
2 |
<schema targetNamespace="http://www.w3.org/1999/xlink" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2001/XMLSchema" version="3.2.0"> |
|
3 |
<annotation> |
|
4 |
<appinfo source="urn:opengis:specification:gml:schema-xlinks:v3.2.0">xlinks.xsd</appinfo> |
|
5 |
<documentation>see GML 7.2</documentation> |
|
6 |
</annotation> |
|
7 |
<!-- ============================================================== |
|
8 |
global declarations |
|
9 |
=============================================================== --> |
|
10 |
<!-- locator attribute --> |
|
11 |
<attribute name="href" type="anyURI"/> |
|
12 |
<!-- semantic attributes --> |
|
13 |
<attribute name="role" type="anyURI"/> |
|
14 |
<attribute name="arcrole" type="anyURI"/> |
|
15 |
<attribute name="title" type="string"/> |
|
16 |
<!-- behavior attributes --> |
|
17 |
<attribute name="show"> |
|
18 |
<annotation> |
|
19 |
<documentation> |
|
20 |
The 'show' attribute is used to communicate the desired presentation |
|
21 |
of the ending resource on traversal from the starting resource; it's |
|
22 |
value should be treated as follows: |
|
23 |
new - load ending resource in a new window, frame, pane, or other |
|
24 |
presentation context |
|
25 |
replace - load the resource in the same window, frame, pane, or |
|
26 |
other presentation context |
|
27 |
embed - load ending resource in place of the presentation of the |
|
28 |
starting resource |
|
29 |
other - behavior is unconstrained; examine other markup in the |
|
30 |
link for hints |
|
31 |
none - behavior is unconstrained |
|
32 |
</documentation> |
|
33 |
</annotation> |
|
34 |
<simpleType> |
|
35 |
<restriction base="string"> |
|
36 |
<enumeration value="new"/> |
|
37 |
<enumeration value="replace"/> |
|
38 |
<enumeration value="embed"/> |
|
39 |
<enumeration value="other"/> |
|
40 |
<enumeration value="none"/> |
|
41 |
</restriction> |
|
42 |
</simpleType> |
|
43 |
</attribute> |
|
44 |
<attribute name="actuate"> |
|
45 |
<annotation> |
|
46 |
<documentation> |
|
47 |
The 'actuate' attribute is used to communicate the desired timing |
|
48 |
of traversal from the starting resource to the ending resource; |
|
49 |
it's value should be treated as follows: |
|
50 |
onLoad - traverse to the ending resource immediately on loading |
|
51 |
the starting resource |
|
52 |
onRequest - traverse from the starting resource to the ending |
|
53 |
resource only on a post-loading event triggered for |
|
54 |
this purpose |
|
55 |
other - behavior is unconstrained; examine other markup in link |
|
56 |
for hints |
|
57 |
none - behavior is unconstrained |
|
58 |
</documentation> |
|
59 |
</annotation> |
|
60 |
<simpleType> |
|
61 |
<restriction base="string"> |
|
62 |
<enumeration value="onLoad"/> |
|
63 |
<enumeration value="onRequest"/> |
|
64 |
<enumeration value="other"/> |
|
65 |
<enumeration value="none"/> |
|
66 |
</restriction> |
|
67 |
</simpleType> |
|
68 |
</attribute> |
|
69 |
<!-- traversal attributes --> |
|
70 |
<attribute name="label" type="string"/> |
|
71 |
<attribute name="from" type="string"/> |
|
72 |
<attribute name="to" type="string"/> |
|
73 |
<!-- ============================================================== |
|
74 |
Attributes grouped by XLink type, as specified in the W3C Recommendation |
|
75 |
============================================================== --> |
|
76 |
<attributeGroup name="simpleLink"> |
|
77 |
<attribute name="type" type="string" fixed="simple" form="qualified"/> |
|
78 |
<attribute ref="xlink:href" use="optional"/> |
|
79 |
<attribute ref="xlink:role" use="optional"/> |
|
80 |
<attribute ref="xlink:arcrole" use="optional"/> |
|
81 |
<attribute ref="xlink:title" use="optional"/> |
|
82 |
<attribute ref="xlink:show" use="optional"/> |
|
83 |
<attribute ref="xlink:actuate" use="optional"/> |
|
84 |
</attributeGroup> |
|
85 |
<attributeGroup name="extendedLink"> |
|
86 |
<attribute name="type" type="string" fixed="extended" form="qualified"/> |
|
87 |
<attribute ref="xlink:role" use="optional"/> |
|
88 |
<attribute ref="xlink:title" use="optional"/> |
|
89 |
</attributeGroup> |
|
90 |
<attributeGroup name="locatorLink"> |
|
91 |
<attribute name="type" type="string" fixed="locator" form="qualified"/> |
|
92 |
<attribute ref="xlink:href" use="required"/> |
|
93 |
<attribute ref="xlink:role" use="optional"/> |
|
94 |
<attribute ref="xlink:title" use="optional"/> |
|
95 |
<attribute ref="xlink:label" use="optional"/> |
|
96 |
</attributeGroup> |
|
97 |
<attributeGroup name="arcLink"> |
|
98 |
<attribute name="type" type="string" fixed="arc" form="qualified"/> |
|
99 |
<attribute ref="xlink:arcrole" use="optional"/> |
|
100 |
<attribute ref="xlink:title" use="optional"/> |
|
101 |
<attribute ref="xlink:show" use="optional"/> |
|
102 |
<attribute ref="xlink:actuate" use="optional"/> |
|
103 |
<attribute ref="xlink:from" use="optional"/> |
|
104 |
<attribute ref="xlink:to" use="optional"/> |
|
105 |
</attributeGroup> |
|
106 |
<attributeGroup name="resourceLink"> |
|
107 |
<attribute name="type" type="string" fixed="resource" form="qualified"/> |
|
108 |
<attribute ref="xlink:role" use="optional"/> |
|
109 |
<attribute ref="xlink:title" use="optional"/> |
|
110 |
<attribute ref="xlink:label" use="optional"/> |
|
111 |
</attributeGroup> |
|
112 |
<attributeGroup name="titleLink"> |
|
113 |
<attribute name="type" type="string" fixed="title" form="qualified"/> |
|
114 |
</attributeGroup> |
|
115 |
<attributeGroup name="emptyLink"> |
|
116 |
<attribute name="type" type="string" fixed="none" form="qualified"/> |
|
117 |
</attributeGroup> |
|
118 |
</schema> |
Also available in: Unified diff
use the noaa version.