source: josm/trunk/data/maps.xsd @ 13733

Last change on this file since 13733 was 13733, checked in by wiktorn, 13 months ago

Imagery definition refactor

Extend imagery definitions by:

  • allowing setting default layers for WMS_ENDPOINT and WMTS
  • allowing setting minimum expires time for tile for this imagery
  • allowing setting custom headers that will be sent for all requests

(get map, get capabilities) for this imagery

Additional changes in code:

  • use TileJobOptions to pass miscellaneous options to loaders
  • refactor WMSImagery to use SAX parser

See: #15981, #7953, #16224, #15940, #16249

  • Property svn:eol-style set to native
File size: 33.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://josm.openstreetmap.de/maps-1.0"
3    xmlns:tns="http://josm.openstreetmap.de/maps-1.0" elementFormDefault="qualified">
4
5    <xs:simpleType name="latitude">
6        <xs:restriction base="xs:decimal">
7            <xs:minInclusive value="-90" />
8            <xs:maxInclusive value="+90" />
9        </xs:restriction>
10    </xs:simpleType>
11
12    <xs:simpleType name="longitude">
13        <xs:restriction base="xs:decimal">
14            <xs:minInclusive value="-180" />
15            <xs:maxInclusive value="+180" />
16        </xs:restriction>
17    </xs:simpleType>
18   
19    <xs:simpleType name="id">
20        <!-- exclude white space characters and characters that are not valid for file names in Windows -->
21        <xs:restriction base="xs:string">
22            <xs:pattern value='[^\s/\\:*?"&lt;>|,;]+' />
23        </xs:restriction>
24    </xs:simpleType>
25
26    <xs:complexType name="oldid">
27        <xs:simpleContent>
28            <xs:extension base="tns:id">
29                <!-- date of the retirement of this ID -->
30                <xs:attribute name="date" type="xs:date" use="required" />
31            </xs:extension>
32        </xs:simpleContent>
33    </xs:complexType>
34
35    <xs:simpleType name="type">
36        <xs:restriction base="xs:string">
37            <xs:enumeration value="wms" />
38            <xs:enumeration value="wms_endpoint" />
39            <xs:enumeration value="wmts" />
40            <xs:enumeration value="tms" />
41            <xs:enumeration value="bing" />
42            <xs:enumeration value="scanex" />
43        </xs:restriction>
44    </xs:simpleType>
45
46    <xs:simpleType name="zoom">
47        <xs:restriction base="xs:integer">
48            <xs:minInclusive value="0" />
49            <xs:maxInclusive value="24" />
50        </xs:restriction>
51    </xs:simpleType>
52
53    <xs:complexType name="eula">
54        <xs:simpleContent>
55            <xs:extension base="xs:anyURI" >
56                <xs:attribute name="mandatory" type="xs:boolean" use="optional" />
57            </xs:extension>
58        </xs:simpleContent>
59    </xs:complexType>
60
61    <xs:complexType name="attribution-text">
62        <xs:simpleContent>
63            <xs:extension base="xs:string">
64                <xs:attribute name="mandatory" type="xs:boolean" use="optional" />
65            </xs:extension>
66        </xs:simpleContent>
67    </xs:complexType>
68
69    <xs:complexType name="description">
70        <xs:simpleContent>
71            <xs:extension base="xs:string">
72                <xs:attribute name="lang" type="xs:string" use="required" />
73            </xs:extension>
74        </xs:simpleContent>
75    </xs:complexType>
76
77    <xs:complexType name="name">
78        <xs:simpleContent>
79            <xs:extension base="xs:string">
80                <xs:attribute name="lang" type="xs:string" use="optional" />
81            </xs:extension>
82        </xs:simpleContent>
83    </xs:complexType>
84
85    <xs:complexType name="point">
86        <xs:attribute name="lat" type="tns:latitude" use="required" />
87        <xs:attribute name="lon" type="tns:longitude" use="required" />
88    </xs:complexType>
89
90    <xs:complexType name="shape">
91        <xs:sequence>
92            <xs:element name="point" minOccurs="3" maxOccurs="999" type="tns:point" />
93        </xs:sequence>
94    </xs:complexType>
95
96    <xs:complexType name="bounds">
97        <xs:sequence>
98            <xs:element name="shape" minOccurs="0" maxOccurs="100" type="tns:shape" />
99        </xs:sequence>
100        <xs:attribute name="min-lat" type="tns:latitude" use="required" />
101        <xs:attribute name="min-lon" type="tns:longitude" use="required" />
102        <xs:attribute name="max-lat" type="tns:latitude" use="required" />
103        <xs:attribute name="max-lon" type="tns:longitude" use="required" />
104    </xs:complexType>
105
106    <xs:complexType name="projections">
107        <xs:sequence>
108            <!-- TODO: find an easy way to validate projections codes -->
109            <xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="xs:string" />
110        </xs:sequence>
111    </xs:complexType>
112
113    <xs:complexType name="defaultLayers">
114        <xs:sequence>
115            <xs:element name="layer" maxOccurs="unbounded">
116                <xs:complexType>
117                    <xs:attribute name="name" type="xs:string" use="optional" />
118                    <xs:attribute name="style" type="xs:string" use="optional" />
119                    <xs:attribute name="tileMatrixSet" type="xs:string" use="optional" />
120                </xs:complexType>
121            </xs:element>
122        </xs:sequence>
123    </xs:complexType>
124
125    <!-- ISO3166-1, taken from http://www.iso.org/iso/country_codes/iso_3166_code_lists.htm + "EU" for Europe -->
126    <xs:simpleType name="iso3166">
127        <xs:restriction base="xs:string">
128            <!-- EUROPE (JOSM ONLY) -->
129            <xs:enumeration value="EU" />
130            <!-- AFGHANISTAN -->
131            <xs:enumeration value="AF" />
132            <!-- ÅLAND ISLANDS -->
133            <xs:enumeration value="AX" />
134            <!-- ALBANIA -->
135            <xs:enumeration value="AL" />
136            <!-- ALGERIA -->
137            <xs:enumeration value="DZ" />
138            <!-- AMERICAN SAMOA -->
139            <xs:enumeration value="AS" />
140            <!-- ANDORRA -->
141            <xs:enumeration value="AD" />
142            <!-- ANGOLA -->
143            <xs:enumeration value="AO" />
144            <!-- ANGUILLA -->
145            <xs:enumeration value="AI" />
146            <!-- ANTARCTICA -->
147            <xs:enumeration value="AQ" />
148            <!-- ANTIGUA AND BARBUDA -->
149            <xs:enumeration value="AG" />
150            <!-- ARGENTINA -->
151            <xs:enumeration value="AR" />
152            <!-- ARMENIA -->
153            <xs:enumeration value="AM" />
154            <!-- ARUBA -->
155            <xs:enumeration value="AW" />
156            <!-- AUSTRALIA -->
157            <xs:enumeration value="AU" />
158            <!-- AUSTRIA -->
159            <xs:enumeration value="AT" />
160            <!-- AZERBAIJAN -->
161            <xs:enumeration value="AZ" />
162            <!-- BAHAMAS -->
163            <xs:enumeration value="BS" />
164            <!-- BAHRAIN -->
165            <xs:enumeration value="BH" />
166            <!-- BANGLADESH -->
167            <xs:enumeration value="BD" />
168            <!-- BARBADOS -->
169            <xs:enumeration value="BB" />
170            <!-- BELARUS -->
171            <xs:enumeration value="BY" />
172            <!-- BELGIUM -->
173            <xs:enumeration value="BE" />
174            <!-- BELIZE -->
175            <xs:enumeration value="BZ" />
176            <!-- BENIN -->
177            <xs:enumeration value="BJ" />
178            <!-- BERMUDA -->
179            <xs:enumeration value="BM" />
180            <!-- BHUTAN -->
181            <xs:enumeration value="BT" />
182            <!-- BOLIVIA, PLURINATIONAL STATE OF -->
183            <xs:enumeration value="BO" />
184            <!-- BONAIRE, SINT EUSTATIUS AND SABA -->
185            <xs:enumeration value="BQ" />
186            <!-- BOSNIA AND HERZEGOVINA -->
187            <xs:enumeration value="BA" />
188            <!-- BOTSWANA -->
189            <xs:enumeration value="BW" />
190            <!-- BOUVET ISLAND -->
191            <xs:enumeration value="BV" />
192            <!-- BRAZIL -->
193            <xs:enumeration value="BR" />
194            <!-- BRITISH INDIAN OCEAN TERRITORY -->
195            <xs:enumeration value="IO" />
196            <!-- BRUNEI DARUSSALAM -->
197            <xs:enumeration value="BN" />
198            <!-- BULGARIA -->
199            <xs:enumeration value="BG" />
200            <!-- BURKINA FASO -->
201            <xs:enumeration value="BF" />
202            <!-- BURUNDI -->
203            <xs:enumeration value="BI" />
204            <!-- CAMBODIA -->
205            <xs:enumeration value="KH" />
206            <!-- CAMEROON -->
207            <xs:enumeration value="CM" />
208            <!-- CANADA -->
209            <xs:enumeration value="CA" />
210            <!-- CAPE VERDE -->
211            <xs:enumeration value="CV" />
212            <!-- CAYMAN ISLANDS -->
213            <xs:enumeration value="KY" />
214            <!-- CENTRAL AFRICAN REPUBLIC -->
215            <xs:enumeration value="CF" />
216            <!-- CHAD -->
217            <xs:enumeration value="TD" />
218            <!-- CHILE -->
219            <xs:enumeration value="CL" />
220            <!-- CHINA -->
221            <xs:enumeration value="CN" />
222            <!-- CHRISTMAS ISLAND -->
223            <xs:enumeration value="CX" />
224            <!-- COCOS (KEELING) ISLANDS -->
225            <xs:enumeration value="CC" />
226            <!-- COLOMBIA -->
227            <xs:enumeration value="CO" />
228            <!-- COMOROS -->
229            <xs:enumeration value="KM" />
230            <!-- CONGO -->
231            <xs:enumeration value="CG" />
232            <!-- CONGO, THE DEMOCRATIC REPUBLIC OF THE -->
233            <xs:enumeration value="CD" />
234            <!-- COOK ISLANDS -->
235            <xs:enumeration value="CK" />
236            <!-- COSTA RICA -->
237            <xs:enumeration value="CR" />
238            <!-- CÔTE D'IVOIRE -->
239            <xs:enumeration value="CI" />
240            <!-- CROATIA -->
241            <xs:enumeration value="HR" />
242            <!-- CUBA -->
243            <xs:enumeration value="CU" />
244            <!-- CURAÇAO -->
245            <xs:enumeration value="CW" />
246            <!-- CYPRUS -->
247            <xs:enumeration value="CY" />
248            <!-- CZECH REPUBLIC -->
249            <xs:enumeration value="CZ" />
250            <!-- DENMARK -->
251            <xs:enumeration value="DK" />
252            <!-- DJIBOUTI -->
253            <xs:enumeration value="DJ" />
254            <!-- DOMINICA -->
255            <xs:enumeration value="DM" />
256            <!-- DOMINICAN REPUBLIC -->
257            <xs:enumeration value="DO" />
258            <!-- ECUADOR -->
259            <xs:enumeration value="EC" />
260            <!-- EGYPT -->
261            <xs:enumeration value="EG" />
262            <!-- EL SALVADOR -->
263            <xs:enumeration value="SV" />
264            <!-- EQUATORIAL GUINEA -->
265            <xs:enumeration value="GQ" />
266            <!-- ERITREA -->
267            <xs:enumeration value="ER" />
268            <!-- ESTONIA -->
269            <xs:enumeration value="EE" />
270            <!-- ETHIOPIA -->
271            <xs:enumeration value="ET" />
272            <!-- FALKLAND ISLANDS (MALVINAS) -->
273            <xs:enumeration value="FK" />
274            <!-- FAROE ISLANDS -->
275            <xs:enumeration value="FO" />
276            <!-- FIJI -->
277            <xs:enumeration value="FJ" />
278            <!-- FINLAND -->
279            <xs:enumeration value="FI" />
280            <!-- FRANCE -->
281            <xs:enumeration value="FR" />
282            <!-- FRENCH GUIANA -->
283            <xs:enumeration value="GF" />
284            <!-- FRENCH POLYNESIA -->
285            <xs:enumeration value="PF" />
286            <!-- FRENCH SOUTHERN TERRITORIES -->
287            <xs:enumeration value="TF" />
288            <!-- GABON -->
289            <xs:enumeration value="GA" />
290            <!-- GAMBIA -->
291            <xs:enumeration value="GM" />
292            <!-- GEORGIA -->
293            <xs:enumeration value="GE" />
294            <!-- GERMANY -->
295            <xs:enumeration value="DE" />
296            <!-- GHANA -->
297            <xs:enumeration value="GH" />
298            <!-- GIBRALTAR -->
299            <xs:enumeration value="GI" />
300            <!-- GREECE -->
301            <xs:enumeration value="GR" />
302            <!-- GREENLAND -->
303            <xs:enumeration value="GL" />
304            <!-- GRENADA -->
305            <xs:enumeration value="GD" />
306            <!-- GUADELOUPE -->
307            <xs:enumeration value="GP" />
308            <!-- GUAM -->
309            <xs:enumeration value="GU" />
310            <!-- GUATEMALA -->
311            <xs:enumeration value="GT" />
312            <!-- GUERNSEY -->
313            <xs:enumeration value="GG" />
314            <!-- GUINEA -->
315            <xs:enumeration value="GN" />
316            <!-- GUINEA-BISSAU -->
317            <xs:enumeration value="GW" />
318            <!-- GUYANA -->
319            <xs:enumeration value="GY" />
320            <!-- HAITI -->
321            <xs:enumeration value="HT" />
322            <!-- HEARD ISLAND AND MCDONALD ISLANDS -->
323            <xs:enumeration value="HM" />
324            <!-- HOLY SEE (VATICAN CITY STATE) -->
325            <xs:enumeration value="VA" />
326            <!-- HONDURAS -->
327            <xs:enumeration value="HN" />
328            <!-- HONG KONG -->
329            <xs:enumeration value="HK" />
330            <!-- HUNGARY -->
331            <xs:enumeration value="HU" />
332            <!-- ICELAND -->
333            <xs:enumeration value="IS" />
334            <!-- INDIA -->
335            <xs:enumeration value="IN" />
336            <!-- INDONESIA -->
337            <xs:enumeration value="ID" />
338            <!-- IRAN, ISLAMIC REPUBLIC OF -->
339            <xs:enumeration value="IR" />
340            <!-- IRAQ -->
341            <xs:enumeration value="IQ" />
342            <!-- IRELAND -->
343            <xs:enumeration value="IE" />
344            <!-- ISLE OF MAN -->
345            <xs:enumeration value="IM" />
346            <!-- ISRAEL -->
347            <xs:enumeration value="IL" />
348            <!-- ITALY -->
349            <xs:enumeration value="IT" />
350            <!-- JAMAICA -->
351            <xs:enumeration value="JM" />
352            <!-- JAPAN -->
353            <xs:enumeration value="JP" />
354            <!-- JERSEY -->
355            <xs:enumeration value="JE" />
356            <!-- JORDAN -->
357            <xs:enumeration value="JO" />
358            <!-- KAZAKHSTAN -->
359            <xs:enumeration value="KZ" />
360            <!-- KENYA -->
361            <xs:enumeration value="KE" />
362            <!-- KIRIBATI -->
363            <xs:enumeration value="KI" />
364            <!-- KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF -->
365            <xs:enumeration value="KP" />
366            <!-- KOREA, REPUBLIC OF -->
367            <xs:enumeration value="KR" />
368            <!-- KUWAIT -->
369            <xs:enumeration value="KW" />
370            <!-- KYRGYZSTAN -->
371            <xs:enumeration value="KG" />
372            <!-- LAO PEOPLE'S DEMOCRATIC REPUBLIC -->
373            <xs:enumeration value="LA" />
374            <!-- LATVIA -->
375            <xs:enumeration value="LV" />
376            <!-- LEBANON -->
377            <xs:enumeration value="LB" />
378            <!-- LESOTHO -->
379            <xs:enumeration value="LS" />
380            <!-- LIBERIA -->
381            <xs:enumeration value="LR" />
382            <!-- LIBYAN ARAB JAMAHIRIYA -->
383            <xs:enumeration value="LY" />
384            <!-- LIECHTENSTEIN -->
385            <xs:enumeration value="LI" />
386            <!-- LITHUANIA -->
387            <xs:enumeration value="LT" />
388            <!-- LUXEMBOURG -->
389            <xs:enumeration value="LU" />
390            <!-- MACAO -->
391            <xs:enumeration value="MO" />
392            <!-- MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF -->
393            <xs:enumeration value="MK" />
394            <!-- MADAGASCAR -->
395            <xs:enumeration value="MG" />
396            <!-- MALAWI -->
397            <xs:enumeration value="MW" />
398            <!-- MALAYSIA -->
399            <xs:enumeration value="MY" />
400            <!-- MALDIVES -->
401            <xs:enumeration value="MV" />
402            <!-- MALI -->
403            <xs:enumeration value="ML" />
404            <!-- MALTA -->
405            <xs:enumeration value="MT" />
406            <!-- MARSHALL ISLANDS -->
407            <xs:enumeration value="MH" />
408            <!-- MARTINIQUE -->
409            <xs:enumeration value="MQ" />
410            <!-- MAURITANIA -->
411            <xs:enumeration value="MR" />
412            <!-- MAURITIUS -->
413            <xs:enumeration value="MU" />
414            <!-- MAYOTTE -->
415            <xs:enumeration value="YT" />
416            <!-- MEXICO -->
417            <xs:enumeration value="MX" />
418            <!-- MICRONESIA, FEDERATED STATES OF -->
419            <xs:enumeration value="FM" />
420            <!-- MOLDOVA, REPUBLIC OF -->
421            <xs:enumeration value="MD" />
422            <!-- MONACO -->
423            <xs:enumeration value="MC" />
424            <!-- MONGOLIA -->
425            <xs:enumeration value="MN" />
426            <!-- MONTENEGRO -->
427            <xs:enumeration value="ME" />
428            <!-- MONTSERRAT -->
429            <xs:enumeration value="MS" />
430            <!-- MOROCCO -->
431            <xs:enumeration value="MA" />
432            <!-- MOZAMBIQUE -->
433            <xs:enumeration value="MZ" />
434            <!-- MYANMAR -->
435            <xs:enumeration value="MM" />
436            <!-- NAMIBIA -->
437            <xs:enumeration value="NA" />
438            <!-- NAURU -->
439            <xs:enumeration value="NR" />
440            <!-- NEPAL -->
441            <xs:enumeration value="NP" />
442            <!-- NETHERLANDS -->
443            <xs:enumeration value="NL" />
444            <!-- NEW CALEDONIA -->
445            <xs:enumeration value="NC" />
446            <!-- NEW ZEALAND -->
447            <xs:enumeration value="NZ" />
448            <!-- NICARAGUA -->
449            <xs:enumeration value="NI" />
450            <!-- NIGER -->
451            <xs:enumeration value="NE" />
452            <!-- NIGERIA -->
453            <xs:enumeration value="NG" />
454            <!-- NIUE -->
455            <xs:enumeration value="NU" />
456            <!-- NORFOLK ISLAND -->
457            <xs:enumeration value="NF" />
458            <!-- NORTHERN MARIANA ISLANDS -->
459            <xs:enumeration value="MP" />
460            <!-- NORWAY -->
461            <xs:enumeration value="NO" />
462            <!-- OMAN -->
463            <xs:enumeration value="OM" />
464            <!-- PAKISTAN -->
465            <xs:enumeration value="PK" />
466            <!-- PALAU -->
467            <xs:enumeration value="PW" />
468            <!-- PALESTINIAN TERRITORY, OCCUPIED -->
469            <xs:enumeration value="PS" />
470            <!-- PANAMA -->
471            <xs:enumeration value="PA" />
472            <!-- PAPUA NEW GUINEA -->
473            <xs:enumeration value="PG" />
474            <!-- PARAGUAY -->
475            <xs:enumeration value="PY" />
476            <!-- PERU -->
477            <xs:enumeration value="PE" />
478            <!-- PHILIPPINES -->
479            <xs:enumeration value="PH" />
480            <!-- PITCAIRN -->
481            <xs:enumeration value="PN" />
482            <!-- POLAND -->
483            <xs:enumeration value="PL" />
484            <!-- PORTUGAL -->
485            <xs:enumeration value="PT" />
486            <!-- PUERTO RICO -->
487            <xs:enumeration value="PR" />
488            <!-- QATAR -->
489            <xs:enumeration value="QA" />
490            <!-- RÉUNION -->
491            <xs:enumeration value="RE" />
492            <!-- ROMANIA -->
493            <xs:enumeration value="RO" />
494            <!-- RUSSIAN FEDERATION -->
495            <xs:enumeration value="RU" />
496            <!-- RWANDA -->
497            <xs:enumeration value="RW" />
498            <!-- SAINT BARTHÉLEMY -->
499            <xs:enumeration value="BL" />
500            <!-- SAINT HELENA, ASCENSION AND TRISTAN DA CUNHA -->
501            <xs:enumeration value="SH" />
502            <!-- SAINT KITTS AND NEVIS -->
503            <xs:enumeration value="KN" />
504            <!-- SAINT LUCIA -->
505            <xs:enumeration value="LC" />
506            <!-- SAINT MARTIN (FRENCH PART) -->
507            <xs:enumeration value="MF" />
508            <!-- SAINT PIERRE AND MIQUELON -->
509            <xs:enumeration value="PM" />
510            <!-- SAINT VINCENT AND THE GRENADINES -->
511            <xs:enumeration value="VC" />
512            <!-- SAMOA -->
513            <xs:enumeration value="WS" />
514            <!-- SAN MARINO -->
515            <xs:enumeration value="SM" />
516            <!-- SAO TOME AND PRINCIPE -->
517            <xs:enumeration value="ST" />
518            <!-- SAUDI ARABIA -->
519            <xs:enumeration value="SA" />
520            <!-- SENEGAL -->
521            <xs:enumeration value="SN" />
522            <!-- SERBIA -->
523            <xs:enumeration value="RS" />
524            <!-- SEYCHELLES -->
525            <xs:enumeration value="SC" />
526            <!-- SIERRA LEONE -->
527            <xs:enumeration value="SL" />
528            <!-- SINGAPORE -->
529            <xs:enumeration value="SG" />
530            <!-- SINT MAARTEN (DUTCH PART) -->
531            <xs:enumeration value="SX" />
532            <!-- SLOVAKIA -->
533            <xs:enumeration value="SK" />
534            <!-- SLOVENIA -->
535            <xs:enumeration value="SI" />
536            <!-- SOLOMON ISLANDS -->
537            <xs:enumeration value="SB" />
538            <!-- SOMALIA -->
539            <xs:enumeration value="SO" />
540            <!-- SOUTH AFRICA -->
541            <xs:enumeration value="ZA" />
542            <!-- SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS -->
543            <xs:enumeration value="GS" />
544            <!-- SOUTH SUDAN -->
545            <xs:enumeration value="SS" />
546            <!-- SPAIN -->
547            <xs:enumeration value="ES" />
548            <!-- SRI LANKA -->
549            <xs:enumeration value="LK" />
550            <!-- SUDAN -->
551            <xs:enumeration value="SD" />
552            <!-- SURINAME -->
553            <xs:enumeration value="SR" />
554            <!-- SVALBARD AND JAN MAYEN -->
555            <xs:enumeration value="SJ" />
556            <!-- SWAZILAND -->
557            <xs:enumeration value="SZ" />
558            <!-- SWEDEN -->
559            <xs:enumeration value="SE" />
560            <!-- SWITZERLAND -->
561            <xs:enumeration value="CH" />
562            <!-- SYRIAN ARAB REPUBLIC -->
563            <xs:enumeration value="SY" />
564            <!-- TAIWAN, PROVINCE OF CHINA -->
565            <xs:enumeration value="TW" />
566            <!-- TAJIKISTAN -->
567            <xs:enumeration value="TJ" />
568            <!-- TANZANIA, UNITED REPUBLIC OF -->
569            <xs:enumeration value="TZ" />
570            <!-- THAILAND -->
571            <xs:enumeration value="TH" />
572            <!-- TIMOR-LESTE -->
573            <xs:enumeration value="TL" />
574            <!-- TOGO -->
575            <xs:enumeration value="TG" />
576            <!-- TOKELAU -->
577            <xs:enumeration value="TK" />
578            <!-- TONGA -->
579            <xs:enumeration value="TO" />
580            <!-- TRINIDAD AND TOBAGO -->
581            <xs:enumeration value="TT" />
582            <!-- TUNISIA -->
583            <xs:enumeration value="TN" />
584            <!-- TURKEY -->
585            <xs:enumeration value="TR" />
586            <!-- TURKMENISTAN -->
587            <xs:enumeration value="TM" />
588            <!-- TURKS AND CAICOS ISLANDS -->
589            <xs:enumeration value="TC" />
590            <!-- TUVALU -->
591            <xs:enumeration value="TV" />
592            <!-- UGANDA -->
593            <xs:enumeration value="UG" />
594            <!-- UKRAINE -->
595            <xs:enumeration value="UA" />
596            <!-- UNITED ARAB EMIRATES -->
597            <xs:enumeration value="AE" />
598            <!-- UNITED KINGDOM -->
599            <xs:enumeration value="GB" />
600            <!-- UNITED STATES -->
601            <xs:enumeration value="US" />
602            <!-- UNITED STATES MINOR OUTLYING ISLANDS -->
603            <xs:enumeration value="UM" />
604            <!-- URUGUAY -->
605            <xs:enumeration value="UY" />
606            <!-- UZBEKISTAN -->
607            <xs:enumeration value="UZ" />
608            <!-- VANUATU -->
609            <xs:enumeration value="VU" />
610            <!-- VENEZUELA, BOLIVARIAN REPUBLIC OF -->
611            <xs:enumeration value="VE" />
612            <!-- VIET NAM -->
613            <xs:enumeration value="VN" />
614            <!-- VIRGIN ISLANDS, BRITISH -->
615            <xs:enumeration value="VG" />
616            <!-- VIRGIN ISLANDS, U.S. -->
617            <xs:enumeration value="VI" />
618            <!-- WALLIS AND FUTUNA -->
619            <xs:enumeration value="WF" />
620            <!-- WESTERN SAHARA -->
621            <xs:enumeration value="EH" />
622            <!-- YEMEN -->
623            <xs:enumeration value="YE" />
624            <!-- ZAMBIA -->
625            <xs:enumeration value="ZM" />
626            <!-- ZIMBABWE -->
627            <xs:enumeration value="ZW" />
628        </xs:restriction>
629    </xs:simpleType>
630
631    <xs:complexType name="imagery">
632        <xs:sequence>
633            <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
634                <xs:complexType>
635                    <!-- this is actually not fully correct, but XSD does not allow multiple time the
636                        same argument in one xs:all, so this sequence/choice combination, which
637                        actually allows to much, only description and mirror can appear more than once! -->
638                    <xs:sequence>
639                        <xs:choice minOccurs="1" maxOccurs="unbounded">
640                            <!-- The name of the imagery source -->
641                            <xs:element name="name" minOccurs="1" type="tns:name" />
642                            <!-- A description of the imagery source -->
643                            <xs:element name="description" minOccurs="0" type="tns:description" />
644                            <!-- A unique id for the imagery source -->
645                            <xs:element name="id" minOccurs="0" maxOccurs="1" type="tns:id" />
646                            <!-- Historic id for the imagery source -->
647                            <xs:element name="oldid" minOccurs="0" maxOccurs="unbounded" type="tns:oldid" />
648                            <!-- The type. Can be tms, wms and html. In addition, there are the special types bing and scanex
649                                with hardcoded behaviour. -->
650                            <xs:element name="type" minOccurs="1" maxOccurs="1" type="tns:type" />
651                            <!-- To define as default server for this type -->
652                            <xs:element name="default" minOccurs="0" maxOccurs="1" type="xs:boolean" />
653                            <!-- The URL of the service. Can contain templates, e.g. {zoom} will be replaced by the current
654                                zoom level (see below). The list of services is a XML document, so the '&' character is represented by
655                                '&amp;'. Alternatively, the URL can be wrapped in a <![CDATA[...]]> section. -->
656                            <xs:element name="url" minOccurs="1" maxOccurs="1" type="xs:string" />
657                            <!-- A list of supported projections (inside <code> tags) -->
658                            <xs:element name="projections" minOccurs="0" maxOccurs="1" type="tns:projections" />
659                            <!-- TMS only: The minimum zoom level -->
660                            <xs:element name="min-zoom" minOccurs="0" maxOccurs="1" type="tns:zoom" />
661                            <!-- TMS only: The maximum zoom level. For higher scales, the images of the maximum level is enlarged. -->
662                            <xs:element name="max-zoom" minOccurs="0" maxOccurs="1" type="tns:zoom" />
663                            <!-- The area of use, e.g. <bounds min-lat='45.7' min-lon='5.9' max-lat='55.0' max-lon='17.3'/> -->
664                            <xs:element name="bounds" minOccurs="0" maxOccurs="1" type="tns:bounds" />
665                            <!-- Provide a source that this background can be used for OSM. A page on the OSM-wiki with additional explanation and further references is preferred, but other sources (for example the license text) can also be linked. -->
666                            <xs:element name="permission-ref" minOccurs="0" maxOccurs="1" type="xs:anyURI" />
667                            <!-- A link to an EULA text that has to be accepted by the user, before the imagery source is added. -->
668                            <xs:element name="eula" minOccurs="0" maxOccurs="1" type="tns:eula" />
669                            <!-- The attribution text to be shown all the time on the map. -->
670                            <xs:element name="attribution-text" minOccurs="0" maxOccurs="1" type="tns:attribution-text" />
671                            <!-- A link that is opened, when the user clicks on the attribution text -->
672                            <xs:element name="attribution-url" minOccurs="0" maxOccurs="1" type="xs:anyURI" />
673                            <!-- A image that is displayed as attribution for the imagery background -->
674                            <xs:element name="logo-image" minOccurs="0" maxOccurs="1" type="xs:string" />
675                            <!-- A link that is opened, when the user clicks on the logo image -->
676                            <xs:element name="logo-url" minOccurs="0" maxOccurs="1" type="xs:anyURI" />
677                            <!-- terms-of-use text (if missing, default tou text will be used, unless terms-of-use-url is also missing) -->
678                            <xs:element name="terms-of-use-text" minOccurs="0" maxOccurs="1" type="xs:string" />
679                            <!-- A link that is opened, when the user clicks on the terms-of-use text -->
680                            <xs:element name="terms-of-use-url" minOccurs="0" maxOccurs="1" type="xs:string" />
681                            <!-- The ISO 3166 country code -->
682                            <xs:element name="country-code" minOccurs="0" maxOccurs="1" type="tns:iso3166" />
683                            <!-- A base64-encoded image that is displayed as menu/toolbar icon -->
684                            <xs:element name="icon" minOccurs="0" maxOccurs="1" type="xs:string" />
685                            <!-- Date in form YYYY-MM-DD;YYYY-MM-DD (each element after first year is optional, a single - marks an unknown or open timespan like -;2015) -->
686                            <xs:element name="date" minOccurs="0" maxOccurs="1" type="xs:string" />
687                            <xs:element name="mirror" minOccurs="0">
688                                <xs:complexType>
689                                    <xs:all>
690                                        <xs:element name="type" minOccurs="1" maxOccurs="1" type="tns:type" />
691                                        <xs:element name="id" minOccurs="0" maxOccurs="1" type="tns:id" />
692                                        <xs:element name="url" minOccurs="1" maxOccurs="1" type="xs:string" />
693                                        <xs:element name="projections" minOccurs="0" maxOccurs="1" type="tns:projections" />
694                                        <xs:element name="min-zoom" minOccurs="0" maxOccurs="1" type="tns:zoom" />
695                                        <xs:element name="max-zoom" minOccurs="0" maxOccurs="1" type="tns:zoom" />
696                                        <xs:element name="tile-size" minOccurs="0" maxOccurs="1" type="xs:positiveInteger" />
697                                    </xs:all>
698                                </xs:complexType>
699                            </xs:element>
700                            <!-- list of HTTP headers, that indicate "no tile at this zoom level" situation -->
701                            <xs:element name="no-tile-header" minOccurs="0" maxOccurs="unbounded">
702                                <xs:complexType>
703                                    <xs:attribute name="name" type="xs:string" />
704                                    <xs:attribute name="value" type="xs:string" />
705                                </xs:complexType>
706                            </xs:element>
707                            <!-- list of checksums, that indicate "no tile at this zoom level" situation -->
708                            <xs:element name="no-tile-checksum" minOccurs="0" maxOccurs="unbounded">
709                                <xs:complexType>
710                                    <xs:attribute name="type" type="xs:string" />
711                                    <xs:attribute name="value" type="xs:string" />
712                                </xs:complexType>
713                            </xs:element>
714                            <!-- tile size provided by imagery source. Default - 256 -->
715                            <xs:element name="tile-size" minOccurs="0" maxOccurs="1" type="xs:positiveInteger" />
716                            <!--  HTTP headers that contain valuable information and that will be shown on "Shown Tile Info" dialog -->
717                            <xs:element name="metadata-header" minOccurs="0" maxOccurs="unbounded">
718                                <xs:complexType>
719                                    <xs:attribute name="header-name" type="xs:string" />
720                                    <xs:attribute name="metadata-key" type="xs:string" />
721                                </xs:complexType>
722                            </xs:element>
723                            <!--  is imagery properly georeferenced (i.e. no need to check offsets). Defaults to false. Affects showing warnings. -->
724                            <xs:element name="valid-georeference" minOccurs="0" maxOccurs="1" type="xs:boolean" />
725                            <!-- old unused feature, ignored -->
726                            <xs:element name="epsg4326to3857Supported" minOccurs="0" maxOccurs="1" type="xs:boolean" />
727                            <xs:element name="defaultLayers" type="tns:defaultLayers" minOccurs="0" maxOccurs="1" />
728                            <xs:element name="custom-http-header" minOccurs="0" maxOccurs="unbounded">
729                                <xs:complexType>
730                                    <xs:attribute name="header-name" type="xs:string" />
731                                    <xs:attribute name="header-value" type="xs:string" />
732                                </xs:complexType>
733                            </xs:element>
734                            <xs:element name="transparent" type="xs:boolean" minOccurs="0" maxOccurs="1"/>
735                            <xs:element name="format" type="xs:string" minOccurs="0" maxOccurs="1"/>
736                            <!-- does imagery server supports "/status" and tile re-rendering using "/dirty". Defaults to false. -->
737                            <xs:element name="mod-tile-features" minOccurs="0" maxOccurs="1" type="xs:boolean" />
738                            <!--  minimum time in seconds for which tile will be considered valid -->
739                            <xs:element name="minimum-tile-expire" minOccurs="0" maxOccurs="1" type="xs:positiveInteger" />
740                        </xs:choice>
741                    </xs:sequence>
742                    <xs:attribute name="last-check" type="xs:date" use="optional" />
743                    <xs:attribute name="eli-best" type="xs:boolean" use="optional" />
744                    <xs:attribute name="overlay" type="xs:boolean" use="optional" />
745                </xs:complexType>
746            </xs:element>
747        </xs:sequence>
748    </xs:complexType>
749
750    <xs:element name="imagery" type="tns:imagery" />
751</xs:schema>
Note: See TracBrowser for help on using the repository browser.