Dev:changes/2.3/diff
Jump to navigation
Jump to search
Schema differences between railML® 2.2 and railML® 2.3
This page shows schema differences between railML® 2.2 and railML® 2.3. It is intended to support advanced railML® users in comprehending and documenting the differences. Thanks to Milan Wölke of PSI Transcom for compiling the data.
An explanation how to interpret diff output can be found here.
diff --git a/schema/InfrastructureManagerCodes.xml b/schema/InfrastructureManagerCodes.xml deleted file mode 100644 index c88b8e0..0000000 --- a/schema/InfrastructureManagerCodes.xml +++ /dev/null @@ -1,237 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- $Id$ --> -<!-- Copyright (c) railML.org; All Rights Reserved. - This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html - For further information see: http://www.railml.org/ - Content of this file: XML Code List for railML(R) 2.2 Definition of infrastructure manager codes, used by infrastructure sub schema (IS) --> -<infrastructureManagerCodes xmlns="http://www.railml.org/schemas/lists" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.railml.org/schemas/lists ../codelist-schema/InfrastructureManager.xsd"> - <infrastructureManager code="ADF"> - <name>ADIF</name> - <isoCountryCode>ES</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="AVG"> - <name>Albtal-Verkehrs-Gesellschaft mbH</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="BC"> - <name>BC</name> - <isoCountryCode>BY</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="BDK"> - <name>Banedanmark</name> - <isoCountryCode>DK</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="BLS"> - <name>BLS Netz</name> - <isoCountryCode>TR</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="BRE"> - <name>Bayerische Regionaleisenbahn</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="CFL"> - <name>CFL</name> - <isoCountryCode>LU</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="CFM"> - <name>CFM</name> - <isoCountryCode>MD</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="CFR"> - <name>CFR Infrastructura</name> - <isoCountryCode>RO</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="CIE"> - <name>CIE</name> - <isoCountryCode>IE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="DBN"> - <name>DB Netz</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="DRE"> - <name>Deutsche Regionaleisenbahn</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="EDS"> - <name>ΕΔΙΣΥ</name> - <isoCountryCode>GR</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="evb"> - <name>Eisenbahnen und Verkehrsbetriebe Elbe-Weser GmbH</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="EVR"> - <name>EVR</name> - <isoCountryCode>EE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="GKB"> - <name>Graz-Köflacher Bahn und Busbetrieb GmbH</name> - <isoCountryCode>AT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="GyS"> - <name>GySEV</name> - <isoCountryCode>HU</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="HSB"> - <name>Harzer Schmalspurbahnen GmbH</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="HZI"> - <name>HŽ Infrastruktura</name> - <isoCountryCode>HR</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="HzL"> - <name>Hohenzollerische Landesbahn AG</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="InB"> - <name>Infrabel</name> - <isoCountryCode>BE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="JBV"> - <name>JBV</name> - <isoCountryCode>NO</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="KZH"> - <name>KZH</name> - <isoCountryCode>KZ</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="LDz"> - <name>LDz</name> - <isoCountryCode>LV</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="LG"> - <name>LG</name> - <isoCountryCode>LT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="MGB"> - <name>Matterhorn Gotthard Bahn</name> - <isoCountryCode>CH</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="MZ"> - <name>MŽ</name> - <isoCountryCode>MK</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="NEB"> - <name>Niederbarnimer Eisenbahn AG, Berlin</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="NRl"> - <name>Network Rail</name> - <isoCountryCode>GB</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="NKS"> - <name>NKSchl</name> - <isoCountryCode>BG</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ÖBB"> - <name>ÖBB Infra</name> - <isoCountryCode>AT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="OHE"> - <name>Osthannoversche Eisenbahnen AG</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="PLK"> - <name>PLK</name> - <isoCountryCode>PL</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="PrR"> - <name>ProRail</name> - <isoCountryCode>NL</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="REF"> - <name>REFER</name> - <isoCountryCode>PT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RFF"> - <name>RFF</name> - <isoCountryCode>FR</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RFI"> - <name>RFI</name> - <isoCountryCode>IT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RhB"> - <name>Rhätische Bahn</name> - <isoCountryCode>CH</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RHK"> - <name>RHK</name> - <isoCountryCode>FI</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RIG"> - <name>RegioInfra Gesellschaft mbH</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RÖE"> - <name>Raab-Oedenburg-Ebenfurter Eisenbahn</name> - <isoCountryCode>AT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RSE"> - <name>Rhein-Sieg-Eisenbahn GmbH</name> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="RZD"> - <name>РЖД</name> - <isoCountryCode>RU</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="SBB"> - <name>SBB Infrastruktur</name> - <isoCountryCode>CH</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="SLB"> - <name>Salzburger Lokalbahn</name> - <isoCountryCode>AT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="SuH"> - <name>Stern und Hafferl Ges.m.b.H, Gmunden</name> - <isoCountryCode>AT</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="SZD"> - <name>SŽDC</name> - <isoCountryCode>CZ</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="SZI"> - <name>SŽ Infrastruktura</name> - <isoCountryCode>SI</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="TCD"> - <name>TCDD</name> - <isoCountryCode>TR</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ThE"> - <name>Thüringer Eisenbahn GmbH</name> - <validity begin="2001-08-01" /> - <isoCountryCode>DE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="TrV"> - <name>Trafikverket</name> - <isoCountryCode>SE</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="UZ"> - <name>UZ</name> - <isoCountryCode>UA</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="VPE"> - <name>VPE</name> - <isoCountryCode>HU</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ZFB"> - <name>ŽFBH</name> - <isoCountryCode>BA</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ZS"> - <name>ŽS</name> - <isoCountryCode>RS</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ZRS"> - <name>ŽRS</name> - <isoCountryCode>BA</isoCountryCode> - </infrastructureManager> - <infrastructureManager code="ZSR"> - <name>ŽSR</name> - <isoCountryCode>SK</isoCountryCode> - </infrastructureManager> -</infrastructureManagerCodes> diff --git a/schema/Registers.xml b/schema/Registers.xml deleted file mode 100644 index ad61cc8..0000000 --- a/schema/Registers.xml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- $Id$ --> -<!-- Copyright (c) railML.org; All Rights Reserved. - This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html - For further information see: http://www.railml.org/ - Content of this file: XML Code List for railML(R) 2.2 Definition of operation or control point register codes, used by timetable sub schema (TT) --> -<registers xmlns="http://www.railml.org/schemas/lists" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.railml.org/schemas/lists ../codelist-schema/Register.xsd"> - <register code="DB640"> - <name>Dienstbehelf Nr. 640</name> - <organization xml:lang="de-AT">ÖBB</organization> - </register> - <register code="DIDOK"> - <name>Dienststellendokumentation</name> - <organization xml:lang="de-CH">SBB</organization> - </register> - <register code="ENEE"> - <name>ENEE Database Station Code</name> - <organization xml:lang="fr">UIC</organization> - </register> - <register code="IBNR"> - <name>IBNR</name> - <organization xml:lang="de">Europäisches Fahrplanzentrum</organization> - </register> - <register code="RL100"> - <name>Betriebsstellenkürzel</name> - <organization xml:lang="de">DB</organization> - <remarks xml:lang="en">was DS100 or DV100 or Ril100</remarks> - </register> -</registers> diff --git a/schema/TrainProtectionSystems.xml b/schema/TrainProtectionSystems.xml deleted file mode 100644 index e5e3998..0000000 --- a/schema/TrainProtectionSystems.xml +++ /dev/null @@ -1,420 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- $Id$ --> -<!-- Copyright (c) railML.org; All Rights Reserved. - This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html - For further information see: http://www.railml.org/ - Content of this file: XML Code List for railML(R) 2.2 Definition of train protection system codes, used by infrastructure sub schema (IS), rollingstock sub schema (RS) and timetable sub schema (TT) --> -<trainProtectionSystems xmlns="http://www.railml.org/schemas/lists" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.railml.org/schemas/lists ../codelist-schema/TrainProtectionSystem.xsd"> - <trainProtectionSystemsAtTrack> - <trainProtectionSystem code="ALSN"> - <name>Continuous Automatic Train Signalling</name> - <validFor> - <vehicleSystem>ALSN</vehicleSystem> - <vehicleSystem>ALSEN</vehicleSystem> - <vehicleSystem>KLUBU</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="ASFA"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ATB"> - <name /> - <validFor> - <vehicleSystem>ATB</vehicleSystem> - <vehicleSystem>ATBEG</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="ATBNG"> - <name /> - </trainProtectionSystem> - <!-- This name is used for various systems with heterogeneous devices - <trainProtectionSystem code="ATC"> - <name></name> - <validFor> - <vehicleSystem></vehicleSystem> - </validFor> - </trainProtectionSystem> ---> - <trainProtectionSystem code="ATSP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ATSS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="AWS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="BACC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="Crocodile"> - <name /> - <validFor> - <vehicleSystem>Crocodile</vehicleSystem> - <vehicleSystem>Memor</vehicleSystem> - <vehicleSystem>Memor2</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="CIR-ELKE"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="CIR-ELKE2"> - <name /> - <validFor> - <vehicleSystem>CIR-ELKE</vehicleSystem> - <vehicleSystem>CIR-ELKE2</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="CSS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="DATC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="EBICAB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ETCS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="EVM"> - <name /> - <validFor> - <vehicleSystem>EVM120</vehicleSystem> - <vehicleSystem>EVM160</vehicleSystem> - <vehicleSystem>Mirel</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Fahrsp"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="GWATP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="Indusi"> - <name /> - <validFor> - <vehicleSystem>Indusi54</vehicleSystem> - <vehicleSystem>Indusi60</vehicleSystem> - <vehicleSystem>Indusi60R</vehicleSystem> - <vehicleSystem>PZ80</vehicleSystem> - <vehicleSystem>PZB90</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Integra-Signum"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="KHP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="KVB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="LS"> - <name /> - <validFor> - <vehicleSystem>LS</vehicleSystem> - <vehicleSystem>LS90</vehicleSystem> - <vehicleSystem>Mirel</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="LZB"> - <name /> - <validFor> - <vehicleSystem>LZB-L72</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="RS4c"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SAUTC"> - <name /> - <validFor> - <vehicleSystem>SAUTC</vehicleSystem> - <vehicleSystem>SAUTCM</vehicleSystem> - <vehicleSystem>SAUTU</vehicleSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="SCMT"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SELCAB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SHP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SSC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TBL"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TPWS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TVM300"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TVM430"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSI127"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSI90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSL90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZST90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB121"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB122"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB123"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB262"> - <name /> - </trainProtectionSystem> - </trainProtectionSystemsAtTrack> - <trainProtectionSystemsOnVehicle> - <trainProtectionSystem code="ALSEN"> - <name /> - <validFor> - <trackSystem>ALSN</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="ALSN"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ASFA"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ATB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ATBEG"> - <name /> - <validFor> - <trackSystem>ATB</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="ATBNG"> - <name /> - </trainProtectionSystem> - <!-- This name is used for various systems with heterogeneous devices - <trainProtectionSystem code="ATC"> - <name></name> - <validFor> - <trackSystem></trackSystem> - </validFor> - </trainProtectionSystem> ---> - <trainProtectionSystem code="ATSP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ATSS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="AWS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="BACC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="CIR-ELKE"> - <name /> - <validFor> - <trackSystem>LZB</trackSystem> - <trackSystem>CIR-ELKE</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="CIR-ELKE2"> - <name /> - <validFor> - <trackSystem>LZB</trackSystem> - <trackSystem>CIR-ELKE</trackSystem> - <trackSystem>CIR-ELKE2</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Crocodile"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="CSS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="DATC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="EBICAB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ETCS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="EVM120"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="EVM160"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="Fahrsp"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="GWATP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="Indusi54"> - <name /> - <validFor> - <trackSystem>Indusi</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Indusi60"> - <name /> - <validFor> - <trackSystem>Indusi</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Indusi60R"> - <name /> - <validFor> - <trackSystem>Indusi</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Integra-Signum"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="KHP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="KLUBU"> - <name /> - <validFor> - <trackSystem>ALSN</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="KVB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="LS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="LS90"> - <name /> - <validFor> - <trackSystem>LS</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="LZB-L72"> - <name /> - <validFor> - <trackSystem>LZB</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Memor"> - <name /> - <validFor> - <trackSystem>Crocodile</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Memor2"> - <name /> - <validFor> - <trackSystem>Crocodile</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="Mirel"> - <name /> - <validFor> - <trackSystem>EVM</trackSystem> - <trackSystem>LS</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="PZ80"> - <name /> - <validFor> - <trackSystem>Indusi</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="PZB90"> - <name /> - <validFor> - <trackSystem>Indusi</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="RS4c"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SAUTC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SAUTCM"> - <name /> - <validFor> - <trackSystem>SAUTC</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="SAUTU"> - <name /> - <validFor> - <trackSystem>SAUTC</trackSystem> - </validFor> - </trainProtectionSystem> - <trainProtectionSystem code="SCMT"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SELCAB"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SHP"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="SSC"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TBL"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TPWS"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TVM300"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="TVM430"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSI127"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSI90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZSL90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZST90"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB121"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB122"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB123"> - <name /> - </trainProtectionSystem> - <trainProtectionSystem code="ZUB262"> - <name /> - </trainProtectionSystem> - </trainProtectionSystemsOnVehicle> -</trainProtectionSystems> diff --git a/schema/genericRailML.xsd b/schema/genericRailML.xsd index 7c08d2d..007e6cb 100644 --- a/schema/genericRailML.xsd +++ b/schema/genericRailML.xsd @@ -1,12 +1,18 @@ <?xml version="1.0" encoding="UTF-8"?> - <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:dc="http://purl.org/dc/elements/1.1/" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<!-- $Id$ --> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of generic simple types, used by all sub schemas</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of generic simple types, used by all sub schemas</xs:documentation> </xs:annotation> <xs:import namespace="http://purl.org/dc/elements/1.1/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/2008/02/11/dc.xsd"> @@ -162,11 +168,7 @@ <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute"> - <xs:annotation> - <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> - </xs:annotation> - </xs:attributeGroup> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:complexType name="tAdditionalName"> @@ -182,14 +184,10 @@ </xs:attribute> <xs:attribute ref="xml:lang"> <xs:annotation> - <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag</xs:documentation> + <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag; should always be given</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute"> - <xs:annotation> - <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> - </xs:annotation> - </xs:attributeGroup> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:complexType name="tElementWithIDAndNameWithoutAny"> @@ -221,11 +219,7 @@ <xs:documentation>reference is required because it's the purpose of the element</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute"> - <xs:annotation> - <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> - </xs:annotation> - </xs:attributeGroup> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:complexType name="tGlobalElementWithMetadata"> @@ -293,6 +287,18 @@ <xs:fractionDigits value="6" /> </xs:restriction> </xs:simpleType> + + <xs:simpleType name="tThreeLetterString"> + <xs:restriction base="xs:string"> + <xs:pattern value="\w{1,3}" /> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tFiveLetterString"> + <xs:restriction base="xs:string"> + <xs:pattern value="\w{1,5}" /> + </xs:restriction> + </xs:simpleType> <xs:simpleType name="tDigitString"> <xs:annotation> @@ -348,6 +354,15 @@ </xs:restriction> </xs:simpleType> + <xs:simpleType name="tTwelveDigits"> + <xs:annotation> + <xs:documentation>an identification string consisting of exactly twelve digits, e.g. UIC ident numbers</xs:documentation> + </xs:annotation> + <xs:restriction base="rail:tDigitString"> + <xs:length value="12" /> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="tDoubleList"> <xs:annotation> <xs:documentation>an arbitrary list consisting of xs:double values separated by white space; no length restriction</xs:documentation> @@ -377,7 +392,7 @@ <xs:attributeGroup name="anyAttribute"> <xs:anyAttribute namespace="##other"> <xs:annotation> - <xs:documentation>'any attributes' should be deployed in a foreign namespace</xs:documentation> + <xs:documentation>provide an extension point for non-railML 'any attribute' in a foreign namespace</xs:documentation> </xs:annotation> </xs:anyAttribute> </xs:attributeGroup> diff --git a/schema/infrastructure.xsd b/schema/infrastructure.xsd index 04d3a32..58e4762 100644 --- a/schema/infrastructure.xsd +++ b/schema/infrastructure.xsd @@ -1,12 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> - - <xs:annotation> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> + + <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of elements (partially hidden as complex type) for infrastructure sub schema (IS), uses infrastructure types and attribute groups from "xs:include" path</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of elements (partially hidden as complex type) for infrastructure sub schema (IS), uses infrastructure types and attribute groups from "xs:include" path</xs:documentation> </xs:annotation> <xs:include schemaLocation="infrastructureTypes.xsd" /> @@ -238,6 +243,7 @@ </xs:element> <xs:element name="tsi" type="rail:tOcpTsi" minOccurs="0"> <xs:annotation> + <xs:documentation>DEPRECATED. Use register entry "PrimaryLocationCode" instead.</xs:documentation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:tsi" /> </xs:annotation> </xs:element> @@ -670,6 +676,11 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=IS:gaugeChanges" /> </xs:annotation> </xs:element> + <xs:element name="clearanceGaugeChanges" type="rail:eClearanceGaugeChanges" minOccurs="0"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:clearanceGaugeChanges" /> + </xs:annotation> + </xs:element> <xs:element name="geoMappings" type="rail:eGeoMappings" minOccurs="0"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:geoMappings" /> @@ -727,30 +738,82 @@ </xs:element> </xs:sequence> </xs:complexType> + + <xs:complexType name="eCrossedElements"> + <xs:sequence> + <xs:element name="crossedElement" type="rail:tCrossedElement" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:crossedElement" /> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="eTunnel"> + <xs:complexContent> + <xs:extension base="rail:tTunnel"> + <xs:sequence> + <xs:element name="crossedElements" type="rail:eCrossedElements" minOccurs="0" maxOccurs="1"> + <xs:annotation> + <xs:documentation>list the elements that are crossed by this element</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> <xs:complexType name="eTunnels"> <xs:sequence> - <xs:element name="tunnel" type="rail:tTunnel" minOccurs="0" maxOccurs="unbounded"> + <xs:element name="tunnel" type="rail:eTunnel" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:tunnel" /> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> + + <xs:complexType name="eBridge"> + <xs:complexContent> + <xs:extension base="rail:tBridge"> + <xs:sequence> + <xs:element name="crossedElements" type="rail:eCrossedElements" minOccurs="0" maxOccurs="1"> + <xs:annotation> + <xs:documentation>list the elements that are crossed by this element</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> <xs:complexType name="eBridges"> <xs:sequence> - <xs:element name="brigde" type="rail:tBridge" minOccurs="0" maxOccurs="unbounded"> + <xs:element name="brigde" type="rail:eBridge" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:brigde" /> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> + + <xs:complexType name="eLevelCrossing"> + <xs:complexContent> + <xs:extension base="rail:tLevelCrossing"> + <xs:sequence> + <xs:element name="crossedElements" type="rail:eCrossedElements" minOccurs="0" maxOccurs="1"> + <xs:annotation> + <xs:documentation>list the elements that are crossed by this element</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> <xs:complexType name="eLevelCrossings"> <xs:sequence> - <xs:element name="levelCrossing" type="rail:tLevelCrossing" minOccurs="0" maxOccurs="unbounded"> + <xs:element name="levelCrossing" type="rail:eLevelCrossing" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:levelCrossing" /> </xs:annotation> @@ -827,6 +890,16 @@ </xs:element> </xs:sequence> </xs:complexType> + + <xs:complexType name="eClearanceGaugeChanges"> + <xs:sequence> + <xs:element name="clearanceGaugeChange" type="rail:tClearanceGaugeChange" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:clearanceGaugeChange" /> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> <xs:complexType name="eGeoMappings"> <xs:sequence> @@ -900,6 +973,11 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=IS:derailers" /> </xs:annotation> </xs:element> + <xs:element name="trainRadioChanges" type="rail:eTrainRadioChanges" minOccurs="0"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:trainRadios" /> + </xs:annotation> + </xs:element> <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> @@ -1012,6 +1090,16 @@ </xs:sequence> </xs:complexType> + <xs:complexType name="eTrainRadioChanges"> + <xs:sequence> + <xs:element name="trainRadioChange" type="rail:tTrainRadioChange" minOccurs="1" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>start of section with certain train radio system installed at the infrastructure</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="eInfraAttrGroupRefs"> <xs:sequence> <xs:element name="infraAttrGroupRef" type="rail:tElementWithReference" minOccurs="0" maxOccurs="unbounded"> @@ -1062,6 +1150,11 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=IS:gauge" /> </xs:annotation> </xs:element> + <xs:element name="clearanceGauge" type="rail:tClearanceGaugeType" minOccurs="0"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:clearanceGauge" /> + </xs:annotation> + </xs:element> <xs:element name="speeds" type="rail:eSpeeds" minOccurs="0"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:speeds" /> @@ -1072,6 +1165,11 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=IS:epsgCode" /> </xs:annotation> </xs:element> + <xs:element name="trainRadio" type="rail:tTrainRadioAttributes" minOccurs="0"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=IS:trainRadio" /> + </xs:annotation> + </xs:element> <xs:element name="generalInfraAttributes" type="rail:eGeneralInfraAttributes" minOccurs="0"> <xs:annotation> <xs:documentation source="http://wiki.railml.org/index.php?title=IS:generalInfraAttributes" /> diff --git a/schema/infrastructureTypes.xsd b/schema/infrastructureTypes.xsd index 3cf8177..ec81ab1 100644 --- a/schema/infrastructureTypes.xsd +++ b/schema/infrastructureTypes.xsd @@ -1,12 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of attribute groups, simple and complex types, used by infrastructure sub schema (IS)</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of attribute groups, simple and complex types, used by infrastructure sub schema (IS)</xs:documentation> </xs:annotation> <xs:include schemaLocation="railwayUnits.xsd" /> @@ -374,6 +379,9 @@ </xs:complexType> <xs:complexType name="tOcpTsi"> + <xs:annotation> + <xs:documentation>DEPRECATED. Use register entry "PrimaryLocationCode" instead.</xs:documentation> + </xs:annotation> <xs:attribute name="country" type="rail:tTwoDigits" /> <xs:attribute name="location" type="rail:tFiveDigits" /> <xs:attribute name="check" type="rail:tOneDigit" /> @@ -522,7 +530,7 @@ </xs:attribute> <xs:attribute ref="xml:lang"> <xs:annotation> - <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag</xs:documentation> + <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag; should always be given</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="type" type="rail:tOcpNameType"> @@ -773,8 +781,8 @@ <xs:attributeGroup name="aElectrification"> <xs:attribute name="type" type="rail:tElectrificationType" default="none" /> - <xs:attribute name="voltage" type="rail:tVoltageVolt" default="15000" /> - <xs:attribute name="frequency" type="rail:tFrequencyHertz" default="16.667" /> + <xs:attribute name="voltage" type="rail:tVoltageVolt" default="0" /> + <xs:attribute name="frequency" type="rail:tFrequencyHertz" default="0" /> </xs:attributeGroup> <xs:complexType name="tElectrificationChange"> @@ -803,6 +811,10 @@ <xs:attributeGroup name="aGauge"> <xs:attribute name="value" type="rail:tLengthMM" default="1435" /> </xs:attributeGroup> + + <xs:complexType name="tTrainRadioAttributes"> + <xs:attributeGroup ref="rail:aTrainRadioInfrastructure" /> + </xs:complexType> <xs:complexType name="tGaugeChange"> <xs:complexContent> @@ -812,6 +824,16 @@ </xs:complexContent> </xs:complexType> + <xs:complexType name="tClearanceGaugeChange"> + <xs:complexContent> + <xs:extension base="rail:tStrictOrientedElement"> + <xs:sequence> + <xs:element name="clearanceGauge" type="rail:tClearanceGaugeType" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:complexType name="tPowerTransmission"> <xs:attributeGroup ref="rail:aPowerTransmission" /> </xs:complexType> @@ -1039,6 +1061,24 @@ </xs:simpleType> </xs:union> </xs:simpleType> + + <xs:attributeGroup name="aLine"> + <xs:attribute name="type" type="rail:tLineType"> + <xs:annotation> + <xs:documentation>distinguish between different line type: main line, secondary line...</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="infrastructureManagerRef" type="rail:tGenericRef"> + <xs:annotation> + <xs:documentation>reference to the infrastructure manager entry</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="lineCategory" type="rail:tLineClassificationType"> + <xs:annotation> + <xs:documentation>the category of the line according to the EU regulation EN 15528 (other national values are also possible)</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> <xs:complexType name="tLine"> <xs:complexContent> @@ -1051,12 +1091,7 @@ </xs:annotation> </xs:element> </xs:sequence> - <xs:attribute name="type" type="rail:tLineType" /> - <xs:attribute name="infrastructureManagerRef" type="rail:tGenericRef"> - <xs:annotation> - <xs:documentation>reference to the infrastructure manager entry</xs:documentation> - </xs:annotation> - </xs:attribute> + <xs:attributeGroup ref="rail:aLine" /> </xs:extension> </xs:complexContent> </xs:complexType> @@ -1241,12 +1276,29 @@ </xs:annotation> </xs:attribute> <xs:attribute name="status" type="xs:string" /> - <xs:attribute name="vMax" type="rail:tSpeedKmPerHour" use="required"> + <xs:attribute name="vMax" type="rail:tVMax" use="required"> <xs:annotation> <xs:documentation>maximum allowed speed in km/h</xs:documentation> </xs:annotation> </xs:attribute> </xs:attributeGroup> + + <xs:simpleType name="tVMax"> + <xs:union> + <xs:simpleType> + <xs:restriction base="rail:tSpeedKmPerHour" /> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="end" > + <xs:annotation> + <xs:documentation>The value 'end' should be used for marking the end of temporary speed restrictions, otherwise define the next speed aspect.</xs:documentation> + </xs:annotation> + </xs:enumeration> + </xs:restriction> + </xs:simpleType> + </xs:union> + </xs:simpleType> <xs:complexType name="tSpeedInfo"> <xs:attributeGroup ref="rail:aSpeed" /> @@ -1392,6 +1444,85 @@ </xs:extension> </xs:complexContent> </xs:complexType> + + <xs:simpleType name="tCrossedElementType"> + <xs:union> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="highway:cycleway"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:highway%3Dcycleway" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="highway:footway"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:highway%3Dfootway" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="highway:motorway"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:highway%3Dmotorway" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="highway:road"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:highway%3Droad" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="natural:peak"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:natural%3Dpeak" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="natural:ridge"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:natural%3Dridge" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="natural:valley"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:natural%3Dvalley" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="natural:water"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:natural%3Dwater" /> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="waterway:river"> + <xs:annotation> + <xs:documentation source="http://wiki.openstreetmap.org/wiki/Tag:waterway%3Driver" /> + </xs:annotation> + </xs:enumeration> + </xs:restriction> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="rail:tOtherEnumerationValue" /> + </xs:simpleType> + </xs:union> + </xs:simpleType> + + <xs:attributeGroup name="aCrossedElement"> + <xs:attribute name="type" type="rail:tCrossedElementType" use="required"> + <xs:annotation> + <xs:documentation>the type of element crossed by this element</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="pos" type="rail:tLengthM"> + <xs:annotation> + <xs:documentation>the relative position of the center of the crossed element as distance from begin of track</xs:documentation> + <xs:documentation>this value must be within the position range of the parent element</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> + + <xs:complexType name="tCrossedElement"> + <xs:complexContent> + <xs:extension base="rail:tElementWithIDAndName"> + <xs:attributeGroup ref="rail:aCrossedElement" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> <xs:complexType name="tLevelCrossing"> <xs:complexContent> @@ -1428,12 +1559,81 @@ </xs:extension> </xs:complexContent> </xs:complexType> + + <xs:simpleType name="tHorizontalCurveType"> + <xs:union> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="TS_cubicParabola"> + <xs:annotation> + <xs:documentation>begin of transition curve of type cubic parabola</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_parabola4"> + <xs:annotation> + <xs:documentation>begin of transition curve of type 4th degree parabola</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_clothoide"> + <xs:annotation> + <xs:documentation>begin of transition curve of type clothoide</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_WienerBogen"> + <xs:annotation> + <xs:documentation>begin of transition curve of type Wiener Bogen</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_BlossBogen"> + <xs:annotation> + <xs:documentation>begin of transition curve of type Bloss Bogen</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_Sinusoide"> + <xs:annotation> + <xs:documentation>begin of transition curve of type Sinusoide</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="TS_Cosinusoide"> + <xs:annotation> + <xs:documentation>begin of transition curve of type Cosinusoide</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="SC"> + <xs:annotation> + <xs:documentation>end of transition curve (spiral - curve)</xs:documentation> + </xs:annotation> + </xs:enumeration> + </xs:restriction> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="rail:tOtherEnumerationValue" /> + </xs:simpleType> + </xs:union> + </xs:simpleType> + + <xs:attributeGroup name="aRadiusChange"> + <xs:attribute name="radius" type="rail:tRadiusM" use="required"> + <xs:annotation> + <xs:documentation>The radius of the track in [m], which is either valid exactly at this point or from here until the next radiusChange element.</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="superelevation" type="rail:tLengthMM"> + <xs:annotation> + <xs:documentation>The superelevation of the track in [mm], which is either valid exactly at this point of from here until the next radiusChange element.</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="geometryElementDescription" type="rail:tHorizontalCurveType"> + <xs:annotation> + <xs:documentation>Specific geometric description either of this point or of the curve between this and the next radiusChange element (shall be used in particular for transition curves).</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> <xs:complexType name="tRadiusChange"> <xs:complexContent> <xs:extension base="rail:tStrictOrientedElement"> - <xs:attribute name="radius" type="rail:tRadiusM" use="required" /> - <xs:attribute name="superelevation" type="rail:tLengthMM" /> + <xs:attributeGroup ref="rail:aRadiusChange" /> </xs:extension> </xs:complexContent> </xs:complexType> @@ -2139,6 +2339,19 @@ </xs:complexContent> </xs:complexType> + <xs:complexType name="tTrainRadioChange"> + <xs:complexContent> + <xs:extension base="rail:tOrientedElement"> + <xs:attributeGroup ref="rail:aTrainRadioInfrastructure" /> + <xs:attributeGroup ref="rail:anyAttribute"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> + </xs:annotation> + </xs:attributeGroup> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:simpleType name="tDerailKind"> <xs:restriction base="xs:string"> <xs:enumeration value="blockDerail"> @@ -2259,5 +2472,78 @@ <xs:attribute name="name" type="xs:string" use="required" /> <xs:attribute name="value" type="xs:string" use="required" /> </xs:complexType> + + <!-- simple types --> + + <xs:simpleType name="tTrainRadioNetworkSelection"> + <xs:union> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="manually" /> + <xs:enumeration value="byBalise" /> + <xs:enumeration value="automatic" /> + </xs:restriction> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="rail:tOtherEnumerationValue" /> + </xs:simpleType> + </xs:union> + </xs:simpleType> + + <xs:simpleType name="tTrainRadioSystem"> + <xs:union> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="GSM-R" /> + <xs:enumeration value="otherDigitalRadio" /> + <xs:enumeration value="analogLocalRadio" /> + <xs:enumeration value="analogDistantRadio" /> + </xs:restriction> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="rail:tOtherEnumerationValue" /> + </xs:simpleType> + </xs:union> + </xs:simpleType> + + <!-- attribute groups --> + + <xs:attributeGroup name="aTrainRadioInfrastructure"> + <xs:attribute name="radioSystem" type="rail:tTrainRadioSystem" use="required"> + <xs:annotation> + <xs:documentation>the train radio system, e.g. 'GSM-R'</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="networkSelection" type="rail:tTrainRadioNetworkSelection"> + <xs:annotation> + <xs:documentation>defines the procedure of train radio network selection</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="publicEmergency" type="xs:boolean"> + <xs:annotation> + <xs:documentation>defines whether public emergency calls are available</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="broadcastCalls" type="xs:boolean"> + <xs:annotation> + <xs:documentation>defines whether broadcast call functionality is available</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="textMessageService" type="xs:boolean"> + <xs:annotation> + <xs:documentation>defines whether text message service (SMS) is available</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="directMode" type="xs:boolean"> + <xs:annotation> + <xs:documentation>defines whether direct mode train radio is available</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="publicNetworkRoaming" type="xs:boolean"> + <xs:annotation> + <xs:documentation>defines whether roaming via public networks is available</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> </xs:schema> diff --git a/schema/physicalUnits.xsd b/schema/physicalUnits.xsd index 5faf186..858e259 100644 --- a/schema/physicalUnits.xsd +++ b/schema/physicalUnits.xsd @@ -1,12 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of simple types, which represent general units of measure, used by all sub schemas</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of simple types, which represent general units of measure, used by all sub schemas</xs:documentation> </xs:annotation> <xs:include schemaLocation="genericRailML.xsd" /> diff --git a/schema/railML.xsd b/schema/railML.xsd index 94cc257..03a324f 100644 --- a/schema/railML.xsd +++ b/schema/railML.xsd @@ -1,12 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:dc="http://purl.org/dc/elements/1.1/" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of root element "railml", refers to elements of all sub schemas from "xs:include" paths</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of root element "railml", refers to elements of all sub schemas from "xs:include" paths</xs:documentation> </xs:annotation> <xs:include schemaLocation="infrastructure.xsd" /> diff --git a/schema/railwayBaseTypes.xsd b/schema/railwayBaseTypes.xsd index 5ed0fb5..a3285c4 100644 --- a/schema/railwayBaseTypes.xsd +++ b/schema/railwayBaseTypes.xsd @@ -1,12 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> - <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<?xml version="1.0" encoding="UTF-8"?> +<!-- $Id$ --> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:dc="http://purl.org/dc/elements/1.1/" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of attribute groups, simple and complex types, used by more than one sub schema</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of attribute groups, simple and complex types, used by more than one sub schema</xs:documentation> </xs:annotation> <xs:include schemaLocation="genericRailML.xsd" /> @@ -65,6 +70,7 @@ </xs:annotation> <xs:complexType> <xs:attributeGroup ref="rail:aAuxiliaryBrakes" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> </xs:element> </xs:sequence> @@ -289,6 +295,18 @@ <xs:attributeGroup name="aPlaces"> <xs:attribute name="category" type="rail:tPlaceCategory" use="required" /> + <xs:attribute name="tapTsiType9039Code"> + <xs:annotation> + <xs:documentation>Code list for the facility type description based on the directory of passenger code lists for the ERA technical documents used in TAP TSI (B.4.9039)</xs:documentation> + <xs:documentation>Values are outlined in the type9039CodeList (http://www.era.europa.eu/Document-Register/Documents/ERA_TAP_Passenger_Code_List_1.3.1.xsd)</xs:documentation> + <xs:documentation source="http://www.era.europa.eu/Document-Register/Pages/TAP-TSI.aspx" /> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="rail:tDigitString"> + <xs:maxLength value="3"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> <xs:attribute name="count" type="rail:tCounter" use="required"> <xs:annotation> <xs:documentation>count="0" means: there is no place of this category</xs:documentation> @@ -336,6 +354,18 @@ <xs:attributeGroup name="aService"> <xs:attribute name="name" type="rail:tGenericName" use="required" /> + <xs:attribute name="tapTsiType7161Code"> + <xs:annotation> + <xs:documentation>Code list for the special services based on the directory of passenger code lists for the ERA technical documents used in TAP TSI (B.4.7161)</xs:documentation> + <xs:documentation>Values are outlined in the type7161CodeList (http://www.era.europa.eu/Document-Register/Documents/ERA_TAP_Passenger_Code_List_1.3.1.xsd)</xs:documentation> + <xs:documentation source="http://www.era.europa.eu/Document-Register/Pages/TAP-TSI.aspx" /> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="rail:tDigitString"> + <xs:maxLength value="3" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> <xs:attribute name="count" type="rail:tCounter" use="required"> <xs:annotation> <xs:documentation>count="0" means: there is not such a service</xs:documentation> @@ -370,27 +400,73 @@ <xs:simpleType name="tLineClassificationType"> <xs:annotation> - <xs:documentation>according RIV</xs:documentation> + <xs:documentation>according EN 15528 (other national values also possible)</xs:documentation> </xs:annotation> <xs:union> <xs:simpleType> <xs:restriction base="xs:string"> - <xs:enumeration value="A" /> - <xs:enumeration value="B1" /> - <xs:enumeration value="B2" /> - <xs:enumeration value="B3" /> - <xs:enumeration value="B4" /> - <xs:enumeration value="C1" /> - <xs:enumeration value="C2" /> - <xs:enumeration value="C3" /> - <xs:enumeration value="C4" /> - <xs:enumeration value="CM2" /> - <xs:enumeration value="CM3" /> - <xs:enumeration value="CM4" /> - <xs:enumeration value="D2" /> - <xs:enumeration value="D3" /> - <xs:enumeration value="D4" /> - <xs:enumeration value="E" /> + <xs:enumeration value="A"> + <xs:annotation> + <xs:documentation>axle load: 16.0 t, meter load: 5.0 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="B1"> + <xs:annotation> + <xs:documentation>axle load: 18.0 t, meter load: 5.0 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="B2"> + <xs:annotation> + <xs:documentation>axle load: 18.0 t, meter load: 6.4 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="C2"> + <xs:annotation> + <xs:documentation>axle load: 20.0 t, meter load: 6.4 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="C3"> + <xs:annotation> + <xs:documentation>axle load: 20.0 t, meter load: 7.2 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="C4"> + <xs:annotation> + <xs:documentation>axle load: 20.0 t, meter load: 8.0 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="D2"> + <xs:annotation> + <xs:documentation>axle load: 22.5 t, meter load: 6.4 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="D3"> + <xs:annotation> + <xs:documentation>axle load: 22.5 t, meter load: 7.2 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="D4"> + <xs:annotation> + <xs:documentation>axle load: 22.5 t, meter load: 8.0 t/m</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="D4xL"> + <xs:annotation> + <xs:documentation>only valid for locomotives</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="E4"> + <xs:annotation> + <xs:documentation>axle load: 25.0 t, meter load: 8.0 t/m</xs:documentation> + <xs:documentation>only valid for freight cars</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="E5"> + <xs:annotation> + <xs:documentation>axle load: 25.0 t, meter load: 8.8 t/m</xs:documentation> + <xs:documentation>only valid for freight cars</xs:documentation> + </xs:annotation> + </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:simpleType> @@ -399,6 +475,22 @@ </xs:union> </xs:simpleType> + <xs:complexType name="tClearanceGaugeType"> + <xs:annotation> + <xs:documentation>data about all compatible clearance gauges of the vehicle</xs:documentation> + </xs:annotation> + <xs:attributeGroup ref="rail:aClearanceGauge" /> + </xs:complexType> + + <xs:attributeGroup name="aClearanceGauge"> + <xs:attribute name="code" type="xs:string" use="required"> + <xs:annotation> + <xs:documentation>code name of the train clearance gauge</xs:documentation> + <xs:documentation>use value from the separate code definition file 'TrainClearanceGauges.xml'/trainClearanceGauge</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> + <xs:complexType name="tTilting"> <xs:annotation> <xs:documentation>data for tilting mechanism of passenger cars</xs:documentation> @@ -594,5 +686,4 @@ </xs:extension> </xs:complexContent> </xs:complexType> - </xs:schema> diff --git a/schema/railwayUnits.xsd b/schema/railwayUnits.xsd index 4918f7b..3c08f58 100644 --- a/schema/railwayUnits.xsd +++ b/schema/railwayUnits.xsd @@ -1,12 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of simple types, which represent railway specific units of measure and enumeration lists, used by all sub schemas</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of simple types, which represent railway specific units of measure and enumeration lists, used by all sub schemas</xs:documentation> </xs:annotation> <xs:include schemaLocation="physicalUnits.xsd" /> diff --git a/schema/rollingstock.xsd b/schema/rollingstock.xsd index 40d7368..84f83cc 100644 --- a/schema/rollingstock.xsd +++ b/schema/rollingstock.xsd @@ -1,11 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of elements (partially hidden as complex type) for rollingstock sub schema (RS), uses rollingstock types and attribute groups from "xs:include" path</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of elements (partially hidden as complex type) for rollingstock sub schema (RS), uses rollingstock types and attribute groups from "xs:include" path</xs:documentation> </xs:annotation> <xs:include schemaLocation="rollingstockTypes.xsd" /> @@ -128,6 +133,8 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=RS:curvingLimitation" /> </xs:annotation> </xs:element> + <xs:element name="maintenanceIntervals" type="rail:eMaintenanceIntervals" minOccurs="0"> + </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> @@ -141,7 +148,7 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=RS:manufacturer" /> </xs:annotation> </xs:element> - <xs:element name="operator" type="rail:tOperator" minOccurs="0" maxOccurs="unbounded"> + <xs:element name="operator" type="rail:eOperator" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>general operator specific vehicle data</xs:documentation> <xs:documentation source="http://wiki.railml.org/index.php?title=RS:operator" /> @@ -149,6 +156,21 @@ </xs:element> </xs:sequence> </xs:complexType> + + <xs:complexType name="eOperator"> + <xs:complexContent> + <xs:extension base="rail:tOperator"> + <xs:sequence> + <xs:element name="vehicleIdentification" type="rail:tVehicleIdentification" minOccurs="0" maxOccurs="1"> + <xs:annotation> + <xs:documentation>vehicle identification as described by EU paper DV51EN01 annex P or UIC 438</xs:documentation> + <xs:documentation source="http://wiki.railml.org/index.php?title=RS:vehicleIdentification" /> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> <xs:complexType name="eEngine"> <xs:annotation> @@ -581,6 +603,12 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=RS:couplers" /> </xs:annotation> </xs:element> + <xs:element name="trainClearanceGauge" type="rail:tClearanceGaugeType" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>data about all compatible clearance gauges of the vehicle</xs:documentation> + <xs:documentation source="http://wiki.railml.org/index.php?title=RS:trainClearanceGauge" /> + </xs:annotation> + </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> @@ -728,6 +756,13 @@ </xs:extension> </xs:complexContent> </xs:complexType> + + <xs:complexType name="eMaintenanceIntervals"> + <xs:sequence> + <xs:element name="maintenanceInterval" type="rail:tMaintenanceInterval" minOccurs="0"> + </xs:element> + </xs:sequence> + </xs:complexType> <xs:complexType name="eLoadLimitMatrix"> <xs:complexContent> diff --git a/schema/rollingstockTypes.xsd b/schema/rollingstockTypes.xsd index 678af0e..9ed79ae 100644 --- a/schema/rollingstockTypes.xsd +++ b/schema/rollingstockTypes.xsd @@ -1,11 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of attribute groups, simple and complex types, used by rollingstock sub schema (RS)</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of attribute groups, simple and complex types, used by rollingstock sub schema (RS)</xs:documentation> </xs:annotation> <xs:include schemaLocation="railwayUnits.xsd" /> @@ -52,6 +56,11 @@ <xs:documentation>reference to 'id' in vehicle data in order to obtain all data common for the vehicle family not explicitly specified in this element of an individual vehicle</xs:documentation> </xs:annotation> </xs:attribute> + <xs:attribute name="vehicleCategory" type="rail:tVehicleCategoryType"> + <xs:annotation> + <xs:documentation>basic vehicle category used for train formation planning</xs:documentation> + </xs:annotation> + </xs:attribute> <xs:attribute name="axleSequence" type="xs:string"> <xs:annotation> <xs:documentation>description of axle sequence</xs:documentation> @@ -148,6 +157,23 @@ </xs:annotation> </xs:attribute> </xs:attributeGroup> + + <xs:simpleType name="tVehicleCategoryType"> + <xs:union> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="coach" /> + <xs:enumeration value="motorCoach" /> + <xs:enumeration value="controlCabCoach" /> + <xs:enumeration value="motorVehicles" /> + <xs:enumeration value="freightWagon" /> + </xs:restriction> + </xs:simpleType> + <xs:simpleType> + <xs:restriction base="rail:tOtherEnumerationValue" /> + </xs:simpleType> + </xs:union> + </xs:simpleType> <xs:complexType name="tManufacturer"> <xs:annotation> @@ -205,6 +231,31 @@ </xs:attribute> </xs:attributeGroup> + <xs:complexType name="tVehicleIdentification"> + <xs:annotation> + <xs:documentation>container for the vehicle identification described by EU paper DV51EN01 annex P or UIC 438</xs:documentation> + </xs:annotation> + <xs:attributeGroup ref="rail:aVehicleIdentification" /> + </xs:complexType> + + <xs:attributeGroup name="aVehicleIdentification"> + <xs:attribute name="uicIdentNumber" type="rail:tTwelveDigits" use="required"> + <xs:annotation> + <xs:documentation>the UIC identification number with 12 digits</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="countryCode" type="rail:tThreeLetterString"> + <xs:annotation> + <xs:documentation>code for the registered country (one to three letters)</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="vehicleKeeperMarking" type="rail:tFiveLetterString"> + <xs:annotation> + <xs:documentation>code for the vehicle ownwer (one to five letters)</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> + <xs:complexType name="tEngine"> <xs:annotation> <xs:documentation>engine data about a motor car or locomotive</xs:documentation> @@ -1924,6 +1975,30 @@ </xs:annotation> </xs:attribute> </xs:attributeGroup> + + <xs:complexType name="tMaintenanceInterval"> + <xs:annotation> + <xs:documentation>description of a regular maintenance task</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="rail:tElementWithIDAndName"> + <xs:attributeGroup ref="rail:aMaintenanceInterval" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:attributeGroup name="aMaintenanceInterval"> + <xs:attribute name="maximumIntervalDays" type="rail:tCounter"> + <xs:annotation> + <xs:documentation>maximum number of days for the interval until the task is due</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="maximumIntervalDistance" type="rail:tLengthKM"> + <xs:annotation> + <xs:documentation>maximum number of mileage in km for the interval until the task is due</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:attributeGroup> <xs:simpleType name="tPropulsionControlType"> <xs:union> diff --git a/schema/timetable.xsd b/schema/timetable.xsd index 2a6c84d..30d721b 100644 --- a/schema/timetable.xsd +++ b/schema/timetable.xsd @@ -1,12 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> - <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<!-- $Id$ --> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of elements (partially hidden as complex type) for timetable sub schema (TT), uses timetable types and attribute groups from "xs:include" path</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of elements (partially hidden as complex type) for timetable sub schema (TT), uses timetable types and attribute groups from "xs:include" path</xs:documentation> </xs:annotation> <xs:include schemaLocation="timetableTypes.xsd" /> @@ -282,6 +286,11 @@ <xs:complexType name="ePassengerFacilityTT"> <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> <xs:element name="places" type="rail:tPlacesTT" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>list of place capacity of the vehicle divided by particular categories</xs:documentation> @@ -337,7 +346,7 @@ <xs:complexContent> <xs:extension base="rail:tAnnotation"> <xs:sequence> - <xs:element name="text" type="rail:eAnnotationText" maxOccurs="unbounded"> + <xs:element name="text" type="rail:tAnnotationText" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>could be the instructions to drivers, used by an AVL (de:RBL) system, or the message on printouts</xs:documentation> <xs:documentation source="http://wiki.railml.org/index.php?title=TT:text_annotation" /> @@ -348,12 +357,6 @@ </xs:complexContent> </xs:complexType> - <xs:complexType name="eAnnotationText"> - <xs:complexContent> - <xs:extension base="rail:tAnnotationText" /> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="eTrainParts"> <xs:sequence> <xs:element name="trainPart" type="rail:eTrainPart" maxOccurs="unbounded"> @@ -484,6 +487,7 @@ <xs:complexContent> <xs:extension base="rail:tConnectionTT"> <xs:sequence> + <xs:element name="externalReference" type="rail:eExternalReference" minOccurs="0"/> <xs:element name="annotationRef" type="rail:tAnnotationRef" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>refers to the id attribute of an annotation element</xs:documentation> @@ -495,6 +499,38 @@ </xs:complexContent> </xs:complexType> + <xs:complexType name="eExternalReference"> + <xs:sequence> + <xs:element name="tafTapTsiTrainID" type="rail:eTapTsiTransportOperationalIdentifier" minOccurs="0" /> + <xs:element name="trainNumber" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element name="organizationalUnitBinding" type="rail:eOrganizationalUnitBinding" minOccurs="0"> + <xs:annotation> + <xs:documentation source="http://wiki.railml.org/index.php?title=TT:organizationalUnitBinding"/> + </xs:annotation> + </xs:element> + </xs:sequence> + <xs:attribute name="trainNumber" type="xs:string"/> + </xs:complexType> + </xs:element> + <xs:element name="lineNumber" minOccurs="0"> + <xs:complexType> + <xs:attribute name="lineNumber" type="xs:string"/> + </xs:complexType> + </xs:element> + <xs:element name="information" minOccurs="0"> + <xs:complexType> + <xs:attribute name="description" type="xs:string"> + <xs:annotation> + <xs:documentation>Enter the description of the connection - e.g. 'Connection to Berlin via Wolfsburg'</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="eStatistics"> <xs:sequence> <xs:element name="statistic" type="rail:eStatistic" minOccurs="0" maxOccurs="unbounded"> @@ -640,6 +676,12 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=TT:trainPartSequence" /> </xs:annotation> </xs:element> + <xs:element name="tafTapTsiTrainID" type="rail:eTapTsiTransportOperationalIdentifier" minOccurs="0" maxOccurs="1"> + <xs:annotation> + <xs:documentation>Optional information corresponding to the TAF/TAP TSI train ID.</xs:documentation> + <xs:documentation source="https://wiki.railml.org/index.php?title=TT:tafTapTsiTrainID" /> + </xs:annotation> + </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> @@ -678,6 +720,13 @@ <xs:complexType name="eBrakeUsage"> <xs:complexContent> <xs:extension base="rail:tBasicBrakeType"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aBrakeUsage" /> </xs:extension> </xs:complexContent> @@ -787,7 +836,11 @@ <xs:documentation source="http://wiki.railml.org/index.php?title=TT:blockPart" /> </xs:annotation> </xs:element> - <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" /> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>DEPRECATED: The blockParts element is only the container for blockPart and shall not be extended.</xs:documentation> + </xs:annotation> + </xs:any> </xs:sequence> </xs:complexType> @@ -801,4 +854,11 @@ </xs:sequence> </xs:complexType> + <!-- TAP TSI elements for the unique train ID --> + <xs:complexType name="eTapTsiTransportOperationalIdentifier"> + <xs:complexContent> + <xs:extension base="rail:tTapTsiCompositIdentifierOperationalType"/> + </xs:complexContent> + </xs:complexType> + </xs:schema> diff --git a/schema/timetableTypes.xsd b/schema/timetableTypes.xsd index a5781b0..986c8aa 100644 --- a/schema/timetableTypes.xsd +++ b/schema/timetableTypes.xsd @@ -1,12 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> - <!-- $Id$ --> -<xs:schema xmlns:rail="http://www.railml.org/schemas/2013" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://www.railml.org/schemas/2013" elementFormDefault="qualified" version="2.2"> +<!-- $Id$ --> +<xs:schema xmlns:rail="http://www.railml.org/schemas/2016" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + targetNamespace="http://www.railml.org/schemas/2016" + elementFormDefault="qualified" + version="2.3"> <xs:annotation> <xs:documentation>Copyright (c) railML.org; All Rights Reserved.</xs:documentation> - <xs:documentation>This work is licensed under a Creative Commons Attribution 2.0 License. http://www.railml.org/index.php/license.html</xs:documentation> - <xs:documentation>For further information see: http://www.railml.org/</xs:documentation> - <xs:documentation>Content of this file: XML Schema for railML(R) 2.2 Definition of attribute groups, simple and complex types, used by timetable sub schema (TT)</xs:documentation> + <xs:documentation>This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivs 3.0 Unported License with additional license conditions of railML.org.</xs:documentation> + <xs:documentation>For further information see: https://www.railml.org/en/user/licence.html</xs:documentation> + <xs:documentation>Content of this file: XML Schema for railML(R) 2.3 Definition of attribute groups, simple and complex types, used by timetable sub schema (TT)</xs:documentation> </xs:annotation> <xs:include schemaLocation="railwayUnits.xsd" /> @@ -51,6 +56,7 @@ <xs:complexType name="tSpecialService"> <xs:attributeGroup ref="rail:aSpecialService" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aSpecialService"> @@ -61,8 +67,16 @@ </xs:attributeGroup> <xs:complexType name="tOperatingDay"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aOperatingCode" /> <xs:attributeGroup ref="rail:aTimePeriod" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aOperatingCode"> @@ -77,6 +91,7 @@ <xs:complexType name="tOperatingDayDeviance"> <xs:attributeGroup ref="rail:aOperatingCode" /> <xs:attributeGroup ref="rail:aOperatingDayDeviance" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aOperatingDayDeviance"> @@ -86,6 +101,7 @@ <xs:complexType name="tHoliday"> <xs:attributeGroup ref="rail:aHoliday" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aHoliday"> @@ -107,7 +123,15 @@ </xs:attributeGroup> <xs:complexType name="tFormationTT"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aFormationTT" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aFormationTT"> @@ -146,7 +170,6 @@ <xs:documentation>indicates, that the formation is not as referenced but in the reversed order</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tPlacesTT"> @@ -159,10 +182,19 @@ <xs:documentation>is needed to define a mandatory reservation for "places" in general and for bicycles in special</xs:documentation> </xs:annotation> </xs:attribute> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:complexType name="tEquipment"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aEquipment" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aEquipment"> @@ -173,11 +205,11 @@ </xs:attribute> <xs:attribute name="uses" type="xs:boolean" /> <xs:attribute name="description" type="xs:string" /> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tEtcsTT"> <xs:attributeGroup ref="rail:aETCS" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aBrakeUsage"> @@ -201,6 +233,7 @@ <xs:complexType name="tBooking"> <xs:attributeGroup ref="rail:aBooking" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aBooking"> @@ -263,7 +296,16 @@ <xs:attribute name="remarks" type="xs:string" /> <xs:attribute name="timetablePeriodRef" type="rail:tGenericRef" /> <xs:attribute name="categoryRef" type="rail:tGenericRef" /> - <xs:attribute name="operator" type="xs:string" /> + <xs:attribute name="operator" type="xs:string" > + <xs:annotation> + <xs:documentation>DEPRECATED: the "organizationalUnitBinding" should be used instead</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="cancellation" type="xs:boolean"> + <xs:annotation> + <xs:documentation>indicates, that this trainPart is no longer valid and should be canceled out of a previously delivered set</xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:complexType name="tTrain"> @@ -285,6 +327,11 @@ <xs:documentation>a free attribute for further descriptions</xs:documentation> </xs:annotation> </xs:attribute> + <xs:attribute name="cancellation" type="xs:boolean"> + <xs:annotation> + <xs:documentation>indicates, that this train is no longer valid and should be canceled out of a previously delivered set</xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:complexType name="tTrainGroup"> @@ -302,7 +349,15 @@ </xs:attributeGroup> <xs:complexType name="tTrainPartSequence"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aTrainPartSequence" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aTrainPartSequence"> @@ -313,7 +368,6 @@ <xs:documentation>the category of a train which could differ (by its meaning) from a train part category</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tTrainPartRef"> @@ -355,6 +409,7 @@ <xs:complexType name="tOcpTT"> <xs:attributeGroup ref="rail:aOcpTT" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aOcpTT"> @@ -408,17 +463,12 @@ <xs:documentation>is the driving time used inside a station</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tArrivalDepartureTimes"> <xs:attributeGroup ref="rail:aTimesScope" /> <xs:attributeGroup ref="rail:aArrivalDepartureTimes" /> - <xs:attributeGroup ref="rail:anyAttribute"> - <xs:annotation> - <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> - </xs:annotation> - </xs:attributeGroup> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aArrivalDepartureTimes"> @@ -434,6 +484,7 @@ <xs:complexType name="tStopTimes"> <xs:attributeGroup ref="rail:aStopTimes" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aStopTimes"> @@ -445,11 +496,19 @@ </xs:attributeGroup> <xs:complexType name="tConnectionTT"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aConnectionTT" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aConnectionTT"> - <xs:attribute name="trainRef" type="rail:tGenericRef" use="required" /> + <xs:attribute name="trainRef" type="rail:tGenericRef" /> <xs:attribute name="minConnTime" type="xs:duration" /> <xs:attribute name="maxConnTime" type="xs:duration" /> <xs:attribute name="connOperation" type="rail:tConnOperation" /> @@ -468,7 +527,26 @@ <xs:documentation>refers to a trainPart element, which is more specific than the trainRef</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute" /> + <xs:attribute name="operatingPeriodRef" type="rail:tGenericRef"> + <xs:annotation> + <xs:documentation>references a reduction of the operating days of the connection compared to the operating days of the train part</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="notGuaranteed" type="xs:boolean"> + <xs:annotation> + <xs:documentation>indicates if the connection could not be guaranteed</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="nonConnection" type="xs:boolean"> + <xs:annotation> + <xs:documentation>indicates that no such connection should be generated or communicated, in order to lead passengers to the appropriate connection</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="samePlatform" type="xs:boolean"> + <xs:annotation> + <xs:documentation>indicates if the connection is on the same platform</xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:complexType name="tAnnotationText"> @@ -479,27 +557,26 @@ <xs:documentation>natural language identification according to http://www.w3.org/TR/xml/#sec-lang-tag</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attributeGroup ref="rail:anyAttribute"> - <xs:annotation> - <xs:documentation>provide an extension point for non-railML attributes in foreign namespace</xs:documentation> - </xs:annotation> - </xs:attributeGroup> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="tStatistic"> - <xs:attributeGroup ref="rail:aStatistic" /> - </xs:complexType> - - <xs:attributeGroup name="aStatistic"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:anyAttribute" /> - </xs:attributeGroup> - + </xs:complexType> <xs:complexType name="tStatisticTimes"> <xs:attributeGroup ref="rail:aArrivalDepartureTimes" /> <xs:attributeGroup ref="rail:aArrivalDepartureDelay" /> <xs:attribute name="stopTime" type="xs:duration" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aArrivalDepartureDelay"> @@ -509,10 +586,12 @@ <xs:complexType name="tStandardDeviationTimes"> <xs:attributeGroup ref="rail:aArrivalDepartureDelay" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:complexType name="tStatisticAnalyses"> <xs:attributeGroup ref="rail:aStatisticAnalyses" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aStatisticAnalyses"> @@ -523,7 +602,15 @@ </xs:attributeGroup> <xs:complexType name="tSectionTT"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aSectionTT" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aSectionTT"> @@ -534,7 +621,6 @@ <xs:attribute name="remarks" type="xs:string" /> <xs:attribute name="percentageSupplement" type="xs:decimal" /> <xs:attribute name="distance" type="rail:tLengthM" /> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tTrackRef"> @@ -579,6 +665,7 @@ <xs:complexType name="tRunTimes"> <xs:attributeGroup ref="rail:aRunTimes" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aRunTimes"> @@ -588,6 +675,13 @@ </xs:attributeGroup> <xs:complexType name="tStopDescription"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aStopDescription" /> <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> @@ -690,7 +784,15 @@ </xs:attributeGroup> <xs:complexType name="tBlockPartSequence"> + <xs:sequence> + <xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>provide an extension point for non-railML elements in foreign namespace</xs:documentation> + </xs:annotation> + </xs:any> + </xs:sequence> <xs:attributeGroup ref="rail:aBlockPartSequence" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aBlockPartSequence"> @@ -711,7 +813,6 @@ </xs:annotation> </xs:attribute> <xs:attribute name="basicBlockRef" type="rail:tGenericRef" /> - <xs:attributeGroup ref="rail:anyAttribute" /> </xs:attributeGroup> <xs:complexType name="tBlockPartRef"> @@ -746,6 +847,7 @@ <xs:complexType name="tCirculation"> <xs:attributeGroup ref="rail:aCirculation" /> + <xs:attributeGroup ref="rail:anyAttribute" /> </xs:complexType> <xs:attributeGroup name="aCirculation"> @@ -1055,4 +1157,89 @@ </xs:union> </xs:simpleType> + <!-- TAP TSI elements for the unique train ID --> + <xs:complexType name="tTapTsiCompositIdentifierOperationalType"> + <xs:attributeGroup ref="rail:aTapTsiCompositIdentifierOperationalType"/> + </xs:complexType> + + <xs:attributeGroup name="aTapTsiCompositIdentifierOperationalType"> + <xs:annotation> + <xs:documentation>Used for unique identification of the objects handled in the messages such as train, path, path request or case refernce.</xs:documentation> + </xs:annotation> + <xs:attribute name="objectType" type="rail:tTapTsiObjectType" use="required"/> + <xs:attribute name="companyCode" type="rail:tCompanyCode" use="required"/> + <xs:attribute name="core" type="rail:tTapTsiCore" use="required"/> + <xs:attribute name="variant" type="rail:tTapTsiVariant" use="required"/> + <xs:attribute name="timetableYear" type="rail:tTapTsiTimetableYear" use="required"/> + <xs:attribute name="startDate" type="rail:tTapTsiStartDate"/> + </xs:attributeGroup> + + <xs:simpleType name="tTapTsiObjectType"> + <xs:annotation> + <xs:documentation>Provides a possibility for differentiantion between the objects: Train, Path, Case Reference and Path Request</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:minLength value="2"/> + <xs:maxLength value="2"/> + <xs:pattern value="[0-9A-Z]{2}"/> + <xs:enumeration value="TR"/> + <xs:enumeration value="PA"/> + <xs:enumeration value="CR"/> + <xs:enumeration value="PR"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tCompanyCode"> + <xs:annotation> + <xs:documentation>Company code according TAP TSI B.8 and UIC IRS/leaflet 920-1:2006</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="0001"/> + <xs:maxInclusive value="9999"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tTapTsiCore"> + <xs:annotation> + <xs:documentation>It is the main part of identifier and is determent by the company that creates it.</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:minLength value="12"/> + <xs:whiteSpace value="replace"/> + <xs:maxLength value="12"/> + <xs:pattern value="[\-\*0-9A-Z]{12}"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tTapTsiVariant"> + <xs:annotation> + <xs:documentation>The variant shows a relationship between two identifiers referring to the same business case</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:minLength value="2"/> + <xs:maxLength value="2"/> + <xs:pattern value="[0-9A-Z]{2}"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tTapTsiTimetableYear"> + <xs:annotation> + <xs:documentation>Refers to the timetable period in which the business will be carried out</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="2012"/> + <xs:maxInclusive value="2097"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="tTapTsiStartDate"> + <xs:annotation> + <xs:documentation>The start of the date/time in effect</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:date"> + <xs:minInclusive value="2012-01-01"/> + <xs:maxInclusive value="2097-12-31"/> + </xs:restriction> + </xs:simpleType> + </xs:schema>