Schema and beginnings of man page for zoom filter
[metaproxy-moved-to-github.git] / xml / schema / filter_zoom.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Metaproxy XML config file schema -->
3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://indexdata.com/metaproxy" xmlns:mp="http://indexdata.com/metaproxy" xmlns:y="http://indexdata.com/yaz">
4   <xs:import schemaLocation="local.xsd"/>
5   <xs:import namespace="http://indexdata.com/yaz" schemaLocation="retrievalinfo.xsd"/>
6   <xs:group name="filter_zoom">
7     <xs:sequence>
8       <xs:element minOccurs="0" ref="mp:torus"/>
9       <xs:element minOccurs="0" maxOccurs="unbounded" ref="mp:fieldmap"/>
10       <xs:element minOccurs="0" ref="mp:cclmap"/>
11     </xs:sequence>
12   </xs:group>
13   <xs:element name="torus">
14     <xs:complexType>
15       <xs:attribute name="url" use="required" type="xs:string"/>
16       <xs:attribute name="xsldir" type="xs:string"/>
17     </xs:complexType>
18   </xs:element>
19   <xs:element name="fieldmap">
20     <xs:complexType>
21       <xs:attribute name="cql" use="required" type="xs:string"/>
22       <xs:attribute name="ccl" type="xs:string"/>
23     </xs:complexType>
24   </xs:element>
25   <xs:element name="cclmap">
26     <xs:complexType>
27       <xs:sequence>
28         <xs:element minOccurs="0" maxOccurs="unbounded" ref="mp:qual"/>
29       </xs:sequence>
30     </xs:complexType>
31   </xs:element>
32   <xs:element name="qual">
33     <xs:complexType>
34       <xs:sequence>
35         <xs:element maxOccurs="unbounded" ref="mp:attr"/>
36       </xs:sequence>
37       <xs:attribute name="name" use="required" type="xs:string"/>
38     </xs:complexType>
39   </xs:element>
40   <xs:element name="attr">
41     <xs:complexType>
42       <xs:attribute name="type" use="required" type="xs:string"/>
43       <xs:attribute name="value" use="required" type="xs:string"/>
44     </xs:complexType>
45   </xs:element>
46   <xs:attributeGroup name="filter_zoom">
47     <xs:attribute name="type" use="required">
48       <xs:simpleType>
49         <xs:restriction base="xs:token">
50           <xs:enumeration value="zoom"/>
51         </xs:restriction>
52       </xs:simpleType>
53     </xs:attribute>
54     <xs:attribute name="id" type="xs:NCName"/>
55     <xs:attribute name="name" type="xs:NCName"/>
56   </xs:attributeGroup>
57 </xs:schema>