1 <?xml version="1.0" encoding="UTF-8"?>
3 Metaproxy XML config file schemas
5 Copyright (C) 2005-2011 Index Data.
7 See the LICENSE file for details
10 The RelaxNG Compact Syntax file 'metaproxy.rnc' is the master copy.
12 The RelaxNG XML Syntax and XML Schema are generated using 'trang':
13 trang metaproxy.rnc metaproxy.rng
14 trang metaproxy.rnc metaproxy.xsd
16 Config file validation is done using 'xmllint':
17 xmllint -/-relaxng metaproxy.rng ../../../etc/config1.xml
18 xmllint -/-schema metaproxy.xsd config-bytarget.xml
20 For information on RelaxNG see http://relaxng.org
21 see also http://books.xmlschemata.org/relaxng/
23 <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">
24 <xs:import schemaLocation="local.xsd"/>
25 <xs:import namespace="http://indexdata.com/yaz" schemaLocation="retrievalinfo.xsd"/>
26 <xs:group name="filter_multi">
28 <xs:element minOccurs="0" maxOccurs="unbounded" ref="mp:target"/>
29 <xs:element minOccurs="0" ref="mp:hideunavailable"/>
30 <xs:element minOccurs="0" ref="mp:mergetype"/>
33 <xs:element name="target">
36 <xs:extension base="xs:string">
37 <xs:attribute name="route" use="required" type="xs:string"/>
42 <xs:element name="hideunavailable">
45 <xs:element name="mergetype" type="xs:string"/>
46 <xs:attributeGroup name="filter_multi">
47 <xs:attribute name="type" use="required">
49 <xs:restriction base="xs:token">
50 <xs:enumeration value="multi"/>
54 <xs:attribute name="id" type="xs:NCName"/>
55 <xs:attribute name="name" type="xs:NCName"/>