source: josm/trunk/data/preferences.xsd @ 6505

Last change on this file since 6505 was 4656, checked in by bastiK, 10 years ago

Fix ambiguities of empty collection vs. empty array by renaming the top level xml tags. This change breaks forward compatibility. (see #7027)

File size: 2.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://josm.openstreetmap.de/preferences-1.0"
3        xmlns:tns="http://josm.openstreetmap.de/preferences-1.0" elementFormDefault="qualified">
4
5        <element name="preferences" type="tns:root"/>
6
7        <complexType name="root">
8                <sequence>
9                        <choice minOccurs="0" maxOccurs="unbounded">
10                                <element name="tag" type="tns:tag" />
11                                <element name="collection" type="tns:collection" />
12                                <element name="list" type="tns:list" />
13                                <element name="lists" type="tns:lists" />
14                                <element name="maps" type="tns:maps" />
15                        </choice>
16                </sequence>
17                <attribute name="version" type="string" />
18        </complexType>
19
20        <complexType name="tag">
21                <attribute name="key" type="string" use="required" />
22                <attribute name="value" type="string" use="required"/>
23        </complexType>
24
25    <!-- deprecated: remove mid 2012 -->
26        <complexType name="collection">
27                <sequence>
28                        <choice minOccurs="1" maxOccurs="unbounded">
29                                <element name="entry" type="tns:entry" />
30                        </choice>
31                </sequence>
32                <attribute name="key" type="string" use="required" />
33        </complexType>
34
35        <complexType name="list">
36            <choice>
37            <sequence>
38                            <element name="entry" type="tns:entry" minOccurs="0" maxOccurs="unbounded"/>
39            </sequence>
40            <!-- deprecated: remove mid 2012 -->
41            <sequence>
42                            <element name="list" type="tns:slist" minOccurs="0" maxOccurs="unbounded"/>
43            </sequence>
44            <!-- deprecated: remove mid 2012 -->
45            <sequence>
46                            <element name="map" type="tns:map" minOccurs="0" maxOccurs="unbounded"/>
47            </sequence>
48        </choice>
49                <attribute name="key" type="string" use="required" />
50        </complexType>
51       
52        <complexType name="lists">
53        <sequence>
54                    <element name="list" type="tns:slist" minOccurs="0" maxOccurs="unbounded"/>
55        </sequence>
56                <attribute name="key" type="string" use="required" />
57        </complexType>
58
59        <complexType name="maps">
60        <sequence>
61                    <element name="map" type="tns:map" minOccurs="0" maxOccurs="unbounded"/>
62        </sequence>
63                <attribute name="key" type="string" use="required" />
64        </complexType>
65
66        <complexType name="slist">
67        <sequence>
68                    <element name="entry" type="tns:entry" minOccurs="0" maxOccurs="unbounded"/>
69        </sequence>
70        </complexType>
71
72        <complexType name="map">
73        <sequence>
74                    <element name="tag" type="tns:tag" minOccurs="0" maxOccurs="unbounded"/>
75        </sequence>
76        </complexType>
77
78        <complexType name="entry">
79                <attribute name="value" type="string" use="required"/>
80        </complexType>
81</schema>
Note: See TracBrowser for help on using the repository browser.