1 <?xml version="1.0" encoding="utf-8"?>
3 <!-- ============================================================
4 $Header: /home/amb/routino/xml/RCS/routino-tagging.xsd,v 1.3 2010/09/17 17:40:55 amb Exp $
6 An XML Schema Definition for the Routino tagging rules XML format
8 Part of the Routino routing software.
9 ============================================================
10 This file Copyright 2010 Andrew M. Bishop
12 This program is free software: you can redistribute it and/or modify
13 it under the terms of the GNU Affero General Public License as published by
14 the Free Software Foundation, either version 3 of the License, or
15 (at your option) any later version.
16 ============================================================ -->
18 <xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
20 <!-- The top level Routino tagging rules -->
22 <xsd:element name="routino-tagging" type="RoutinoTaggingType"/>
24 <xsd:complexType name="RoutinoTaggingType">
26 <xsd:element name="node" type="NodeType"/>
27 <xsd:element name="way" type="WayType"/>
28 <xsd:element name="relation" type="RelationType"/>
32 <!-- The second level node, way and relation tagging rules -->
34 <xsd:complexType name="NodeType">
36 <xsd:element name="if" type="IfType" minOccurs="0" maxOccurs="unbounded"/>
40 <xsd:complexType name="WayType">
42 <xsd:element name="if" type="IfType" minOccurs="0" maxOccurs="unbounded"/>
46 <xsd:complexType name="RelationType">
48 <xsd:element name="if" type="IfType" minOccurs="0" maxOccurs="unbounded"/>
52 <!-- The if tag and its contents -->
54 <xsd:complexType name="IfType">
56 <xsd:element name="set" type="SetType" minOccurs="0" maxOccurs="unbounded"/>
57 <xsd:element name="output" type="OutputType" minOccurs="0" maxOccurs="unbounded"/>
59 <xsd:attribute name="k" type="xsd:string"/>
60 <xsd:attribute name="v" type="xsd:string"/>
63 <xsd:complexType name="SetType">
64 <xsd:attribute name="k" type="xsd:string"/>
65 <xsd:attribute name="v" type="xsd:string"/>
68 <xsd:complexType name="OutputType">
69 <xsd:attribute name="k" type="xsd:string"/>
70 <xsd:attribute name="v" type="xsd:string"/>