X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=xml%2Fschema%2Fmetaproxy.rnc;h=4e91ab7efc68f6dcaae067737dc910575d155a8f;hb=5e9ddb5ec51270d90289a362ebef9ba2dd759706;hp=bd94035997cae94c57cdbc7c6648f1bca6406d9a;hpb=212d079d2ed819ec779465b959a8d57e8ffb7080;p=metaproxy-moved-to-github.git diff --git a/xml/schema/metaproxy.rnc b/xml/schema/metaproxy.rnc index bd94035..4e91ab7 100644 --- a/xml/schema/metaproxy.rnc +++ b/xml/schema/metaproxy.rnc @@ -1,5 +1,5 @@ # Metaproxy XML config file schemas -# $Id: metaproxy.rnc,v 1.4 2006-10-06 22:51:40 marc Exp $ +# $Id: metaproxy.rnc,v 1.9 2006-11-29 21:45:04 marc Exp $ # # Copyright (c) 2005-2006, Index Data. # @@ -19,27 +19,31 @@ # For information on RelaxNG see http://relaxng.org # see also http://books.xmlschemata.org/relaxng/ -default namespace = "http://indexdata.dk/yp2/config/1" + +namespace mp = "http://indexdata.com/metaproxy" + +include "retrievalinfo.rnc" start = metaproxy metaproxy = - element yp2 { - element start { - attribute route { xsd:NCName } + element mp:metaproxy { + attribute version { "1.0" }, + element mp:start { + attribute route { xsd:NCName } }, - element filters { filter+ }?, - element routes { route+ } + element mp:filters { filter+ }?, + element mp:routes { route+ } } route = - element route { + element mp:route { attribute id { xsd:NCName }, filter+ } filter = - element filter { + element mp:filter { filter_refid | filter_auth_simple | filter_backend_test @@ -49,6 +53,9 @@ filter = | filter_log | filter_multi | filter_query_rewrite + | filter_record_transform + | filter_session_shared + | filter_sru_z3950 | filter_virt_db | filter_z3950_client } @@ -59,9 +66,9 @@ filter_auth_simple = attribute type { "auth_simple" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element userRegister { xsd:string }?, - element targetRegister { xsd:string }?, - element discardUnauthorisedTargets { empty }? + element mp:userRegister { xsd:string }?, + element mp:targetRegister { xsd:string }?, + element mp:discardUnauthorisedTargets { empty }? filter_backend_test = attribute type { "backend_test" }, @@ -77,28 +84,31 @@ filter_frontend_net = attribute type { "frontend_net" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element threads { xsd:integer }?, - element port { xsd:string } + element mp:threads { xsd:integer }?, + element mp:port { xsd:string }, + element mp:timeout { xsd:integer }? filter_http_file = attribute type { "http_file" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element mimetypes { xsd:string }, - element area { - element documentroot { xsd:string }, - element prefix { xsd:string } + element mp:mimetypes { xsd:string }, + element mp:area { + element mp:documentroot { xsd:string }, + element mp:prefix { xsd:string } } filter_log = attribute type { "log" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element message { xsd:NCName }, - element filename { xsd:string }?, - element category { + element mp:message { xsd:string }?, + element mp:filename { xsd:string }?, + element mp:category { + attribute init-options { xsd:boolean }?, attribute request-session { xsd:boolean }?, attribute response-session { xsd:boolean }?, + attribute apdu { xsd:boolean }?, attribute request-apdu { xsd:boolean }?, attribute response-apdu { xsd:boolean }? }? @@ -107,30 +117,53 @@ filter_multi = attribute type { "multi" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element target { + element mp:target { attribute route { xsd:string }, xsd:string }*, - element hideunavailable { empty }? + element mp:hideunavailable { empty }? filter_query_rewrite = attribute type { "query_rewrite" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element xslt { xsd:string } + element mp:xslt { xsd:string } + +filter_record_transform = + attribute type { "record_transform" }, + attribute id { xsd:NCName }?, + attribute name { xsd:NCName }?, + retrievalinfo + +filter_session_shared = + attribute type { "session_shared" }, + attribute id { xsd:NCName }?, + attribute name { xsd:NCName }?, + element mp:resultset { + attribute max { xsd:integer }, + attribute ttl { xsd:integer } + }, + element mp:session { + attribute ttl { xsd:integer } + } + +filter_sru_z3950 = + attribute type { "sru_z3950" }, + attribute id { xsd:NCName }?, + attribute name { xsd:NCName }? filter_virt_db = attribute type { "virt_db" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element virtual { + element mp:virtual { attribute route { xsd:NCName }?, - element database { xsd:NCName }, - element target { xsd:string }+ + element mp:database { xsd:NCName }, + element mp:target { xsd:string }+ }+ filter_z3950_client = attribute type { "z3950_client" }, attribute id { xsd:NCName }?, attribute name { xsd:NCName }?, - element timeout { xsd:integer } + element mp:timeout { xsd:integer }?