1 <?xml version="1.0" encoding="utf-8"?>
3 <!-- ============================================================
4 $Header: /home/amb/routino/xml/RCS/routino-translations.xsd,v 1.3 2010/05/29 13:54:43 amb Exp $
6 An XML Schema Definition for the Routino translations 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 translation -->
22 <xsd:element name="routino-translations" type="RoutinoTranslationsType"/>
24 <xsd:complexType name="RoutinoTranslationsType">
26 <xsd:element name="language" type="languageType" minOccurs="0" maxOccurs="unbounded"/>
30 <xsd:complexType name="languageType">
32 <xsd:element name="copyright" type="CopyrightType" minOccurs="0"/>
33 <xsd:element name="turn" type="TurnType" minOccurs="0" maxOccurs="unbounded"/>
34 <xsd:element name="heading" type="HeadingType" minOccurs="0" maxOccurs="unbounded"/>
35 <xsd:element name="highway" type="HighwayType" minOccurs="0" maxOccurs="unbounded"/>
36 <xsd:element name="route" type="RouteType" minOccurs="0" maxOccurs="2"/>
37 <xsd:element name="output-html" type="HTMLType" minOccurs="0"/>
38 <xsd:element name="output-gpx" type="GPXType" minOccurs="0"/>
40 <xsd:attribute name="lang" type="xsd:string"/>
43 <!-- The copyright information (of the generated output, not of this file) -->
45 <xsd:complexType name="CopyrightType">
47 <xsd:element name="creator" type="CopyrightCreatorType" minOccurs="0"/>
48 <xsd:element name="source" type="CopyrightSourceType" minOccurs="0"/>
49 <xsd:element name="license" type="CopyrightLicenseType" minOccurs="0"/>
53 <xsd:complexType name="CopyrightCreatorType">
54 <xsd:attribute name="string" type="xsd:string"/>
55 <xsd:attribute name="text" type="xsd:string"/>
58 <xsd:complexType name="CopyrightSourceType">
59 <xsd:attribute name="string" type="xsd:string"/>
60 <xsd:attribute name="text" type="xsd:string"/>
63 <xsd:complexType name="CopyrightLicenseType">
64 <xsd:attribute name="string" type="xsd:string"/>
65 <xsd:attribute name="text" type="xsd:string"/>
68 <!-- The turn, heading, highway and route strings -->
70 <xsd:complexType name="TurnType">
71 <xsd:attribute name="direction" type="xsd:string"/>
72 <xsd:attribute name="string" type="xsd:string"/>
75 <xsd:complexType name="HeadingType">
76 <xsd:attribute name="direction" type="xsd:string"/>
77 <xsd:attribute name="string" type="xsd:string"/>
80 <xsd:complexType name="HighwayType">
81 <xsd:attribute name="type" type="xsd:string"/>
82 <xsd:attribute name="string" type="xsd:string"/>
85 <xsd:complexType name="RouteType">
86 <xsd:attribute name="type" type="xsd:string"/>
87 <xsd:attribute name="string" type="xsd:string"/>
90 <!-- The HTML output strings -->
92 <xsd:complexType name="HTMLType">
94 <xsd:element name="waypoint" type="HTMLWaypointType" maxOccurs="2"/>
95 <xsd:element name="title" type="HTMLTitleType"/>
96 <xsd:element name="start" type="HTMLStartType"/>
97 <xsd:element name="node" type="HTMLNodeType"/>
98 <xsd:element name="segment" type="HTMLSegmentType"/>
99 <xsd:element name="stop" type="HTMLStopType"/>
100 <xsd:element name="total" type="HTMLTotalType"/>
104 <xsd:complexType name="HTMLWaypointType">
105 <xsd:attribute name="type" type="xsd:string"/>
106 <xsd:attribute name="string" type="xsd:string"/>
109 <xsd:complexType name="HTMLTitleType">
110 <xsd:attribute name="text" type="xsd:string"/>
113 <xsd:complexType name="HTMLStartType">
114 <xsd:attribute name="string" type="xsd:string"/>
115 <xsd:attribute name="text" type="xsd:string"/>
118 <xsd:complexType name="HTMLNodeType">
119 <xsd:attribute name="string" type="xsd:string"/>
120 <xsd:attribute name="text" type="xsd:string"/>
123 <xsd:complexType name="HTMLSegmentType">
124 <xsd:attribute name="string" type="xsd:string"/>
125 <xsd:attribute name="text" type="xsd:string"/>
128 <xsd:complexType name="HTMLStopType">
129 <xsd:attribute name="string" type="xsd:string"/>
130 <xsd:attribute name="text" type="xsd:string"/>
133 <xsd:complexType name="HTMLTotalType">
134 <xsd:attribute name="string" type="xsd:string"/>
135 <xsd:attribute name="text" type="xsd:string"/>
138 <!-- The GPX output strings -->
140 <xsd:complexType name="GPXType">
142 <xsd:element name="waypoint" type="GPXWaypointType" maxOccurs="4"/>
143 <xsd:element name="desc" type="GPXDescType"/>
144 <xsd:element name="name" type="GPXNameType"/>
145 <xsd:element name="step" type="GPXStepType"/>
146 <xsd:element name="final" type="GPXFinalType"/>
150 <xsd:complexType name="GPXWaypointType">
151 <xsd:attribute name="type" type="xsd:string"/>
152 <xsd:attribute name="string" type="xsd:string"/>
155 <xsd:complexType name="GPXDescType">
156 <xsd:attribute name="text" type="xsd:string"/>
159 <xsd:complexType name="GPXNameType">
160 <xsd:attribute name="text" type="xsd:string"/>
163 <xsd:complexType name="GPXStepType">
164 <xsd:attribute name="text" type="xsd:string"/>
167 <xsd:complexType name="GPXFinalType">
168 <xsd:attribute name="text" type="xsd:string"/>