1 |
d2a8c3fd
|
Marc NICOLAS
|
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/config" xmlns:cfg="http://www.example.org/config" elementFormDefault="qualified">
|
3 |
|
|
|
4 |
|
|
<!-- Simple word type -->
|
5 |
|
|
|
6 |
|
|
<xs:simpleType name="word">
|
7 |
|
|
<xs:restriction base="xs:string">
|
8 |
|
|
<xs:pattern value="[a-zA-Z]*"/>
|
9 |
|
|
</xs:restriction>
|
10 |
|
|
</xs:simpleType>
|
11 |
|
|
|
12 |
|
|
<!-- Parameters are simple column names without any space. -->
|
13 |
|
|
|
14 |
|
|
<xs:complexType name="Parameters">
|
15 |
|
|
<xs:sequence>
|
16 |
|
|
<xs:element name="name" type="cfg:word" minOccurs="0" maxOccurs="unbounded"/>
|
17 |
|
|
</xs:sequence>
|
18 |
|
|
</xs:complexType>
|
19 |
|
|
|
20 |
|
|
<!-- URI to a .class file -->
|
21 |
|
|
|
22 |
|
|
<xs:simpleType name="Class">
|
23 |
|
|
<xs:restriction base="xs:string">
|
24 |
|
|
<xs:pattern value="(http|file)://.*\.class"/>
|
25 |
|
|
</xs:restriction>
|
26 |
|
|
</xs:simpleType>
|
27 |
|
|
|
28 |
|
|
<!-- single converter type -->
|
29 |
|
|
|
30 |
|
|
<xs:complexType name="Converter">
|
31 |
|
|
<xs:sequence>
|
32 |
|
|
<xs:element name="name" type="xs:string"/>
|
33 |
|
|
<xs:element name="description" type="xs:string"/>
|
34 |
|
|
<xs:element name="param_in" type="cfg:Parameters"/>
|
35 |
|
|
<xs:element name="param_out" type="cfg:Parameters"/>
|
36 |
|
|
<xs:element name="class" type="cfg:Class"/>
|
37 |
|
|
<xs:element name="classname" type="xs:string"/>
|
38 |
|
|
</xs:sequence>
|
39 |
|
|
</xs:complexType>
|
40 |
|
|
|
41 |
|
|
<!-- set of converters -->
|
42 |
|
|
|
43 |
|
|
<xs:complexType name="Converters">
|
44 |
|
|
<xs:sequence>
|
45 |
|
|
<xs:element name="cv" type="cfg:Converter"/>
|
46 |
|
|
</xs:sequence>
|
47 |
|
|
</xs:complexType>
|
48 |
|
|
|
49 |
|
|
<xs:element name="convs" type="cfg:Converters"/>
|
50 |
|
|
|
51 |
|
|
</xs:schema> |