Implement basic configuration of session_shared.
[metaproxy-moved-to-github.git] / etc / config.xsd
index 98e7518..e662e17 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- $Id: config.xsd,v 1.13 2006-02-02 18:20:41 mike Exp $ -->
+<!-- $Id: config.xsd,v 1.20 2006-06-21 09:16:53 adam Exp $ -->
 <!--
        This Schema prescribes the format of YP2 configuration files.
        Invoke it like this:
         <xs:element ref="config:timeout"/>
 
        <!-- type="log" -->
-        <xs:element ref="config:message"/>
+        <xs:sequence>
+         <xs:element minOccurs="0" ref="config:message"/>
+         <xs:element minOccurs="0" ref="config:filename"/>
+         <xs:element minOccurs="0" name="category">
+           <xs:complexType>
+            <xs:attribute name="request-session" type="xs:boolean"/>
+            <xs:attribute name="response-session" type="xs:boolean"/>
+            <xs:attribute name="session" type="xs:boolean"/>
+            <xs:attribute name="request-apdu" type="xs:boolean"/>
+            <xs:attribute name="response-apdu" type="xs:boolean"/>
+            <xs:attribute name="apdu" type="xs:boolean"/>
+            <xs:attribute name="init-options" type="xs:boolean"/>
+           </xs:complexType>
+         </xs:element>
+        </xs:sequence>
 
        <!-- type="virt_db" or type="multi" -->
-        <xs:element minOccurs="0" maxOccurs="unbounded" ref="config:virtual"/>
+        <xs:sequence>
+         <xs:element minOccurs="0" maxOccurs="unbounded" ref="config:virtual"/>
+         <xs:element minOccurs="0" maxOccurs="1" name="hideunavailable">
+           <xs:complexType/>
+         </xs:element>
+        </xs:sequence>
 
        <!-- type="auth_simple" -->
         <xs:sequence>
        <!-- No elements included -->
 
        <!-- type="session_shared" -->
-       <!-- No example configuration to deduce from yet -->
+        <xs:sequence>
+         <xs:element minOccurs="0" name="resultset">
+           <xs:complexType>
+            <xs:attribute name="ttl" type="xs:integer"/>
+            <xs:attribute name="max" type="xs:integer"/>
+           </xs:complexType>
+         </xs:element>
+         <xs:element minOccurs="0" name="session">
+           <xs:complexType>
+            <xs:attribute name="ttl" type="xs:integer"/>
+           </xs:complexType>
+         </xs:element>
+       </xs:sequence>
 
        <!-- type="template" -->
        <!-- No example configuration to deduce from yet -->
 
+       <!-- type="http_file" -->
+        <xs:sequence>
+         <xs:element ref="config:mimetypes"/>
+         <xs:element name="area">
+           <xs:complexType>
+             <xs:sequence>
+               <xs:element ref="config:documentroot"/>
+               <xs:element ref="config:prefix"/>
+             </xs:sequence>
+           </xs:complexType>
+         </xs:element>
+        </xs:sequence>
+
+       <!-- type="query_rewrite" -->
+       <xs:element ref="config:xslt"/>
+
       </xs:choice>
       <xs:attribute name="id" type="xs:NCName"/>
       <xs:attribute name="refid" type="xs:NCName"/>
             <xs:enumeration value="multi"/>
             <xs:enumeration value="session_shared"/>
             <xs:enumeration value="template"/>
+            <xs:enumeration value="http_file"/>
+            <xs:enumeration value="query_rewrite"/>
           </xs:restriction>
         </xs:simpleType>
       </xs:attribute>
   <xs:element name="port" type="xs:string"/>
   <xs:element name="timeout" type="xs:integer"/>
   <xs:element name="message" type="xs:NCName"/>
+  <xs:element name="filename" type="xs:string"/>
   <xs:element name="userRegister" type="xs:string"/>
   <xs:element name="targetRegister" type="xs:string"/>
   <xs:element name="discardUnauthorisedTargets" type="xs:string"/>
+  <xs:element name="mimetypes" type="xs:string"/>
+  <xs:element name="documentroot" type="xs:string"/>
+  <xs:element name="prefix" type="xs:string"/>
+  <xs:element name="xslt" type="xs:string"/>
 
   <!-- ### This is used differently depending on whether it occurs
        within a "virt_db" or "multi" filter: for the former, it