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

Last change on this file since 13343 was 9821, checked in by bastiK, 3 years ago

fixed #12522 - Advanced preferences: display default entries consistently

Saves default preference entries to a cache file (cache/default_preferences.xml), so the list of advanced preferences is filled with all known default values consistently from the start and not gradually as you use different features during a session.

  • Property svn:eol-style set to native
File size: 3.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        <choice minOccurs="0" maxOccurs="unbounded">
9            <element name="tag" type="tns:tag" />
10            <element name="list" type="tns:list" />
11            <element name="lists" type="tns:lists" />
12            <element name="maps" type="tns:maps" />
13        </choice>
14        <attribute name="version" type="string" />
15    </complexType>
16
17    <complexType name="tag">
18        <attribute name="key" type="string" use="required" />
19        <attribute name="value" type="string" use="required"/>
20    </complexType>
21
22    <complexType name="list">
23        <sequence>
24            <element name="entry" type="tns:entry" minOccurs="0" maxOccurs="unbounded"/>
25        </sequence>
26        <attribute name="key" type="string" use="required" />
27    </complexType>
28
29    <complexType name="lists">
30        <sequence>
31            <element name="list" type="tns:slist" minOccurs="0" maxOccurs="unbounded"/>
32        </sequence>
33        <attribute name="key" type="string" use="required" />
34    </complexType>
35
36    <complexType name="maps">
37        <sequence>
38            <element name="map" type="tns:map" minOccurs="0" maxOccurs="unbounded"/>
39        </sequence>
40        <attribute name="key" type="string" use="required" />
41    </complexType>
42
43    <complexType name="slist">
44        <sequence>
45            <element name="entry" type="tns:entry" minOccurs="0" maxOccurs="unbounded"/>
46        </sequence>
47    </complexType>
48
49    <complexType name="map">
50        <sequence>
51            <element name="tag" type="tns:tag" minOccurs="0" maxOccurs="unbounded"/>
52        </sequence>
53    </complexType>
54
55    <complexType name="entry">
56        <attribute name="value" type="string" use="required"/>
57    </complexType>
58
59    <!-- cache for default preference values -->
60
61    <element name="preferences-defaults" type="tns:root-def"/>
62
63    <complexType name="root-def">
64        <choice minOccurs="0" maxOccurs="unbounded">
65            <element name="tag" type="tns:tag-def" nillable="true"/>
66            <element name="list" type="tns:list-def" nillable="true"/>
67            <element name="lists" type="tns:lists-def" nillable="true"/>
68            <element name="maps" type="tns:maps-def" nillable="true"/>
69        </choice>
70        <attribute name="version" type="string" />
71    </complexType>
72
73    <complexType name="tag-def">
74        <attribute name="key" type="string" use="required" />
75        <!-- element must be either nil or have the value attribute -->
76        <attribute name="value" type="string" use="optional"/>
77        <attribute name="time" type="decimal" use="required"/>
78    </complexType>
79
80    <complexType name="list-def">
81         <complexContent>
82             <extension base="tns:list">
83                <attribute name="time" type="decimal" use="required"/>
84            </extension>
85         </complexContent>
86    </complexType>
87
88    <complexType name="lists-def">
89         <complexContent>
90             <extension base="tns:lists">
91                <attribute name="time" type="decimal" use="required"/>
92            </extension>
93         </complexContent>
94    </complexType>
95
96    <complexType name="maps-def">
97         <complexContent>
98             <extension base="tns:maps">
99                <attribute name="time" type="decimal" use="required"/>
100            </extension>
101         </complexContent>
102    </complexType>
103</schema>
Note: See TracBrowser for help on using the repository browser.