uwproj.xsd

Sun, 10 Sep 2023 12:52:10 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 10 Sep 2023 12:52:10 +0200
changeset 41
75ee588d5d9e
parent 29
5e958351935d
child 43
741a0d9efa47
permissions
-rw-r--r--

some more code cleanup

29
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8"?>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 xmlns="http://unixwork.de/uwproj"
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4 targetNamespace="http://unixwork.de/uwproj"
41
75ee588d5d9e some more code cleanup
Mike Becker <universe@uap-core.de>
parents: 29
diff changeset
5 elementFormDefault="qualified"
75ee588d5d9e some more code cleanup
Mike Becker <universe@uap-core.de>
parents: 29
diff changeset
6 version="0.1"
75ee588d5d9e some more code cleanup
Mike Becker <universe@uap-core.de>
parents: 29
diff changeset
7 >
29
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 <xs:element name="project" type="ProjectType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 <xs:complexType name="ProjectType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 <xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
12 <xs:element name="config" type="ConfigType" minOccurs="0"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13 <xs:element name="dependency" type="DependencyType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14 <xs:element name="target" type="TargetType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 </xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18 <xs:complexType name="ConfigType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 <xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 <xs:element name="var" type="ConfigVarType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 </xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 <xs:complexType name="ConfigVarType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25 <xs:simpleContent>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
26 <xs:extension base="xs:string">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
27 <xs:attribute name="name" type="xs:string" use="required"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
28 <xs:attribute name="type" type="ExecType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
29 </xs:extension>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
30 </xs:simpleContent>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
31 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
32
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
33 <!-- TODO: we should replace this type with a simple Boolean -->
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
34 <xs:simpleType name="ExecType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
35 <xs:restriction base="xs:string">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
36 <xs:enumeration value="exec"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
37 </xs:restriction>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
38 </xs:simpleType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
39
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
40 <xs:complexType name="DependencyType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
41 <xs:choice minOccurs="0" maxOccurs="unbounded">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
42 <xs:element name="lang" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
43 <xs:element name="cflags" type="FlagsType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
44 <xs:element name="ldflags" type="FlagsType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
45 <xs:element name="pkgconfig" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
46 <xs:element name="test" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
47 <xs:element name="make" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
48 </xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
49 <xs:attribute name="name" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
50 <xs:attribute name="platform" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
51 <xs:attribute name="not" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
52 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
53
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
54 <xs:complexType name="FlagsType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
55 <xs:simpleContent>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
56 <xs:extension base="xs:string">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
57 <xs:attribute name="type" type="ExecType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
58 </xs:extension>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
59 </xs:simpleContent>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
60 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
61
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
62 <xs:complexType name="TargetType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
63 <xs:choice minOccurs="0" maxOccurs="unbounded">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
64 <xs:element name="feature" type="FeatureType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
65 <xs:element name="option" type="OptionType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
66 <xs:element name="define" type="DefineType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
67 <xs:element name="dependencies" type="DependenciesType"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
68 <xs:element name="alldependencies">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
69 <xs:complexType/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
70 </xs:element>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
71 </xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
72 <xs:attribute name="name" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
73 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
74
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
75 <xs:complexType name="FeatureType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
76 <xs:choice minOccurs="0" maxOccurs="unbounded">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
77 <xs:group ref="TargetDataGroup"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
78 </xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
79 <xs:attribute name="name" type="xs:string" use="required"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
80 <xs:attribute name="arg" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
81 <xs:attribute name="default" default="false">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
82 <!-- TODO: this should be just Boolean -->
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
83 <xs:simpleType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
84 <xs:restriction base="xs:string">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
85 <xs:enumeration value="true"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
86 <xs:enumeration value="false"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
87 <xs:enumeration value="on"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
88 <xs:enumeration value="off"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
89 </xs:restriction>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
90 </xs:simpleType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
91 </xs:attribute>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
92 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
93
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
94 <xs:complexType name="OptionType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
95 <xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
96 <xs:element name="value" type="OptionValueType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
97 <xs:element name="default" type="OptionDefaultType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
98 </xs:sequence>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
99 <xs:attribute name="arg" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
100 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
101
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
102 <xs:complexType name="OptionValueType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
103 <xs:choice minOccurs="0" maxOccurs="unbounded">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
104 <xs:group ref="TargetDataGroup"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
105 </xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
106 <xs:attribute name="str" type="xs:string" use="required"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
107 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
108
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
109 <xs:complexType name="OptionDefaultType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
110 <xs:attribute name="value" type="xs:string" use="required"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
111 <xs:attribute name="platform" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
112 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
113
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
114 <xs:group name="TargetDataGroup">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
115 <xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
116 <xs:element name="define" type="DefineType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
117 <xs:element name="dependencies" type="DependenciesType" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
118 <xs:element name="make" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
119 </xs:choice>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
120 </xs:group>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
121
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
122 <xs:complexType name="DefineType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
123 <xs:attribute name="name" type="xs:string" use="required"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
124 <xs:attribute name="value" type="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
125 </xs:complexType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 <xs:simpleType name="DependenciesType">
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
128 <xs:restriction base="xs:string"/>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129 </xs:simpleType>
5e958351935d add XML schema - fixes #267
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 </xs:schema>

mercurial