rail:timetable

Element Information

Model

Attributes

QName Type Fixed Default Use Inheritable Annotation
code rail:tGenericName optional
for typical, specific abbreviations, used in different systems with the same understanding
description rail:tElementDescription optional
should be interpreted in its elements' context, substantiates the name
id rail:tGenericID required
XML-file-wide unique identity is required for later referencing that element
infrastructureRef rail:tGenericRef optional
name rail:tGenericName optional
should be interpreted in its elements' context (e.g. track/name, vehicle/name)
rollingstockRef rail:tGenericRef optional
version rail:tRailMLVersion optional
only used, if subschema element is outsourced, else use 'version' attribute in root element ('railml')
xml:base xs:anyURI optional
See http://www.w3.org/TR/xmlbase/ for
information about this attribute.
xml:lang xs:language optional
In due course, we should install the relevant ISO 2- and 3-letter
codes as the enumerated possible values . . .
Wildcard: ANY attribute from ANY namespace OTHER than 'http://www.railml.org/schemas/2016'

Used By

Element rail:railml

Source

<xs:element name="timetable">
  <xs:complexType>
    <xs:annotation>
      <xs:documentation source="http://wiki.railml.org/index.php?title=TT:timetable"/>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="rail:tTimetable">
        <xs:sequence>
          <xs:element name="timetablePeriods" type="rail:eTimetablePeriods" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:timetablePeriods"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="operatingPeriods" type="rail:eOperatingPeriods" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:operatingPeriods"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="categories" type="rail:eCategories" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:categories"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="annotations" type="rail:eAnnotations" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:annotations"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="trainParts" type="rail:eTrainParts" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:trainParts"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="trains" type="rail:eTrains" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:trains"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="trainGroups" type="rail:eTrainGroups" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:trainGroups"/>
            </xs:annotation>
          </xs:element>
          <xs:element name="rosterings" type="rail:eRosterings" minOccurs="0">
            <xs:annotation>
              <xs:documentation source="http://wiki.railml.org/index.php?title=TT:rosterings"/>
            </xs:annotation>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:key name="timetablePeriodKey">
    <xs:selector xpath=".//rail:timetablePeriods/rail:timetablePeriod"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <xs:keyref name="timetablePeriod-operatingPeriodKeyref" refer="rail:timetablePeriodKey">
    <xs:selector xpath=".//rail:operatingPeriods/rail:operatingPeriod"/>
    <xs:field xpath="@timetablePeriodRef"/>
  </xs:keyref>
  <xs:keyref name="timetablePeriod-trainPartKeyref" refer="rail:timetablePeriodKey">
    <xs:selector xpath=".//rail:trainParts/rail:trainPart"/>
    <xs:field xpath="@timetablePeriodRef"/>
  </xs:keyref>
  <xs:key name="trainPartKey">
    <xs:selector xpath=".//rail:trainParts/rail:trainPart"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <xs:keyref name="trainPart-trainPartSequenceKeyref" refer="rail:trainPartKey">
    <xs:selector xpath=".//rail:trains/rail:train/rail:trainPartSequence/rail:trainPartRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
  <xs:keyref name="trainPart-blockPartKeyref" refer="rail:trainPartKey">
    <xs:selector xpath=".//rail:blockParts/rail:blockPart"/>
    <xs:field xpath="@trainPartRef"/>
  </xs:keyref>
  <xs:keyref name="trainPart-connectionKeyref" refer="rail:trainPartKey">
    <xs:selector xpath=".//rail:connections/rail:connection"/>
    <xs:field xpath="@trainPartRef"/>
  </xs:keyref>
  <xs:key name="trainKey">
    <xs:selector xpath=".//rail:trains/rail:train"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <xs:keyref name="train-trainGroupKeyref" refer="rail:trainKey">
    <xs:selector xpath=".//rail:trainGroups/rail:trainGroup/rail:trainRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
  <xs:keyref name="train-connectionKeyref" refer="rail:trainKey">
    <xs:selector xpath=".//rail:connections/rail:connection"/>
    <xs:field xpath="@trainRef"/>
  </xs:keyref>
  <xs:key name="blockPartKey">
    <xs:selector xpath=".//rail:blockParts/rail:blockPart"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <xs:keyref name="blockPart-blockPartSequenceKeyref" refer="rail:blockPartKey">
    <xs:selector xpath=".//rail:blocks/rail:block/rail:blockPartSequence/rail:blockPartRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
  <xs:key name="blockKey">
    <xs:selector xpath=".//rail:blocks/rail:block"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <xs:keyref name="block-blockPartSequenceKeyref" refer="rail:blockKey">
    <xs:selector xpath=".//rail:blocks/rail:block/rail:blockPartSequence"/>
    <xs:field xpath="@basicBlockRef"/>
  </xs:keyref>
  <xs:keyref name="block-circulationKeyref" refer="rail:blockKey">
    <xs:selector xpath=".//rail:circulations/rail:circulation"/>
    <xs:field xpath="@blockRef"/>
  </xs:keyref>
  <xs:keyref name="block-circulationNextKeyref" refer="rail:blockKey">
    <xs:selector xpath=".//rail:circulations/rail:circulation"/>
    <xs:field xpath="@nextBlockRef"/>
  </xs:keyref>
  <!-- annotation identity in timetable subschema -->
  <xs:key name="annotationKey">
    <xs:selector xpath=".//rail:annotations/rail:annotation"/>
    <xs:field xpath="@id"/>
  </xs:key>
  <!-- annotation reference in timetable subschema -->
  <xs:keyref name="annotation-trainPartKeyref" refer="rail:annotationKey">
    <xs:selector xpath=".//rail:trainParts/rail:trainPart/rail:annotationRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
  <xs:keyref name="annotation-stopDescriptionKeyref" refer="rail:annotationKey">
    <xs:selector xpath=".//rail:ocpsTT/rail:ocpTT/rail:stopDescription/rail:annotationRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
  <xs:keyref name="annotation-connectionKeyref" refer="rail:annotationKey">
    <xs:selector xpath=".//rail:ocpsTT/rail:ocpTT/rail:connections/rail:connection/rail:annotationRef"/>
    <xs:field xpath="@ref"/>
  </xs:keyref>
</xs:element>

Sample