Schema railml3.xsd


schema location ..\..\xsd\schema\railml3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Elements  Complex types  Attr. groups 
railML  railML  aRailML 


schema location ..\..\xsd\schema\timetable3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Elements  Complex types 
Timetable  Timetable 


schema location ..\..\xsd\schema\rollingstock3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Elements  Complex types 
Rollingstock  Rollingstock 


schema location ..\..\xsd\schema\interlocking3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Complex types  Simple types 
ActivationCondition  tAndOr 
ApproachStartingDetector  tBitPatternAny 
AspectRelatedLevelCrossingDelay  tContactState 
AspectRelation  tCrossingPosition 
AssetAndGivenState  tDerailingPosition 
AssetAndState  tDetectorStates 
AssetsForIL  tDetectorTypeList 
ATPdevice  tDetectorTypeListExt 
ATPdevices  tExtentOfControl 
CombinedRoute  tGenericAspectList 
CombinedRoutes  tGenericResetStrategyList 
Configuration  tGenericRouteTypeExt 
ConflictingRoute  tGenericRouteTypeList 
ConflictingRoutes  tGroupingTypes 
ConflictReason  tGroupingTypesExt 
ControlledAssets  tIxlInterfaceLocationTypeList 
ControlledSignalBox  tIxlTechnologyTypeList 
Controller  tIxlTechnologyTypeListExt 
Controllers  tLevelCrossingControlTypes 
CrossingAndGivenPosition  tLevelCrossingState 
CrossingAndPosition  tLockState 
CrossingInPosition  tMustOrShould 
DangerPoint  tOverlapReleaseCondition 
DangerPoints  tProtectingSideList 
DerailerAndGivenPosition  tProving 
DerailerAndPosition  tRouteConflictTypes 
DerailerIL  tRouteConflictTypesExt 
DerailerInPosition  tSectionVacancy 
DerailersIL  tSignalFunctionList 
DestinationPoints  tSignalFunctionListExt 
DetectorAndGivenState  tSignalVoltageModes 
DetectorAndState  tSwitchPosition 
DetectorInState  tTvdSectionTechnologyType 
DetectorTypes  tTvdSectionTechnologyTypeExt 
ElementGroup 
ElementGroupingTypes 
EntityIL 
EntityILref 
GenericAspect 
GenericDetector 
GenericDetectors 
GenericIM 
GenericIMs 
GenericResetStrategy 
GenericRouteType 
GenericTypes 
InitStatus 
InputOutput 
Interface 
Interfaces 
Interlocking 
InterlockingInterface 
Itineraries 
Key 
KeyLockIL 
KeyLockInState 
KeyLocksIL 
Keys 
LevelCrossingAndGivenState 
LevelCrossingAndState 
LevelCrossingDeactivator 
LevelCrossingIL 
LevelCrossingInState 
LevelCrossingsIL 
LevelCrossingTypeList 
LocalOperationArea 
LocalOperationAreas 
LockAndGivenState 
LockAndState 
LogicalDevice 
MovableCrossing 
MovableCrossings 
MovableElement 
Overlap 
OverlapRelease 
OverlapReleaseTimer 
Overlaps 
PartialRoute 
PartialRoutes 
PermissionZone 
PermissionZones 
PowerSuppliesIL 
PowerSupplyIL 
RestrictedArea 
RestrictedAreas 
Route 
RouteActivationSection 
RouteEntry 
RouteExit 
RouteRelation 
RouteRelations 
RouteReleaseGroupAhead 
RouteReleaseGroupRear 
RouteReleaseGroupsAhead 
RouteReleaseGroupsRear 
Routes 
SectionAndGivenVacancy 
SectionAndVacancy 
ShuntingZone 
ShuntingZones 
SignalAndAspect 
SignalAndGivenAspect 
SignalBox 
SignalBoxes 
SignalDelayTime 
SignalIL 
SignalPlan 
SignalsIL 
SignalWithAspect 
SwitchAndGivenPosition 
SwitchAndPosition 
SwitchesIL 
SwitchIL 
SwitchInPosition 
SwitchPositionRestriction 
SwitchRelatedDelay 
SystemAssetConnectedToIL 
tElementWithIDandDesignator 
TrackAsset 
TrackAssetConnectedToIL 
TvdSection 
TvdSections 
WorkZone 
WorkZones 


schema location ..\..\xsd\schema\infrastructure3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Complex types  Simple types  Attr. groups 
AreaProjection  tBaliseGroupType  aServiceSection 
Balise  tBaliseGroupTypeExt  aStoppingPlace 
Balises  tBaliseType  aTrackbed 
Border  tBallastType  aTrainDetectionElement 
Borders  tBorderType  aTrainProtection 
BufferStop  tBorderTypeExt  aVerbalConstraint 
BufferStops  tBufferStopType 
ContactWire  tBufferStopTypeExt 
CrossedElement  tContactLineType 
Crossing  tContactLineTypeExt 
Crossings  tContactStripMaterial 
DerailerIS  tContactStripMaterialList 
DerailersIS  tCourse 
Electrifications  tCrossedElementType 
ElectrificationSection  tCrossedElementTypeExt 
ElementProjection  tCrossingConstructionType 
ElementProjectionSymbol  tCrossingConstructionTypeExt 
ElementState  tCurrentSystem 
EnergyCatenary  tDetectedObject 
EnergyPantograph  tDetectorLayout 
EnergyRollingstock  tDetectorMedium 
EntityIS  tElementProjectionSymbolOrientation 
FunctionalInfrastructure  tElementProjectionSymbolOrientationExt 
FunctionalInfrastructureEntity  tExtendedDirection 
Geometry  tGradientCurveType 
GeometryCurve  tHorizontalCurveType 
GeometryEntity  tHorizontalCurveTypeExt 
GeometryPoint  tInfrastructureState 
GeometryPoints  tInfrastructureStateExt 
GmlLocations  tJointsType 
GradientCurve  tLengthType 
GradientCurves  tLengthTypeExt 
HorizontalCurve  tLevelCrossingActivation 
HorizontalCurves  tLevelCrossingObstacleDetection 
Infrastructure  tLevelCrossingProtectionAcoustic 
InfrastructureState  tLevelCrossingProtectionAcousticExt 
InfrastructureStates  tLevelCrossingProtectionBarrier 
InfrastructureVisualizations  tLevelCrossingProtectionBarrierExt 
KeyLockIS  tLevelCrossingProtectionLights 
KeyLocksIS  tLevelCrossingProtectionLightsExt 
Length  tLevelCrossingSupervision 
LevelCrossingIS  tLineCategory 
LevelCrossingProtection  tLineCategoryExt 
LevelCrossingsIS  tLineCoordinateTrack 
Line  tLineTrafficCode 
LinearProjection  tLineTrafficCodeExt 
LineCombinedTransportCode  tLineType 
LineLayout  tMaxTrainCurrentOperation 
LinePerformance  tMaxTrainCurrentValid 
Lines  tNumberOfTracks 
LineTrafficCode  tOperationalTrainType 
LineTypeCoordinate  tOpOperationalType 
LoadingGauge  tOpOperationalTypeExt 
LoadingGauges  tOpTrafficType 
LocationNetwork  tOpTrafficTypeExt 
MaxTrainCurrent  tPantoHeadType 
NetElement  tPantoHeadTypeList 
NetElements  tPlaneTrackPosition 
NetRelation  tRestrictionAreaType 
NetRelations  tRestrictionAreaTypeExt 
Network  tRSFireCategoryType 
Networks  tSide 
OpenEnd  tSignalCatenaryType 
OpEquipment  tSignalConstructionType 
OperationalPoint  tSignalConstructionTypeExt 
OperationalPoints  tSignalLevelCrossingType 
OpOperation  tSignalSpeedType 
OpOperations  tSleepersType 
OverCrossing  tSwitchType 
OverCrossings  tSwitchTypeExt 
PantographSpacing  tTrackType 
PhaseSeparationSection  tTrainDetectionElementType 
PhysicalFacilities  tTrainMovementType 
Platform  tTrainMovementTypeExt 
Platforms  tTrainProtectionMedium 
PointTypeCoordinate  tTrainProtectionMonitoring 
ProjectionCoordinate  tTrainRadioNetworkSelection 
RestrictionArea  tTrainRadioNetworkSelectionExt 
RestrictionAreas  tTrainRadioSystem 
ServiceSection  tTrainRadioSystemExt 
ServiceSections  tTrainRelation 
SignalAnnouncement  tTSIPantoHeadType 
SignalCatenary  tTSIPantoHeadTypeList 
SignalConstruction  tVMax 
SignalDanger  tVMaxEnd 
SignalEtcs  tWiderTrackPosition 
SignalInformation 
SignalIS 
SignalLevelCrossing 
SignalMilepost 
SignalRadio 
SignalsIS 
SignalSpeed 
SignalStopPost 
SignalTrainMovement 
SignalVehicleEquipment 
SignalX 
Speeds 
SpeedSection 
SpotProjection 
StatesBaseElement 
StoppingPlace 
StoppingPlaces 
SwitchCrossingBranch 
SwitchesIS 
SwitchIS 
SystemSeparationSection 
Topology 
Track 
TrackBed 
TrackBeds 
TrackGauge 
TrackGauges 
TrackNode 
Tracks 
TrainDetectionElement 
TrainDetectionElements 
TrainMovement 
TrainProtectionElement 
TrainProtectionElements 
TrainRadio 
TrainRadios 
UnderCrossing 
UnderCrossings 
Visualization 
VisualizationBaseElement 
WeightLimit 
WeightLimits 
XCrossing 


schema location ..\..\xsd\schema\common3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Complex types  Simple types  Attr. groups 
CalendarTimePeriod  tAcceleration  anyAttribute 
CalendarTimePeriodWithBitmask  tAccelerationMeterPerSquareSec  aSpeedProfile 
ClockTimePeriod  tAirBrakeApplicationDirection 
Common  tAngleDeg 
Concessionaire  tAngleDegQuadrant 
Contractor  tArea 
Customer  tAreaSquareM 
DateWithBitmask  tAreaSquareMM 
Designator  tBitmaskAny 
ElectrificationSystem  tBitmaskWeek 
ElectrificationSystems  tBrakePercentage 
ElemBasedPeriodRule  tBrakeType 
External  tBrakeTypeExt 
GenericOperatingPeriodDescription  tCantDeficiency 
GenericTimePeriod  tCurrent 
GeometricPositioningSystems  tCurrentAmpere 
InfrastructureManager  tEtcsTrainCategoryNumber 
LinearPositioningSystems  tForce 
Metadata  tForceN 
Name  tFrequency 
OperatingDay  tFrequencyHertz 
OperationalUndertaking  tGenericID 
OrganizationalUnit  tGenericRef 
OrganizationalUnits  tGradientPerMille 
Period  tID 
PeriodRule  tLength 
PeriodRuleElement  tLengthKM 
PositioningSystems  tLengthM 
PublicHolidayPeriodRule  tLengthMM 
RailwayUndertaking  tMeterload 
ScreenPositioningSystem  tMeterloadTonsPerMeter 
ScreenPositioningSystems  tOtherEnumerationValue 
ShiftablePeriodRule  tPower 
SpeedProfile  tPowerWatt 
SpeedProfileBraking  tPressure 
SpeedProfileLoad  tPressurePa 
SpeedProfiles  tRef 
SpeedProfileTilting  tSpeed 
SpeedProfileTrainType  tSpeedDegreesPerSecond 
tElementBitmaskAny  tSpeedKmPerHour 
tElementBitmaskWeek  tSpeedMPerSeconds 
tElementTimeStamp  tSpeedProfileInfluence 
tElementWithID  tTemperature 
tElementWithIDandCode  tTemperatureCentigrade 
tElementWithIDandName  tTiltingActuationType 
tElementWithIDref  tTrainType 
TimePeriod  tUUID 
TimePeriodRule  tVoltage 
TimePeriodRuleSituation  tVoltageVolt 
TimeStamp  tWeight 
VehicleManufacturer  tWeightKG 
VehicleOperator  tWeightTons 


schema location ..\..\xsd\schema\rtm4railml3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1
 
Complex types  Simple types 
RTM_AreaLocation  tApplicationDirection 
RTM_AssociatedNetElement  tDescriptionLevel 
RTM_AssociatedPositioningSystem  tLateralSide 
RTM_BaseObject  tLrsMethod 
RTM_CompositionNetElement  tNavigability 
RTM_ElementPartCollection  tOrientation 
RTM_EntityLocation  tUsage 
RTM_GeometricCoordinate  tVerticalSide 
RTM_GeometricPositioningSystem 
RTM_IntrinsicCoordinate 
RTM_LevelNetwork 
RTM_LinearAnchorPoint 
RTM_LinearCoordinate 
RTM_LinearLocation 
RTM_LinearNetElement 
RTM_LinearPositioningSystem 
RTM_LocatedNetEntity 
RTM_NamedResource 
RTM_NetElement 
RTM_NetEntity 
RTM_Network 
RTM_NetworkResource 
RTM_NonLinearNetElement 
RTM_OrderedCollection 
RTM_PositioningNetElement 
RTM_PositioningSystem 
RTM_PositioningSystemCoordinate 
RTM_Relation 
RTM_SpotLocation 
RTM_UnorderedCollection 
RTM_Validity 


schema location ..\..\xsd\schema\gml\gml4railml3.xsd
attributeFormDefault
elementFormDefault qualified
targetNamespace https://www.railml.org/schemas/3.1/gml
 
Groups  Complex types  Simple types  Attr. groups 
StandardObjectProperties  AbstractCurveType  doubleList  AssociationAttributeGroup 
AbstractGeometricPrimitiveType  NCNameList  OwnershipAttributeGroup 
AbstractGeometryType  NilReasonType  SRSInformationGroup 
AbstractGMLType  SRSReferenceGroup 
CodeType 
CodeWithAuthorityType 
DirectPositionListType 
DirectPositionType 
LineStringType 
PointType 
ReferenceType 
StringOrRefType 


schema location http://dublincore.org/schemas/xmls/qdc/2008/02/11/dc.xsd
attributeFormDefault unqualified
elementFormDefault qualified
targetNamespace http://purl.org/dc/elements/1.1/
 
Elements  Groups  Complex types 
any  elementsGroup  elementContainer 
contributor  SimpleLiteral 
coverage 
creator 
date 
description 
format 
identifier 
language 
publisher 
relation 
rights 
source 
subject 
title 
type 


schema location http://www.w3.org/2001/03/xml.xsd
attributeFormDefault
elementFormDefault
targetNamespace http://www.w3.org/XML/1998/namespace
 
Attributes  Attr. groups 
base  specialAttrs 
lang 
space 


element railML
diagram railml3_p1.png
namespace https://www.railml.org/schemas/3.1
type rail3:railML
properties
content complex
children rail3:metadata rail3:common rail3:infrastructure rail3:interlocking rail3:rollingstock rail3:timetable
attributes
Name  Type  Use  Default  Fixed  Annotation
version  xs:string  required      
documentation
the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file
source <xs:element name="railML" type="rail3:railML"/>

complexType railML
diagram railml3_p2.png
namespace https://www.railml.org/schemas/3.1
children rail3:metadata rail3:common rail3:infrastructure rail3:interlocking rail3:rollingstock rail3:timetable
used by
element railML
attributes
Name  Type  Use  Default  Fixed  Annotation
version  xs:string  required      
documentation
the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file
annotation
documentation
This is the root element of any railML file.
source <xs:complexType name="railML">
 
<xs:annotation>
   
<xs:documentation>This is the root element of any railML file.</xs:documentation>
 
</xs:annotation>
 
<xs:all>
   
<xs:element name="metadata" type="rail3:Metadata" minOccurs="0" maxOccurs="1"/>
   
<xs:element name="common" type="rail3:Common" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>root element for railML3 common model</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="infrastructure" type="rail3:Infrastructure" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>root element for railML3 infrastructure model</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="interlocking" type="rail3:Interlocking" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>root element for railML3 interlocking model</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="rollingstock" type="rail3:Rollingstock" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>root element for railML3 rollingstock model</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="timetable" type="rail3:Timetable" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>root element for railML3 timetable model</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:all>
 
<xs:attributeGroup ref="rail3:aRailML"/>
</xs:complexType>

element railML/metadata
diagram railml3_p3.png
namespace https://www.railml.org/schemas/3.1
type rail3:Metadata
properties
minOcc 0
maxOcc 1
content complex
children any
source <xs:element name="metadata" type="rail3:Metadata" minOccurs="0" maxOccurs="1"/>

element railML/common
diagram railml3_p4.png
namespace https://www.railml.org/schemas/3.1
type rail3:Common
properties
minOcc 0
maxOcc 1
content complex
children rail3:electrificationSystems rail3:organizationalUnits rail3:speedProfiles rail3:positioning
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
root element for railML3 common model
source <xs:element name="common" type="rail3:Common" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>root element for railML3 common model</xs:documentation>
 
</xs:annotation>
</xs:element>

element railML/infrastructure
diagram railml3_p5.png
namespace https://www.railml.org/schemas/3.1
type rail3:Infrastructure
properties
minOcc 0
maxOcc 1
content complex
children rail3:topology rail3:geometry rail3:functionalInfrastructure rail3:physicalFacilities rail3:infrastructureVisualizations rail3:infrastructureStates
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
root element for railML3 infrastructure model
source <xs:element name="infrastructure" type="rail3:Infrastructure" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>root element for railML3 infrastructure model</xs:documentation>
 
</xs:annotation>
</xs:element>

element railML/interlocking
diagram railml3_p6.png
namespace https://www.railml.org/schemas/3.1
type rail3:Interlocking
properties
minOcc 0
maxOcc 1
content complex
children rail3:assetsForIL rail3:controllers rail3:signalBoxes rail3:specificIMs
annotation
documentation
root element for railML3 interlocking model
source <xs:element name="interlocking" type="rail3:Interlocking" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>root element for railML3 interlocking model</xs:documentation>
 
</xs:annotation>
</xs:element>

element railML/rollingstock
diagram railml3_p7.png
namespace https://www.railml.org/schemas/3.1
type rail3:Rollingstock
properties
minOcc 0
maxOcc 1
content complex
annotation
documentation
root element for railML3 rollingstock model
source <xs:element name="rollingstock" type="rail3:Rollingstock" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>root element for railML3 rollingstock model</xs:documentation>
 
</xs:annotation>
</xs:element>

element railML/timetable
diagram railml3_p8.png
namespace https://www.railml.org/schemas/3.1
type rail3:Timetable
properties
minOcc 0
maxOcc 1
content complex
annotation
documentation
root element for railML3 timetable model
source <xs:element name="timetable" type="rail3:Timetable" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>root element for railML3 timetable model</xs:documentation>
 
</xs:annotation>
</xs:element>

attributeGroup aRailML
namespace https://www.railml.org/schemas/3.1
used by
complexType railML
attributes
Name  Type  Use  Default  Fixed  Annotation
version  xs:string  required      
documentation
the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file
source <xs:attributeGroup name="aRailML">
 
<xs:attribute name="version" type="xs:string" use="required">
   
<xs:annotation>
     
<xs:documentation>the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file</xs:documentation>
   
</xs:annotation>
 
</xs:attribute>
</xs:attributeGroup>

attribute aRailML/@version
type xs:string
properties
use required
annotation
documentation
the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file
source <xs:attribute name="version" type="xs:string" use="required">
 
<xs:annotation>
   
<xs:documentation>the supported railML version should be declared for software compatibility reasons, valid for all subschemas, don't mix railML versions between subschemas in one XML file</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element Timetable
diagram railml3_p9.png
namespace https://www.railml.org/schemas/3.1
type rail3:Timetable
properties
content complex
source <xs:element name="Timetable" type="rail3:Timetable"/>

complexType Timetable
diagram railml3_p10.png
namespace https://www.railml.org/schemas/3.1
used by
elements railML/timetable Timetable
annotation
documentation
This is the top level element for the timetable model.
source <xs:complexType name="Timetable">
 
<xs:annotation>
   
<xs:documentation>This is the top level element for the timetable model.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1"/>
</xs:complexType>

element Rollingstock
diagram railml3_p11.png
namespace https://www.railml.org/schemas/3.1
type rail3:Rollingstock
properties
content complex
source <xs:element name="Rollingstock" type="rail3:Rollingstock"/>

complexType Rollingstock
diagram railml3_p12.png
namespace https://www.railml.org/schemas/3.1
used by
elements railML/rollingstock Rollingstock
annotation
documentation
This is the top level element for the rollingstock model.
source <xs:complexType name="Rollingstock">
 
<xs:annotation>
   
<xs:documentation>This is the top level element for the rollingstock model.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1"/>
</xs:complexType>

complexType ActivationCondition
diagram railml3_p13.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:delayBySwitchPosition rail3:aspectRelatedDelay rail3:signalDelayTime rail3:activatedBy
used by
element LevelCrossingIL/activationCondition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
andOr  rail3:tAndOr  optional      
documentation
The logical combination of all activation conditions.
annotation
documentation
The container to list all possible conditions for activating the level crossing.
source <xs:complexType name="ActivationCondition">
 
<xs:annotation>
   
<xs:documentation>The container to list all possible conditions for activating the level crossing.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="delayBySwitchPosition" type="rail3:SwitchRelatedDelay" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The activation can be delayed depending on the position of a switch.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="aspectRelatedDelay" type="rail3:AspectRelatedLevelCrossingDelay" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Activation of the level crossing may be delayed, depending on the aspect of the approach signal, thus, the activation delay timer depends on a) the signal and b) the signal aspect.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="signalDelayTime" type="rail3:SignalDelayTime" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>After activation of the level crossing the opening of a signal is delayed.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="activatedBy" type="rail3:ApproachStartingDetector" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The activation of the level crossing is done by a train detection element.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="andOr" type="rail3:tAndOr" use="optional">
       
<xs:annotation>
         
<xs:documentation>The logical combination of all activation conditions.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute ActivationCondition/@andOr
type rail3:tAndOr
properties
use optional
facets
Kind Value Annotation
enumeration XOR
enumeration OR
enumeration AND
annotation
documentation
The logical combination of all activation conditions.
source <xs:attribute name="andOr" type="rail3:tAndOr" use="optional">
 
<xs:annotation>
   
<xs:documentation>The logical combination of all activation conditions.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element ActivationCondition/delayBySwitchPosition
diagram railml3_p14.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchRelatedDelay
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:refersToSwitch
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
delay  xs:duration  required      
documentation
The delay for activation to be considered when the switch is in the specified position.
annotation
documentation
The activation can be delayed depending on the position of a switch.
source <xs:element name="delayBySwitchPosition" type="rail3:SwitchRelatedDelay" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The activation can be delayed depending on the position of a switch.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ActivationCondition/aspectRelatedDelay
diagram railml3_p15.png
namespace https://www.railml.org/schemas/3.1
type rail3:AspectRelatedLevelCrossingDelay
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:refersToSignal rail3:showsAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
delay  xs:duration  required      
documentation
Delay between signal aspect detection and level crossing activation. This delay depends on the signalled speed of the approaching train hence on signal aspect.
annotation
documentation
Activation of the level crossing may be delayed, depending on the aspect of the approach signal, thus, the activation delay timer depends on a) the signal and b) the signal aspect.
source <xs:element name="aspectRelatedDelay" type="rail3:AspectRelatedLevelCrossingDelay" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Activation of the level crossing may be delayed, depending on the aspect of the approach signal, thus, the activation delay timer depends on a) the signal and b) the signal aspect.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ActivationCondition/signalDelayTime
diagram railml3_p16.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalDelayTime
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:hasDelayedSignal
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
Time during which the signal remains closed. Starts counting when the level crossing is triggered.
annotation
documentation
After activation of the level crossing the opening of a signal is delayed.
source <xs:element name="signalDelayTime" type="rail3:SignalDelayTime" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>After activation of the level crossing the opening of a signal is delayed.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ActivationCondition/activatedBy
diagram railml3_p17.png
namespace https://www.railml.org/schemas/3.1
type rail3:ApproachStartingDetector
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
The level crossing is activated only after a given delay. This delay doesn't depend on any aspect. If there's a delay that depends on signalled speed, please use the aspectRelatedLevelCrossingDelay.
The timer starts running when the first train axle triggers the train detector.
annotation
documentation
The activation of the level crossing is done by a train detection element.
source <xs:element name="activatedBy" type="rail3:ApproachStartingDetector" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The activation of the level crossing is done by a train detection element.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ApproachStartingDetector
diagram railml3_p18.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:refersTo
used by
element ActivationCondition/activatedBy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
The level crossing is activated only after a given delay. This delay doesn't depend on any aspect. If there's a delay that depends on signalled speed, please use the aspectRelatedLevelCrossingDelay.
The timer starts running when the first train axle triggers the train detector.
annotation
documentation
Train detection device, commonly an axle counter, track section, track joint or treadle that activates a level crossing. Also known as Approach Starting. This is the detection point that is the most remote from the level crossing. The approach monitoring zone is situated in between the approach starting detector(s) and the level crossing, i.e. every detector in this zone activates the level crossing. Use the any wildcard to provide a textual description of the approach starting detector is needed.
source <xs:complexType name="ApproachStartingDetector">
 
<xs:annotation>
   
<xs:documentation>Train detection device, commonly an axle counter, track section, track joint or treadle that activates a level crossing. Also known as Approach Starting. This is the detection point that is the most remote from the level crossing. The approach monitoring zone is situated in between the approach starting detector(s) and the level crossing, i.e. every detector in this zone activates the level crossing. Use the any wildcard to provide a textual description of the approach starting detector is needed.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the train detection element in infrastructure.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="delay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>The level crossing is activated only after a given delay. This delay doesn't depend on any aspect. If there's a delay that depends on signalled speed, please use the aspectRelatedLevelCrossingDelay.
The timer starts running when the first train axle triggers the train detector.
</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute ApproachStartingDetector/@delay
type xs:duration
properties
use required
annotation
documentation
The level crossing is activated only after a given delay. This delay doesn't depend on any aspect. If there's a delay that depends on signalled speed, please use the aspectRelatedLevelCrossingDelay.
The timer starts running when the first train axle triggers the train detector.
source <xs:attribute name="delay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>The level crossing is activated only after a given delay. This delay doesn't depend on any aspect. If there's a delay that depends on signalled speed, please use the aspectRelatedLevelCrossingDelay.
The timer starts running when the first train axle triggers the train detector.
</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element ApproachStartingDetector/refersTo
diagram railml3_p19.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the train detection element in infrastructure.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the train detection element in infrastructure.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType AspectRelatedLevelCrossingDelay
diagram railml3_p20.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:SignalAndAspect
properties
base rail3:SignalAndAspect
children rail3:designator rail3:refersToSignal rail3:showsAspect
used by
element ActivationCondition/aspectRelatedDelay
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
delay  xs:duration  required      
documentation
Delay between signal aspect detection and level crossing activation. This delay depends on the signalled speed of the approaching train hence on signal aspect.
annotation
documentation
The activation of the level crossing is delayed by a given duration if a signal shows a given aspect.
source <xs:complexType name="AspectRelatedLevelCrossingDelay">
 
<xs:annotation>
   
<xs:documentation>The activation of the level crossing is delayed by a given duration if a signal shows a given aspect.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:SignalAndAspect">
     
<xs:sequence/>
     
<xs:attribute name="delay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Delay between signal aspect detection and level crossing activation. This delay depends on the signalled speed of the approaching train hence on signal aspect.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute AspectRelatedLevelCrossingDelay/@delay
type xs:duration
properties
use required
annotation
documentation
Delay between signal aspect detection and level crossing activation. This delay depends on the signalled speed of the approaching train hence on signal aspect.
source <xs:attribute name="delay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Delay between signal aspect detection and level crossing activation. This delay depends on the signalled speed of the approaching train hence on signal aspect.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType AspectRelation
diagram railml3_p21.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:masterAspect rail3:slaveAspect rail3:distantAspect rail3:signalsSpeedProfile rail3:appliesToRoute
used by
element SignalPlan/aspectRelation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
passingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
The speed in km/h signalled by the slave aspect, i.e. the speed that the train must respect when passing the slave signal (at route entry).
expectingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum signalled speed in km/h at master signal (aka target speed).
endSectionTime  xs:duration  optional      
documentation
The end-section of a route is the section between the closed route exit signal and the previous slave signal. Commonly, the interlocking revokes (part of) the route when this time period is passed.
annotation
documentation
One aspect relation has a) one master signal showing a given aspect b) one or more slaves showing a given aspect. The slave aspect depends on the master aspect. c) an optional overlap when the master aspect is at danger. The path from slave to master may contain switches. The switch positions are given in order to unequivocally determine the path.
source <xs:complexType name="AspectRelation">
 
<xs:annotation>
   
<xs:documentation>One aspect relation has a) one master signal showing a given aspect b) one or more slaves showing a given aspect. The slave aspect depends on the master aspect. c) an optional overlap when the master aspect is at danger. The path from slave to master may contain switches. The switch positions are given in order to unequivocally determine the path.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="masterAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The combination of the master signal (at route exit) and the aspect it is showing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="slaveAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The combination of the slave signal (at route entry) and the aspect it is showing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="distantAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The combination of the master's distant signal (within the route or its start) and the aspect it is showing. This includes also any repeaters.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="signalsSpeedProfile" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to a SpeedSection in infrastructure applicable for the signalled section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="appliesToRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Reference to the related routes using the particular aspect relation.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="passingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>The speed in km/h signalled by the slave aspect, i.e. the speed that the train must respect when passing the slave signal (at route entry).</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="expectingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Maximum signalled speed in km/h at master signal (aka target speed).</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="endSectionTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The end-section of a route is the section between the closed route exit signal and the previous slave signal. Commonly, the interlocking revokes (part of) the route when this time period is passed.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute AspectRelation/@passingSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
The speed in km/h signalled by the slave aspect, i.e. the speed that the train must respect when passing the slave signal (at route entry).
source <xs:attribute name="passingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>The speed in km/h signalled by the slave aspect, i.e. the speed that the train must respect when passing the slave signal (at route entry).</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute AspectRelation/@expectingSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Maximum signalled speed in km/h at master signal (aka target speed).
source <xs:attribute name="expectingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Maximum signalled speed in km/h at master signal (aka target speed).</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute AspectRelation/@endSectionTime
type xs:duration
properties
use optional
annotation
documentation
The end-section of a route is the section between the closed route exit signal and the previous slave signal. Commonly, the interlocking revokes (part of) the route when this time period is passed.
source <xs:attribute name="endSectionTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The end-section of a route is the section between the closed route exit signal and the previous slave signal. Commonly, the interlocking revokes (part of) the route when this time period is passed.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element AspectRelation/masterAspect
diagram railml3_p22.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndAspect
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:refersToSignal rail3:showsAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The combination of the master signal (at route exit) and the aspect it is showing.
source <xs:element name="masterAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The combination of the master signal (at route exit) and the aspect it is showing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element AspectRelation/slaveAspect
diagram railml3_p23.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndAspect
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:refersToSignal rail3:showsAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The combination of the slave signal (at route entry) and the aspect it is showing.
source <xs:element name="slaveAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The combination of the slave signal (at route entry) and the aspect it is showing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element AspectRelation/distantAspect
diagram railml3_p24.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndAspect
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:refersToSignal rail3:showsAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The combination of the master's distant signal (within the route or its start) and the aspect it is showing. This includes also any repeaters.
source <xs:element name="distantAspect" type="rail3:SignalAndAspect" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The combination of the master's distant signal (within the route or its start) and the aspect it is showing. This includes also any repeaters.</xs:documentation>
 
</xs:annotation>
</xs:element>

element AspectRelation/signalsSpeedProfile
diagram railml3_p25.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to a SpeedSection in infrastructure applicable for the signalled section.
source <xs:element name="signalsSpeedProfile" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to a SpeedSection in infrastructure applicable for the signalled section.</xs:documentation>
 
</xs:annotation>
</xs:element>

element AspectRelation/appliesToRoute
diagram railml3_p26.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the related routes using the particular aspect relation.
source <xs:element name="appliesToRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Reference to the related routes using the particular aspect relation.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType AssetAndGivenState
diagram railml3_p27.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
abstract true
children rail3:designator
used by
complexTypes CrossingAndGivenPosition DerailerAndGivenPosition DetectorAndGivenState LevelCrossingAndGivenState LockAndGivenState SectionAndGivenVacancy SignalAndGivenAspect SwitchAndGivenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
Interlocking model often requires a generic track asset to be in a given state. This base class must be extended and contain a reference to a track asset; signal, section, switch, etc. plus the given status of that element. Eg. (switch_18A, left) or (signal S19, proceed).
In addition information about the level of state enforcement can be set.
source <xs:complexType name="AssetAndGivenState" abstract="true">
 
<xs:annotation>
   
<xs:documentation>Interlocking model often requires a generic track asset to be in a given state. This base class must be extended and contain a reference to a track asset; signal, section, switch, etc. plus the given status of that element. Eg. (switch_18A, left) or (signal S19, proceed).
In addition information about the level of state enforcement can be set.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="mustOrShould" type="rail3:tMustOrShould" use="optional">
       
<xs:annotation>
         
<xs:documentation>level of enforcement</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="proving" type="rail3:tProving" use="optional">
       
<xs:annotation>
         
<xs:documentation>The way the state is proven.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="isNegated" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The exclusion of a particular state, i.e. everything else that this one.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute AssetAndGivenState/@mustOrShould
type rail3:tMustOrShould
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration should
enumeration must
annotation
documentation
level of enforcement
source <xs:attribute name="mustOrShould" type="rail3:tMustOrShould" use="optional">
 
<xs:annotation>
   
<xs:documentation>level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute AssetAndGivenState/@proving
type rail3:tProving
properties
use optional
facets
Kind Value Annotation
enumeration staffAcknowledged
enumeration continuously
enumeration oneOff
annotation
documentation
The way the state is proven.
source <xs:attribute name="proving" type="rail3:tProving" use="optional">
 
<xs:annotation>
   
<xs:documentation>The way the state is proven.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute AssetAndGivenState/@isNegated
type xs:boolean
properties
use optional
annotation
documentation
The exclusion of a particular state, i.e. everything else that this one.
source <xs:attribute name="isNegated" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The exclusion of a particular state, i.e. everything else that this one.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType AssetAndState
diagram railml3_p28.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
abstract true
children rail3:designator
used by
complexTypes CrossingAndPosition DerailerAndPosition DetectorAndState LevelCrossingAndState LockAndState SectionAndVacancy SignalAndAspect SwitchAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The interlocking extensively uses assets with a state for securing routes. The AssetAndState class is a generic tupel of (Asset, State). These tupels can be used by more than one interlocking system and are therefore not a child of the Interlocking class but of the class NetworkAssets. AssetAndState extends BaseObject in order to inherit an identifier. This base class must be extended and contain a reference to a track asset; signal, section, switch, etc. plus the given status of that element. Eg. (id=xy, switch_18A, left) or (id=yz, signal S19, proceed).
source <xs:complexType name="AssetAndState" abstract="true">
 
<xs:annotation>
   
<xs:documentation>The interlocking extensively uses assets with a state for securing routes. The AssetAndState class is a generic tupel of (Asset, State). These tupels can be used by more than one interlocking system and are therefore not a child of the Interlocking class but of the class NetworkAssets. AssetAndState extends BaseObject in order to inherit an identifier. This base class must be extended and contain a reference to a track asset; signal, section, switch, etc. plus the given status of that element. Eg. (id=xy, switch_18A, left) or (id=yz, signal S19, proceed).</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="isNegated" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The exclusion of a particular state, i.e. everything else that this one.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute AssetAndState/@isNegated
type xs:boolean
properties
use optional
annotation
documentation
The exclusion of a particular state, i.e. everything else that this one.
source <xs:attribute name="isNegated" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The exclusion of a particular state, i.e. everything else that this one.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType AssetsForIL
diagram railml3_p29.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:tvdSections rail3:switchesIL rail3:derailersIL rail3:movableCrossings rail3:levelCrossingsIL rail3:keys rail3:keyLocksIL rail3:genericDetectors rail3:signalsIL rail3:atpDevices rail3:interfaces rail3:workZones rail3:localOperationAreas rail3:shuntingZones rail3:permissionZones rail3:routeReleaseGroupsAhead rail3:routeReleaseGroupsRear rail3:routes rail3:conflictingRoutes rail3:routeRelations rail3:combinedRoutes rail3:overlaps rail3:dangerPoints rail3:destinationPoints rail3:powerSuppliesIL
used by
element Interlocking/assetsForIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Container for assets used for operation of interlockings and controllers. They represent a more functional/logical view onto the railway network but depending on the hardware as defined in infrastructure domain.
Assets in the container are owned by the railway network rather than by individual interlocking systems.
source <xs:complexType name="AssetsForIL">
 
<xs:annotation>
   
<xs:documentation>Container for assets used for operation of interlockings and controllers. They represent a more functional/logical view onto the railway network but depending on the hardware as defined in infrastructure domain.
Assets in the container are owned by the railway network rather than by individual interlocking systems.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="tvdSections" type="rail3:TvdSections" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all tvdSection elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="switchesIL" type="rail3:SwitchesIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all MovableElements of type SwitchIL</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="derailersIL" type="rail3:DerailersIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all MovableElements of type DerailerIL</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="movableCrossings" type="rail3:MovableCrossings" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all MovableElements of type MovableCrossing</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="levelCrossingsIL" type="rail3:LevelCrossingsIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all levelCrossingIL elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="keys" type="rail3:Keys" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all key elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="keyLocksIL" type="rail3:KeyLocksIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all keyLockIL elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="genericDetectors" type="rail3:GenericDetectors" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all genericDetector elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="signalsIL" type="rail3:SignalsIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all signalIL elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="atpDevices" type="rail3:ATPdevices" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all atpDevice elements (not with railML3.1)</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="interfaces" type="rail3:Interfaces" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all interface elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="workZones" type="rail3:WorkZones" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all workZone elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="localOperationAreas" type="rail3:LocalOperationAreas" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all localOperationArea elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="shuntingZones" type="rail3:ShuntingZones" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all shuntingZone elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="permissionZones" type="rail3:PermissionZones" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all permissionZone elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeReleaseGroupsAhead" type="rail3:RouteReleaseGroupsAhead" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all routeReleaseGroupAhead elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeReleaseGroupsRear" type="rail3:RouteReleaseGroupsRear" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all routeReleaseGroupRear elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routes" type="rail3:Routes" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all route elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="conflictingRoutes" type="rail3:ConflictingRoutes" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all conflictingRoute elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeRelations" type="rail3:RouteRelations" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all routeRelation elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="combinedRoutes" type="rail3:CombinedRoutes" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all combinedRoute elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="overlaps" type="rail3:Overlaps" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all overlap elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="dangerPoints" type="rail3:DangerPoints" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all dangerPoints elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="destinationPoints" type="rail3:DestinationPoints" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all destinationPoint elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="powerSuppliesIL" type="rail3:PowerSuppliesIL" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>contains all powerSupplyIL elements</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element AssetsForIL/tvdSections
diagram railml3_p30.png
namespace https://www.railml.org/schemas/3.1
type rail3:TvdSections
properties
minOcc 0
maxOcc 1
content complex
children rail3:tvdSection
annotation
documentation
contains all tvdSection elements
source <xs:element name="tvdSections" type="rail3:TvdSections" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all tvdSection elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/switchesIL
diagram railml3_p31.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchesIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:switchIL
annotation
documentation
contains all MovableElements of type SwitchIL
source <xs:element name="switchesIL" type="rail3:SwitchesIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all MovableElements of type SwitchIL</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/derailersIL
diagram railml3_p32.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailersIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:derailerIL
annotation
documentation
contains all MovableElements of type DerailerIL
source <xs:element name="derailersIL" type="rail3:DerailersIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all MovableElements of type DerailerIL</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/movableCrossings
diagram railml3_p33.png
namespace https://www.railml.org/schemas/3.1
type rail3:MovableCrossings
properties
minOcc 0
maxOcc 1
content complex
children rail3:movableCrossing
annotation
documentation
contains all MovableElements of type MovableCrossing
source <xs:element name="movableCrossings" type="rail3:MovableCrossings" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all MovableElements of type MovableCrossing</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/levelCrossingsIL
diagram railml3_p34.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingsIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:levelCrossingIL
annotation
documentation
contains all levelCrossingIL elements
source <xs:element name="levelCrossingsIL" type="rail3:LevelCrossingsIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all levelCrossingIL elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/keys
diagram railml3_p35.png
namespace https://www.railml.org/schemas/3.1
type rail3:Keys
properties
minOcc 0
maxOcc 1
content complex
children rail3:key
annotation
documentation
contains all key elements
source <xs:element name="keys" type="rail3:Keys" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all key elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/keyLocksIL
diagram railml3_p36.png
namespace https://www.railml.org/schemas/3.1
type rail3:KeyLocksIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:keyLockIL rail3:ownsLogicalDevice
annotation
documentation
contains all keyLockIL elements
source <xs:element name="keyLocksIL" type="rail3:KeyLocksIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all keyLockIL elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/genericDetectors
diagram railml3_p37.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericDetectors
properties
minOcc 0
maxOcc 1
content complex
children rail3:genericDetector
annotation
documentation
contains all genericDetector elements
source <xs:element name="genericDetectors" type="rail3:GenericDetectors" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all genericDetector elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/signalsIL
diagram railml3_p38.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalsIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:signalIL
annotation
documentation
contains all signalIL elements
source <xs:element name="signalsIL" type="rail3:SignalsIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all signalIL elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/atpDevices
diagram railml3_p39.png
namespace https://www.railml.org/schemas/3.1
type rail3:ATPdevices
properties
minOcc 0
maxOcc 1
content complex
children rail3:atpDevice
annotation
documentation
contains all atpDevice elements (not with railML3.1)
source <xs:element name="atpDevices" type="rail3:ATPdevices" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all atpDevice elements (not with railML3.1)</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/interfaces
diagram railml3_p40.png
namespace https://www.railml.org/schemas/3.1
type rail3:Interfaces
properties
minOcc 0
maxOcc 1
content complex
children rail3:interface
annotation
documentation
contains all interface elements
source <xs:element name="interfaces" type="rail3:Interfaces" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all interface elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/workZones
diagram railml3_p41.png
namespace https://www.railml.org/schemas/3.1
type rail3:WorkZones
properties
minOcc 0
maxOcc 1
content complex
children rail3:workZone
annotation
documentation
contains all workZone elements
source <xs:element name="workZones" type="rail3:WorkZones" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all workZone elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/localOperationAreas
diagram railml3_p42.png
namespace https://www.railml.org/schemas/3.1
type rail3:LocalOperationAreas
properties
minOcc 0
maxOcc 1
content complex
children rail3:localOperationArea
annotation
documentation
contains all localOperationArea elements
source <xs:element name="localOperationAreas" type="rail3:LocalOperationAreas" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all localOperationArea elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/shuntingZones
diagram railml3_p43.png
namespace https://www.railml.org/schemas/3.1
type rail3:ShuntingZones
properties
minOcc 0
maxOcc 1
content complex
children rail3:shuntingZone
annotation
documentation
contains all shuntingZone elements
source <xs:element name="shuntingZones" type="rail3:ShuntingZones" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all shuntingZone elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/permissionZones
diagram railml3_p44.png
namespace https://www.railml.org/schemas/3.1
type rail3:PermissionZones
properties
minOcc 0
maxOcc 1
content complex
children rail3:permissionZone
annotation
documentation
contains all permissionZone elements
source <xs:element name="permissionZones" type="rail3:PermissionZones" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all permissionZone elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/routeReleaseGroupsAhead
diagram railml3_p45.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteReleaseGroupsAhead
properties
minOcc 0
maxOcc 1
content complex
children rail3:routeReleaseGroupAhead
annotation
documentation
contains all routeReleaseGroupAhead elements
source <xs:element name="routeReleaseGroupsAhead" type="rail3:RouteReleaseGroupsAhead" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all routeReleaseGroupAhead elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/routeReleaseGroupsRear
diagram railml3_p46.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteReleaseGroupsRear
properties
minOcc 0
maxOcc 1
content complex
children rail3:routeReleaseGroupRear
annotation
documentation
contains all routeReleaseGroupRear elements
source <xs:element name="routeReleaseGroupsRear" type="rail3:RouteReleaseGroupsRear" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all routeReleaseGroupRear elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/routes
diagram railml3_p47.png
namespace https://www.railml.org/schemas/3.1
type rail3:Routes
properties
minOcc 0
maxOcc 1
content complex
children rail3:route
annotation
documentation
contains all route elements
source <xs:element name="routes" type="rail3:Routes" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all route elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/conflictingRoutes
diagram railml3_p48.png
namespace https://www.railml.org/schemas/3.1
type rail3:ConflictingRoutes
properties
minOcc 0
maxOcc 1
content complex
children rail3:conflictingRoute
annotation
documentation
contains all conflictingRoute elements
source <xs:element name="conflictingRoutes" type="rail3:ConflictingRoutes" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all conflictingRoute elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/routeRelations
diagram railml3_p49.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteRelations
properties
minOcc 0
maxOcc 1
content complex
children rail3:routeRelation
annotation
documentation
contains all routeRelation elements
source <xs:element name="routeRelations" type="rail3:RouteRelations" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all routeRelation elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/combinedRoutes
diagram railml3_p50.png
namespace https://www.railml.org/schemas/3.1
type rail3:CombinedRoutes
properties
minOcc 0
maxOcc 1
content complex
children rail3:combinedRoute
annotation
documentation
contains all combinedRoute elements
source <xs:element name="combinedRoutes" type="rail3:CombinedRoutes" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all combinedRoute elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/overlaps
diagram railml3_p51.png
namespace https://www.railml.org/schemas/3.1
type rail3:Overlaps
properties
minOcc 0
maxOcc 1
content complex
children rail3:overlap
annotation
documentation
contains all overlap elements
source <xs:element name="overlaps" type="rail3:Overlaps" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all overlap elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/dangerPoints
diagram railml3_p52.png
namespace https://www.railml.org/schemas/3.1
type rail3:DangerPoints
properties
minOcc 0
maxOcc 1
content complex
children rail3:dangerPoint
annotation
documentation
contains all dangerPoints elements
source <xs:element name="dangerPoints" type="rail3:DangerPoints" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all dangerPoints elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/destinationPoints
diagram railml3_p53.png
namespace https://www.railml.org/schemas/3.1
type rail3:DestinationPoints
properties
minOcc 0
maxOcc 1
content complex
children rail3:destinationPoint
annotation
documentation
contains all destinationPoint elements
source <xs:element name="destinationPoints" type="rail3:DestinationPoints" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all destinationPoint elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element AssetsForIL/powerSuppliesIL
diagram railml3_p54.png
namespace https://www.railml.org/schemas/3.1
type rail3:PowerSuppliesIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:powerSupplyIL
annotation
documentation
contains all powerSupplyIL elements
source <xs:element name="powerSuppliesIL" type="rail3:PowerSuppliesIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>contains all powerSupplyIL elements</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ATPdevice
diagram railml3_p55.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
abstract true
children rail3:designator rail3:atpType rail3:device rail3:exitSignal rail3:entrySignal
used by
element ATPdevices/atpDevice
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
a minimal stub that merely creates a link between ATP and signals. The ATP state mostly derives from a signal at the entry of the ATP section. In some cases, the state can be a function of the aspect of both entry- and exit-signal. Note the need to include virtual signals where ATP changes the signalled speed. A changed speed is often accompanied by a passive trackside speed sign in order to synchronise wayside speed signalling with cabin speed signalling.
Not with railML3.1
source <xs:complexType name="ATPdevice" abstract="true">
 
<xs:annotation>
   
<xs:documentation>a minimal stub that merely creates a link between ATP and signals. The ATP state mostly derives from a signal at the entry of the ATP section. In some cases, the state can be a function of the aspect of both entry- and exit-signal. Note the need to include virtual signals where ATP changes the signalled speed. A changed speed is often accompanied by a passive trackside speed sign in order to synchronise wayside speed signalling with cabin speed signalling.
Not with railML3.1
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="atpType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1"/>
       
<xs:element name="device" type="rail3:EntityILref" minOccurs="1" maxOccurs="1"/>
       
<xs:element name="exitSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="2"/>
       
<xs:element name="entrySignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="2"/>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element ATPdevice/atpType
diagram railml3_p56.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
source <xs:element name="atpType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1"/>

element ATPdevice/device
diagram railml3_p57.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
source <xs:element name="device" type="rail3:EntityILref" minOccurs="1" maxOccurs="1"/>

element ATPdevice/exitSignal
diagram railml3_p58.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc 2
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
source <xs:element name="exitSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="2"/>

element ATPdevice/entrySignal
diagram railml3_p59.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc 2
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
source <xs:element name="entrySignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="2"/>

complexType ATPdevices
diagram railml3_p60.png
namespace https://www.railml.org/schemas/3.1
children rail3:atpDevice
used by
element AssetsForIL/atpDevices
annotation
documentation
container element for all ATPdevice elements (not with railML3.1)
source <xs:complexType name="ATPdevices">
 
<xs:annotation>
   
<xs:documentation>container element for all ATPdevice elements (not with railML3.1)</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="atpDevice" type="rail3:ATPdevice" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>not with railML3.1</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element ATPdevices/atpDevice
diagram railml3_p61.png
namespace https://www.railml.org/schemas/3.1
type rail3:ATPdevice
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:atpType rail3:device rail3:exitSignal rail3:entrySignal
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
not with railML3.1
source <xs:element name="atpDevice" type="rail3:ATPdevice" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>not with railML3.1</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType CombinedRoute
diagram railml3_p62.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:comboEntry rail3:comboExit rail3:containsRoute
used by
elements CombinedRoutes/combinedRoute Itineraries/itinerary
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
CombinedRoute is a concatenation of single routes providing a continuous path for traffic movement which the interlocking can activate by one action.
As itinerary it is a list of routes describing the train path trough a network.
source <xs:complexType name="CombinedRoute">
 
<xs:annotation>
   
<xs:documentation>CombinedRoute is a concatenation of single routes providing a continuous path for traffic movement which the interlocking can activate by one action.
As itinerary it is a list of routes describing the train path trough a network.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="comboEntry" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to the entry/start of the combined route</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="comboExit" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to exit/destination of combined route</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="containsRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Reference to a single route contained in the combined route</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element CombinedRoute/comboEntry
diagram railml3_p63.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the entry/start of the combined route
source <xs:element name="comboEntry" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to the entry/start of the combined route</xs:documentation>
 
</xs:annotation>
</xs:element>

element CombinedRoute/comboExit
diagram railml3_p64.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to exit/destination of combined route
source <xs:element name="comboExit" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to exit/destination of combined route</xs:documentation>
 
</xs:annotation>
</xs:element>

element CombinedRoute/containsRoute
diagram railml3_p65.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to a single route contained in the combined route
source <xs:element name="containsRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Reference to a single route contained in the combined route</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType CombinedRoutes
diagram railml3_p66.png
namespace https://www.railml.org/schemas/3.1
children rail3:combinedRoute
used by
element AssetsForIL/combinedRoutes
annotation
documentation
container element for all CombinedRoute elements
source <xs:complexType name="CombinedRoutes">
 
<xs:annotation>
   
<xs:documentation>container element for all CombinedRoute elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="combinedRoute" type="rail3:CombinedRoute" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>a concatenation of single routes providing a continuous path for traffic movement</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element CombinedRoutes/combinedRoute
diagram railml3_p67.png
namespace https://www.railml.org/schemas/3.1
type rail3:CombinedRoute
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:comboEntry rail3:comboExit rail3:containsRoute
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
a concatenation of single routes providing a continuous path for traffic movement
source <xs:element name="combinedRoute" type="rail3:CombinedRoute" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>a concatenation of single routes providing a continuous path for traffic movement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Configuration
diagram railml3_p68.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element SignalBox/hasConfiguration
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
model  xs:string  optional      
documentation
The vendor specific model of the interlocking.
technologyType  rail3:tIxlTechnologyTypeListExt  required      
documentation
The basic technology type of the interlocking
SWversion  xs:string  optional      
documentation
The software version used by this interlocking.
signalSystem  xs:string  optional      
documentation
The name of the signal system used with this interlocking, e.g. Hl or Ks system of Deutsche Bahn.
annotation
documentation
general attributes of interlocking configuration
source <xs:complexType name="Configuration">
 
<xs:annotation>
   
<xs:documentation>general attributes of interlocking configuration</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="model" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>The vendor specific model of the interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="technologyType" type="rail3:tIxlTechnologyTypeListExt" use="required">
       
<xs:annotation>
         
<xs:documentation>The basic technology type of the interlocking</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="SWversion" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>The software version used by this interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="signalSystem" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>The name of the signal system used with this interlocking, e.g. Hl or Ks system of Deutsche Bahn.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Configuration/@model
type xs:string
properties
use optional
annotation
documentation
The vendor specific model of the interlocking.
source <xs:attribute name="model" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>The vendor specific model of the interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Configuration/@technologyType
type rail3:tIxlTechnologyTypeListExt
properties
use required
annotation
documentation
The basic technology type of the interlocking
source <xs:attribute name="technologyType" type="rail3:tIxlTechnologyTypeListExt" use="required">
 
<xs:annotation>
   
<xs:documentation>The basic technology type of the interlocking</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Configuration/@SWversion
type xs:string
properties
use optional
annotation
documentation
The software version used by this interlocking.
source <xs:attribute name="SWversion" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>The software version used by this interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Configuration/@signalSystem
type xs:string
properties
use optional
annotation
documentation
The name of the signal system used with this interlocking, e.g. Hl or Ks system of Deutsche Bahn.
source <xs:attribute name="signalSystem" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>The name of the signal system used with this interlocking, e.g. Hl or Ks system of Deutsche Bahn.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType ConflictingRoute
diagram railml3_p69.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:refersToRoute rail3:conflictsWithRoute rail3:reasonForConflict
used by
element ConflictingRoutes/conflictingRoute
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Iness definition:
The route conflict table identifies the routes that may never be simultaneously allocated, due to utilisation of common track elements.
source <xs:complexType name="ConflictingRoute">
 
<xs:annotation>
   
<xs:documentation>Iness definition:
The route conflict table identifies the routes that may never be simultaneously allocated, due to utilisation of common track elements.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="refersToRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the affected route.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="conflictsWithRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the route causing the conflict.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="reasonForConflict" type="rail3:ConflictReason" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Description of the reason for the conflict.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element ConflictingRoute/refersToRoute
diagram railml3_p70.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the affected route.
source <xs:element name="refersToRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the affected route.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ConflictingRoute/conflictsWithRoute
diagram railml3_p71.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the route causing the conflict.
source <xs:element name="conflictsWithRoute" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the route causing the conflict.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ConflictingRoute/reasonForConflict
diagram railml3_p72.png
namespace https://www.railml.org/schemas/3.1
type rail3:ConflictReason
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
origin  rail3:tRouteConflictTypesExt  required      
documentation
The type of route conflict.
refersTo  rail3:tRef  required      
documentation
The reference to the track asset (movable element, TVD section or signal) causing the conflict.
annotation
documentation
Description of the reason for the conflict.
source <xs:element name="reasonForConflict" type="rail3:ConflictReason" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Description of the reason for the conflict.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ConflictingRoutes
diagram railml3_p73.png
namespace https://www.railml.org/schemas/3.1
children rail3:conflictingRoute
used by
element AssetsForIL/conflictingRoutes
annotation
documentation
container element for all ConflictingRoute elements
source <xs:complexType name="ConflictingRoutes">
 
<xs:annotation>
   
<xs:documentation>container element for all ConflictingRoute elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="conflictingRoute" type="rail3:ConflictingRoute" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>identifies the routes that may never be simultaneously allocated</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element ConflictingRoutes/conflictingRoute
diagram railml3_p74.png
namespace https://www.railml.org/schemas/3.1
type rail3:ConflictingRoute
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersToRoute rail3:conflictsWithRoute rail3:reasonForConflict
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
identifies the routes that may never be simultaneously allocated
source <xs:element name="conflictingRoute" type="rail3:ConflictingRoute" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>identifies the routes that may never be simultaneously allocated</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ConflictReason
diagram railml3_p75.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element ConflictingRoute/reasonForConflict
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
origin  rail3:tRouteConflictTypesExt  required      
documentation
The type of route conflict.
refersTo  rail3:tRef  required      
documentation
The reference to the track asset (movable element, TVD section or signal) causing the conflict.
annotation
documentation
The list of applicable conflict reasons for this route pair.
source <xs:complexType name="ConflictReason">
 
<xs:annotation>
   
<xs:documentation>The list of applicable conflict reasons for this route pair.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="origin" type="rail3:tRouteConflictTypesExt" use="required">
       
<xs:annotation>
         
<xs:documentation>The type of route conflict.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="refersTo" type="rail3:tRef" use="required">
       
<xs:annotation>
         
<xs:documentation>The reference to the track asset (movable element, TVD section or signal) causing the conflict.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute ConflictReason/@origin
type rail3:tRouteConflictTypesExt
properties
use required
annotation
documentation
The type of route conflict.
source <xs:attribute name="origin" type="rail3:tRouteConflictTypesExt" use="required">
 
<xs:annotation>
   
<xs:documentation>The type of route conflict.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute ConflictReason/@refersTo
type rail3:tRef
properties
use required
annotation
documentation
The reference to the track asset (movable element, TVD section or signal) causing the conflict.
source <xs:attribute name="refersTo" type="rail3:tRef" use="required">
 
<xs:annotation>
   
<xs:documentation>The reference to the track asset (movable element, TVD section or signal) causing the conflict.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType ControlledAssets
diagram railml3_p76.png
namespace https://www.railml.org/schemas/3.1
children rail3:controlledInterlocking rail3:controlledSystemAsset
used by
element Controller/controlledAssets
annotation
documentation
container for all references to signalboxes/interlockings and system assets controlled by this controller
source <xs:complexType name="ControlledAssets">
 
<xs:annotation>
   
<xs:documentation>container for all references to signalboxes/interlockings and system assets controlled by this controller</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="controlledInterlocking" type="rail3:ControlledSignalBox" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The reference to a signalBox (interlocking) controlled from this unit.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="controlledSystemAsset" type="rail3:SystemAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The reference to a system asset controlled from this unit. It shall not repeat system assets already controlled from a particular interlocking.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element ControlledAssets/controlledInterlocking
diagram railml3_p77.png
namespace https://www.railml.org/schemas/3.1
type rail3:ControlledSignalBox
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:connectedSignalBox
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The control level
annotation
documentation
The reference to a signalBox (interlocking) controlled from this unit.
source <xs:element name="controlledInterlocking" type="rail3:ControlledSignalBox" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to a signalBox (interlocking) controlled from this unit.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ControlledAssets/controlledSystemAsset
diagram railml3_p78.png
namespace https://www.railml.org/schemas/3.1
type rail3:SystemAssetConnectedToIL
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:connectedSystemAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The level of control of the asset by the interlocking.
annotation
documentation
The reference to a system asset controlled from this unit. It shall not repeat system assets already controlled from a particular interlocking.
source <xs:element name="controlledSystemAsset" type="rail3:SystemAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to a system asset controlled from this unit. It shall not repeat system assets already controlled from a particular interlocking.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ControlledSignalBox
diagram railml3_p79.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:connectedSignalBox
used by
element ControlledAssets/controlledInterlocking
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The control level
annotation
documentation
The control relation from the controller to a signalBox (interlocking)
source <xs:complexType name="ControlledSignalBox">
 
<xs:annotation>
   
<xs:documentation>The control relation from the controller to a signalBox (interlocking)</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="connectedSignalBox" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the controlled signalBox</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
       
<xs:annotation>
         
<xs:documentation>The control level</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute ControlledSignalBox/@extentOfControl
type rail3:tExtentOfControl
properties
use optional
facets
Kind Value Annotation
enumeration steeringOnly
enumeration none
enumeration notificationOnly
enumeration fullControl
annotation
documentation
The control level
source <xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
 
<xs:annotation>
   
<xs:documentation>The control level</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element ControlledSignalBox/connectedSignalBox
diagram railml3_p80.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the controlled signalBox
source <xs:element name="connectedSignalBox" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the controlled signalBox</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Controller
diagram railml3_p81.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:controlledAssets rail3:itineraries
used by
element Controllers/controller
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A controller is an individual terminal, commonly a workstation, that can control the interlocking. The controller is normally situated in a control centre. railML provides a logical link between an interlocking and the individual controller. The user can attach useful data to this link, such as addresses that may be granted control over this IL. railML will not define the nature of the addresses, i.e IP-addresses or hexadecimal address of terminals that communicate with the IL via some serial bus. The protocol (IP, UDP, serial, parallel) is irrelevant to railML. Note that a Control Centre (DE: Leitstelle, FR: Poste de controle, NL: VL-post) is likely to control multiple interlockings and vice versa, one interlocking can be controlled from multiple control centres, an n:m relation. This implies that a control centre can have multiple controllers, defined as a terminal from which a signal man controls an interlocking. The IL is unaware of the Control Centre but aware of the controller.
source <xs:complexType name="Controller">
 
<xs:annotation>
   
<xs:documentation>A controller is an individual terminal, commonly a workstation, that can control the interlocking. The controller is normally situated in a control centre. railML provides a logical link between an interlocking and the individual controller. The user can attach useful data to this link, such as addresses that may be granted control over this IL. railML will not define the nature of the addresses, i.e IP-addresses or hexadecimal address of terminals that communicate with the IL via some serial bus. The protocol (IP, UDP, serial, parallel) is irrelevant to railML. Note that a Control Centre (DE: Leitstelle, FR: Poste de controle, NL: VL-post) is likely to control multiple interlockings and vice versa, one interlocking can be controlled from multiple control centres, an n:m relation. This implies that a control centre can have multiple controllers, defined as a terminal from which a signal man controls an interlocking. The IL is unaware of the Control Centre but aware of the controller.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="controlledAssets" type="rail3:ControlledAssets" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The container of references to all signalBox (interlocking) and system assets controlled from this unit.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="itineraries" type="rail3:Itineraries" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The container of all itineraries as a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element Controller/controlledAssets
diagram railml3_p82.png
namespace https://www.railml.org/schemas/3.1
type rail3:ControlledAssets
properties
content complex
children rail3:controlledInterlocking rail3:controlledSystemAsset
annotation
documentation
The container of references to all signalBox (interlocking) and system assets controlled from this unit.
source <xs:element name="controlledAssets" type="rail3:ControlledAssets" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The container of references to all signalBox (interlocking) and system assets controlled from this unit.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Controller/itineraries
diagram railml3_p83.png
namespace https://www.railml.org/schemas/3.1
type rail3:Itineraries
properties
minOcc 0
maxOcc 1
content complex
children rail3:itinerary
annotation
documentation
The container of all itineraries as a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).
source <xs:element name="itineraries" type="rail3:Itineraries" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The container of all itineraries as a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Controllers
diagram railml3_p84.png
namespace https://www.railml.org/schemas/3.1
children rail3:controller
used by
element Interlocking/controllers
annotation
documentation
container element for all controller elements
source <xs:complexType name="Controllers">
 
<xs:annotation>
   
<xs:documentation>container element for all controller elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="controller" type="rail3:Controller" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Container with reference to connected interlockings and system assets controlled by this operational terminal.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Controllers/controller
diagram railml3_p85.png
namespace https://www.railml.org/schemas/3.1
type rail3:Controller
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:controlledAssets rail3:itineraries
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Container with reference to connected interlockings and system assets controlled by this operational terminal.
source <xs:element name="controller" type="rail3:Controller" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Container with reference to connected interlockings and system assets controlled by this operational terminal.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType CrossingAndGivenPosition
diagram railml3_p86.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedCrossingAndPosition
used by
elements CrossingInPosition/givenPosition RouteRelation/requiredCrossingPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the movable crossing and its position plus the level of enforcement
source <xs:complexType name="CrossingAndGivenPosition">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the movable crossing and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedCrossingAndPosition" type="rail3:CrossingAndPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the movable crossing and its position</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element CrossingAndGivenPosition/relatedCrossingAndPosition
diagram railml3_p87.png
namespace https://www.railml.org/schemas/3.1
type rail3:CrossingAndPosition
properties
content complex
children rail3:designator rail3:refersToCrossing
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tCrossingPosition  required      
documentation
The position the crossing is in.
annotation
documentation
the tuple of references to the movable crossing and its position
source <xs:element name="relatedCrossingAndPosition" type="rail3:CrossingAndPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the movable crossing and its position</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType CrossingAndPosition
diagram railml3_p88.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToCrossing
used by
element CrossingAndGivenPosition/relatedCrossingAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tCrossingPosition  required      
documentation
The position the crossing is in.
annotation
documentation
Tuple of crossing element and its (logical) position.
source <xs:complexType name="CrossingAndPosition">
 
<xs:annotation>
   
<xs:documentation>Tuple of crossing element and its (logical) position.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToCrossing" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inPosition" type="rail3:tCrossingPosition" use="required">
       
<xs:annotation>
         
<xs:documentation>The position the crossing is in.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute CrossingAndPosition/@inPosition
type rail3:tCrossingPosition
properties
use required
facets
Kind Value Annotation
enumeration upleft-rightdown
enumeration downleft-rightup
annotation
documentation
The position the crossing is in.
source <xs:attribute name="inPosition" type="rail3:tCrossingPosition" use="required">
 
<xs:annotation>
   
<xs:documentation>The position the crossing is in.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element CrossingAndPosition/refersToCrossing
diagram railml3_p89.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the crossing.
source <xs:element name="refersToCrossing" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType CrossingInPosition
diagram railml3_p90.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenPosition
used by
elements WorkZone/crossingInPosition LocalOperationArea/crossingInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any movable crossing and its position inside or outside the restricted area required for use and/or protection
source <xs:complexType name="CrossingInPosition">
 
<xs:annotation>
   
<xs:documentation>reference to any movable crossing and its position inside or outside the restricted area required for use and/or protection</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenPosition" type="rail3:CrossingAndGivenPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the movable crossing and its position plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute CrossingInPosition/@protectingSide
type rail3:tProtectingSideList
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
indication whether the required position is for protection of the area from inside or outside
source <xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element CrossingInPosition/givenPosition
diagram railml3_p91.png
namespace https://www.railml.org/schemas/3.1
type rail3:CrossingAndGivenPosition
properties
content complex
children rail3:designator rail3:relatedCrossingAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the movable crossing and its position plus the level of enforcement
source <xs:element name="givenPosition" type="rail3:CrossingAndGivenPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the movable crossing and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DangerPoint
diagram railml3_p92.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:lastSupervisedSectionBeforeDP rail3:situatedAtTrackAsset
used by
element DangerPoints/dangerPoint
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
distance  rail3:tLengthM  optional      
documentation
Distance in metres from exit signal to danger point. Optional because one may also derive this distance from the track asset where the danger point is situated.
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h associated with the danger point.
annotation
documentation
The danger point defines the position beyond the exit signal up to where a train is likely to be safe.
Designed for ETCS modelling.
source <xs:complexType name="DangerPoint">
 
<xs:annotation>
   
<xs:documentation>The danger point defines the position beyond the exit signal up to where a train is likely to be safe.
Designed for ETCS modelling.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="lastSupervisedSectionBeforeDP" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference to last TVD section which is completely before the danger point. It is used when the danger point is situated at the end of a TVD section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="situatedAtTrackAsset" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the track asset the danger point is located. It is used when the danger point is situated in the middle of a TVD section or beyond any TVD section in case of not supervised tracks.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="distance" type="rail3:tLengthM" use="optional">
       
<xs:annotation>
         
<xs:documentation>Distance in metres from exit signal to danger point. Optional because one may also derive this distance from the track asset where the danger point is situated.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Release speed in km/h associated with the danger point.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DangerPoint/@distance
type rail3:tLengthM
properties
use optional
annotation
documentation
Distance in metres from exit signal to danger point. Optional because one may also derive this distance from the track asset where the danger point is situated.
source <xs:attribute name="distance" type="rail3:tLengthM" use="optional">
 
<xs:annotation>
   
<xs:documentation>Distance in metres from exit signal to danger point. Optional because one may also derive this distance from the track asset where the danger point is situated.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute DangerPoint/@releaseSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Release speed in km/h associated with the danger point.
source <xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Release speed in km/h associated with the danger point.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element DangerPoint/lastSupervisedSectionBeforeDP
diagram railml3_p93.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to last TVD section which is completely before the danger point. It is used when the danger point is situated at the end of a TVD section.
source <xs:element name="lastSupervisedSectionBeforeDP" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference to last TVD section which is completely before the danger point. It is used when the danger point is situated at the end of a TVD section.</xs:documentation>
 
</xs:annotation>
</xs:element>

element DangerPoint/situatedAtTrackAsset
diagram railml3_p94.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the track asset the danger point is located. It is used when the danger point is situated in the middle of a TVD section or beyond any TVD section in case of not supervised tracks.
source <xs:element name="situatedAtTrackAsset" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the track asset the danger point is located. It is used when the danger point is situated in the middle of a TVD section or beyond any TVD section in case of not supervised tracks.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DangerPoints
diagram railml3_p95.png
namespace https://www.railml.org/schemas/3.1
children rail3:dangerPoint
used by
element AssetsForIL/dangerPoints
annotation
documentation
container element for all DangerPoint elements
source <xs:complexType name="DangerPoints">
 
<xs:annotation>
   
<xs:documentation>container element for all DangerPoint elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="dangerPoint" type="rail3:DangerPoint" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>position beyond the exit signal up to where a train is likely to be safe</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element DangerPoints/dangerPoint
diagram railml3_p96.png
namespace https://www.railml.org/schemas/3.1
type rail3:DangerPoint
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:lastSupervisedSectionBeforeDP rail3:situatedAtTrackAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
distance  rail3:tLengthM  optional      
documentation
Distance in metres from exit signal to danger point. Optional because one may also derive this distance from the track asset where the danger point is situated.
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h associated with the danger point.
annotation
documentation
position beyond the exit signal up to where a train is likely to be safe
source <xs:element name="dangerPoint" type="rail3:DangerPoint" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>position beyond the exit signal up to where a train is likely to be safe</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DerailerAndGivenPosition
diagram railml3_p97.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedDerailerAndPosition
used by
elements DerailerInPosition/givenPosition RouteRelation/requiredDerailerPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the derailer and its position plus the level of enforcement
source <xs:complexType name="DerailerAndGivenPosition">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the derailer and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedDerailerAndPosition" type="rail3:DerailerAndPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the derailer and its position</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element DerailerAndGivenPosition/relatedDerailerAndPosition
diagram railml3_p98.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerAndPosition
properties
content complex
children rail3:designator rail3:refersToDerailer
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tDerailingPosition  required      
documentation
The position the derailer is in.
annotation
documentation
the tuple of references to the derailer and its position
source <xs:element name="relatedDerailerAndPosition" type="rail3:DerailerAndPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the derailer and its position</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DerailerAndPosition
diagram railml3_p99.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToDerailer
used by
elements DerailerAndGivenPosition/relatedDerailerAndPosition SwitchPositionRestriction/relatedDerailerInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tDerailingPosition  required      
documentation
The position the derailer is in.
annotation
documentation
A tuple (derailer, position). Refers to a derailer and a position. Used for expressing concepts like: the derailer has to be in the non-derailing/passable position.
source <xs:complexType name="DerailerAndPosition">
 
<xs:annotation>
   
<xs:documentation>A tuple (derailer, position). Refers to a derailer and a position. Used for expressing concepts like: the derailer has to be in the non-derailing/passable position.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToDerailer" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the derailer.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inPosition" type="rail3:tDerailingPosition" use="required">
       
<xs:annotation>
         
<xs:documentation>The position the derailer is in.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DerailerAndPosition/@inPosition
type rail3:tDerailingPosition
properties
use required
facets
Kind Value Annotation
enumeration passablePosition
enumeration derailingPosition
annotation
documentation
The position the derailer is in.
source <xs:attribute name="inPosition" type="rail3:tDerailingPosition" use="required">
 
<xs:annotation>
   
<xs:documentation>The position the derailer is in.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element DerailerAndPosition/refersToDerailer
diagram railml3_p100.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the derailer.
source <xs:element name="refersToDerailer" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the derailer.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DerailerIL
diagram railml3_p101.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:MovableElement
properties
base rail3:MovableElement
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement
used by
element DerailersIL/derailerIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tDerailingPosition  optional      
documentation
This is the preferred position of the derailer which it is switched to when not in use.
annotation
documentation
The derailer or trap switch is an infrastructure element that either allows or disallows train passage. A derailer typically operates on one rail only; trap switch (points) have similar effect using both rails to literally derail the train for protection purpose.
Derailers that are locally and manually controlled are obviously not within the scope of an interlocking as the dispatcher will typically prevent trains from derailing by blocking signals leading towards such a device
source <xs:complexType name="DerailerIL">
 
<xs:annotation>
   
<xs:documentation>The derailer or trap switch is an infrastructure element that either allows or disallows train passage. A derailer typically operates on one rail only; trap switch (points) have similar effect using both rails to literally derail the train for protection purpose.
Derailers that are locally and manually controlled are obviously not within the scope of an interlocking as the dispatcher will typically prevent trains from derailing by blocking signals leading towards such a device
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:MovableElement">
     
<xs:sequence/>
     
<xs:attribute name="preferredPosition" type="rail3:tDerailingPosition" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the preferred position of the derailer which it is switched to when not in use.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DerailerIL/@preferredPosition
type rail3:tDerailingPosition
properties
use optional
facets
Kind Value Annotation
enumeration passablePosition
enumeration derailingPosition
annotation
documentation
This is the preferred position of the derailer which it is switched to when not in use.
source <xs:attribute name="preferredPosition" type="rail3:tDerailingPosition" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the preferred position of the derailer which it is switched to when not in use.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType DerailerInPosition
diagram railml3_p102.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenPosition
used by
elements WorkZone/derailerInPosition LocalOperationArea/derailerInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any derailer and its position inside or outside the restricted area required for use and/or protection
source <xs:complexType name="DerailerInPosition">
 
<xs:annotation>
   
<xs:documentation>reference to any derailer and its position inside or outside the restricted area required for use and/or protection</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenPosition" type="rail3:DerailerAndGivenPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the derailer and its position plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DerailerInPosition/@protectingSide
type rail3:tProtectingSideList
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
indication whether the required position is for protection of the area from inside or outside
source <xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element DerailerInPosition/givenPosition
diagram railml3_p103.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerAndGivenPosition
properties
content complex
children rail3:designator rail3:relatedDerailerAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the derailer and its position plus the level of enforcement
source <xs:element name="givenPosition" type="rail3:DerailerAndGivenPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the derailer and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DerailersIL
diagram railml3_p104.png
namespace https://www.railml.org/schemas/3.1
children rail3:derailerIL
used by
element AssetsForIL/derailersIL
source <xs:complexType name="DerailersIL">
 
<xs:sequence>
   
<xs:element name="derailerIL" type="rail3:DerailerIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The derailer is a track asset that either allows or disallows train passage. Here the functional aspects for interlocking operation are considered.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element DerailersIL/derailerIL
diagram railml3_p105.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tDerailingPosition  optional      
documentation
This is the preferred position of the derailer which it is switched to when not in use.
annotation
documentation
The derailer is a track asset that either allows or disallows train passage. Here the functional aspects for interlocking operation are considered.
source <xs:element name="derailerIL" type="rail3:DerailerIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The derailer is a track asset that either allows or disallows train passage. Here the functional aspects for interlocking operation are considered.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DestinationPoints
diagram railml3_p106.png
namespace https://www.railml.org/schemas/3.1
children rail3:destinationPoint
used by
element AssetsForIL/destinationPoints
annotation
documentation
container element for all DestinationPoint elements
The definition of destination points which are mainly route exits. This allows definition independent of routes.
source <xs:complexType name="DestinationPoints">
 
<xs:annotation>
   
<xs:documentation>container element for all DestinationPoint elements
The definition of destination points which are mainly route exits. This allows definition independent of routes.
</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="destinationPoint" type="rail3:RouteExit" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>destination point of a secured running path</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element DestinationPoints/destinationPoint
diagram railml3_p107.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteExit
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo rail3:hasDangerPoint rail3:hasOverlap
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
destination point of a secured running path
source <xs:element name="destinationPoint" type="rail3:RouteExit" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>destination point of a secured running path</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DetectorAndGivenState
diagram railml3_p108.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedDetectorAndState
used by
elements DetectorInState/givenState RouteRelation/requiredDetectorState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the detector and its state plus the level of enforcement
source <xs:complexType name="DetectorAndGivenState">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the detector and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedDetectorAndState" type="rail3:DetectorAndState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the detector and its state</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element DetectorAndGivenState/relatedDetectorAndState
diagram railml3_p109.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorAndState
properties
content complex
children rail3:designator rail3:refersToDetector
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tDetectorStates  required      
documentation
The state of the particular detector.
annotation
documentation
the tuple of references to the detector and its state
source <xs:element name="relatedDetectorAndState" type="rail3:DetectorAndState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the detector and its state</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DetectorAndState
diagram railml3_p110.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToDetector
used by
element DetectorAndGivenState/relatedDetectorAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tDetectorStates  required      
documentation
The state of the particular detector.
annotation
documentation
The tuple of reference to a detector and its state.
source <xs:complexType name="DetectorAndState">
 
<xs:annotation>
   
<xs:documentation>The tuple of reference to a detector and its state.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToDetector" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the particular detector.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inState" type="rail3:tDetectorStates" use="required">
       
<xs:annotation>
         
<xs:documentation>The state of the particular detector.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DetectorAndState/@inState
type rail3:tDetectorStates
properties
use required
facets
Kind Value Annotation
enumeration inactive
enumeration deactivated
enumeration activated
annotation
documentation
The state of the particular detector.
source <xs:attribute name="inState" type="rail3:tDetectorStates" use="required">
 
<xs:annotation>
   
<xs:documentation>The state of the particular detector.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element DetectorAndState/refersToDetector
diagram railml3_p111.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the particular detector.
source <xs:element name="refersToDetector" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the particular detector.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DetectorInState
diagram railml3_p112.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenState
used by
elements WorkZone/detectorInState LocalOperationArea/detectorInState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any detector and its state inside or outside the restricted area required for use
source <xs:complexType name="DetectorInState">
 
<xs:annotation>
   
<xs:documentation>reference to any detector and its state inside or outside the restricted area required for use</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenState" type="rail3:DetectorAndGivenState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the detector and its state plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element DetectorInState/givenState
diagram railml3_p113.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorAndGivenState
properties
content complex
children rail3:designator rail3:relatedDetectorAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the detector and its state plus the level of enforcement
source <xs:element name="givenState" type="rail3:DetectorAndGivenState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the detector and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType DetectorTypes
diagram railml3_p114.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasDetectorTypes
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
detectorType  rail3:tDetectorTypeListExt  required      
documentation
The classification of the particular detector type.
annotation
documentation
The generic classification of detector types.
source <xs:complexType name="DetectorTypes">
 
<xs:annotation>
   
<xs:documentation>The generic classification of detector types.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="detectorType" type="rail3:tDetectorTypeListExt" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the particular detector type.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute DetectorTypes/@detectorType
type rail3:tDetectorTypeListExt
properties
use required
annotation
documentation
The classification of the particular detector type.
source <xs:attribute name="detectorType" type="rail3:tDetectorTypeListExt" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the particular detector type.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType ElementGroup
diagram railml3_p115.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:groupType rail3:refersToMember
used by
element SignalBox/implementsElementGroup
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
For operational purpose of the interlocking some elements are grouped together. This allows e.g. commanding them with only one command.
source <xs:complexType name="ElementGroup">
 
<xs:annotation>
   
<xs:documentation>For operational purpose of the interlocking some elements are grouped together. This allows e.g. commanding them with only one command.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="groupType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the IM specific element group type.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="refersToMember" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the member element within this group.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element ElementGroup/groupType
diagram railml3_p116.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the IM specific element group type.
source <xs:element name="groupType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the IM specific element group type.</xs:documentation>
 
</xs:annotation>
</xs:element>

element ElementGroup/refersToMember
diagram railml3_p117.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the member element within this group.
source <xs:element name="refersToMember" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the member element within this group.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ElementGroupingTypes
diagram railml3_p118.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasElementGroupType
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
elementGroupType  rail3:tGroupingTypesExt  required      
documentation
The classification of the element group.
annotation
documentation
list of possible purposes for element grouping
source <xs:complexType name="ElementGroupingTypes">
 
<xs:annotation>
   
<xs:documentation>list of possible purposes for element grouping</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="elementGroupType" type="rail3:tGroupingTypesExt" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the element group.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute ElementGroupingTypes/@elementGroupType
type rail3:tGroupingTypesExt
properties
use required
annotation
documentation
The classification of the element group.
source <xs:attribute name="elementGroupType" type="rail3:tGroupingTypesExt" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the element group.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType EntityIL
diagram railml3_p119.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:tElementWithIDandDesignator
properties
base rail3:tElementWithIDandDesignator
children rail3:designator
used by
complexTypes ActivationCondition ApproachStartingDetector AspectRelation AssetAndGivenState AssetAndState AssetsForIL CombinedRoute Configuration ConflictingRoute ConflictReason ControlledSignalBox Controller CrossingInPosition DangerPoint DerailerInPosition DetectorInState DetectorTypes ElementGroup ElementGroupingTypes GenericAspect GenericIM GenericResetStrategy GenericRouteType InputOutput Interface InterlockingInterface Key KeyLockInState LevelCrossingDeactivator LevelCrossingInState LevelCrossingTypeList Overlap OverlapRelease PartialRoute PowerSupplyIL RouteActivationSection RouteEntry RouteExit RouteRelation SignalBox SignalDelayTime SignalPlan SignalWithAspect SwitchInPosition SwitchPositionRestriction SystemAssetConnectedToIL TrackAsset TrackAssetConnectedToIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
base type for normal elements in IL providing attributes @id and @name plus the possibility to add an anyAttribute
source <xs:complexType name="EntityIL">
 
<xs:annotation>
   
<xs:documentation>base type for normal elements in IL providing attributes @id and @name plus the possibility to add an anyAttribute</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:tElementWithIDandDesignator">
     
<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="rail3:anyAttribute"/>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

complexType EntityILref
diagram railml3_p120.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:tElementWithIDref
properties
base rail3:tElementWithIDref
used by
elements KeyLockIL/acceptsKey WorkZone/activationLock RouteActivationSection/activationSection Overlap/activeForApproachRoute Route/additionalRelation AspectRelation/appliesToRoute ATPdevice/atpType MovableCrossing/branchDownLeft MovableCrossing/branchDownRight SwitchIL/branchLeft SwitchIL/branchRight MovableCrossing/branchUpLeft MovableCrossing/branchUpRight PermissionZone/canBeControlledBy CombinedRoute/comboEntry CombinedRoute/comboExit ConflictingRoute/conflictsWithRoute ControlledSignalBox/connectedSignalBox SystemAssetConnectedToIL/connectedSystemAsset MovableElement/connectedToPowerSupply TrackAssetConnectedToIL/connectedTrackAsset CombinedRoute/containsRoute SignalBox/controlledBy PermissionZone/controlledElement SignalBox/controlsCombinedRoute SignalBox/controlsRoute LocalOperationArea/deactivationKey GenericDetector/detectorType ATPdevice/device ATPdevice/entrySignal ATPdevice/exitSignal InterlockingInterface/firstRemoteTvdSection ElementGroup/groupType Route/handlesRouteType SignalBox/hasConflictingRoutes RouteExit/hasDangerPoint SignalDelayTime/hasDelayedSignal TvdSection/hasDemarcatingBufferstop TvdSection/hasDemarcatingTraindetector TvdSection/hasExitSignal SwitchIL/hasFoulingTrainDetectors MovableCrossing/hasFoulingTrainDetectors MovableElement/hasGaugeClearanceMarker InterlockingInterface/hasInterface LogicalDevice/hasInterface LevelCrossingIL/hasInterface RouteExit/hasOverlap SignalBox/hasPermissionZone Route/hasReleaseGroup TvdSection/hasResetStrategy KeyLockIL/hasSlaveLock PartialRoute/hasTvdSection MovableElement/hasTvdSection LevelCrossingIL/hasTvdSection Route/hasTvdSection Overlap/hasTvdSection KeyLockIL/hasTvdSection InterlockingInterface/incomingRoute LevelCrossingIL/isLevelCrossingType RestrictedArea/isLimitedBy Overlap/isLimitedBy InterlockingInterface/lastOwnTvdSection DangerPoint/lastSupervisedSectionBeforeDP RouteEntry/nonReplacement InterlockingInterface/outgoingRoute GenericIM/ownsSetsOfAssets SignalIL/protectsBlockExit RouteEntry/refersTo ApproachStartingDetector/refersTo LogicalDevice/refersTo MovableElement/refersTo SignalIL/refersTo LevelCrossingIL/refersTo RouteExit/refersTo CrossingAndPosition/refersToCrossing DerailerAndPosition/refersToDerailer DetectorAndState/refersToDetector LockAndState/refersToKeyLock LevelCrossingAndState/refersToLevelCrossing ElementGroup/refersToMember ConflictingRoute/refersToRoute SectionAndVacancy/refersToSection SignalAndAspect/refersToSignal SwitchAndPosition/refersToSwitch MovableElement/relatedMovableElement Overlap/relatedToTrackAsset WorkZone/releasedForLocalOperation LocalOperationArea/releasedForLocalOperation OverlapRelease/releaseTriggerSection SignalAndAspect/showsAspect AspectRelation/signalsSpeedProfile DangerPoint/situatedAtTrackAsset LogicalDevice/takesControlOf LevelCrossingDeactivator/tvdDetectorRef
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
base type for referring elements in other parts of the schema providing just attribute @ref plus the possibility to add an anyAttribute
source <xs:complexType name="EntityILref">
 
<xs:annotation>
   
<xs:documentation>base type for referring elements in other parts of the schema providing just attribute @ref plus the possibility to add an anyAttribute</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:tElementWithIDref">
     
<xs:sequence/>
     
<xs:attributeGroup ref="rail3:anyAttribute"/>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

complexType GenericAspect
diagram railml3_p121.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
genericAspect  rail3:tGenericAspectList  required      
documentation
The classification of the aspect.
annotation
documentation
A signal aspect according to the IM regulations. Each aspect is given a unique identifier, a name, e.g. Vr-6 and description e.g. warning signal - expect stop (Vorsignal Halt erwarten). This element allows a generic classification of each aspect. The aspect can include speed information.
source <xs:complexType name="GenericAspect">
 
<xs:annotation>
   
<xs:documentation>A signal aspect according to the IM regulations. Each aspect is given a unique identifier, a name, e.g. Vr-6 and description e.g. warning signal - expect stop (Vorsignal Halt erwarten). This element allows a generic classification of each aspect. The aspect can include speed information.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="genericAspect" type="rail3:tGenericAspectList" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the aspect.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute GenericAspect/@genericAspect
type rail3:tGenericAspectList
properties
use required
facets
Kind Value Annotation
enumeration warning
enumeration supplementary
enumeration restriction
enumeration proceed
enumeration limitedProceed
enumeration informative
enumeration combinedProceed
enumeration closed
enumeration caution
enumeration callOn
annotation
documentation
The classification of the aspect.
source <xs:attribute name="genericAspect" type="rail3:tGenericAspectList" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the aspect.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType GenericDetector
diagram railml3_p122.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:LogicalDevice
properties
base rail3:LogicalDevice
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo rail3:detectorType
used by
element GenericDetectors/genericDetector
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
affectsRouteSignalling  xs:boolean  optional      
documentation
indication whether the signalling of a related route is affected by the detector status
allowsSingleOverride  xs:boolean  optional      
documentation
The detector output may be overridden once by special command.
allowsPermanentOverride  xs:boolean  optional      
documentation
The detector output may be permanently overridden by special command.
hasTriggeredSelfTest  xs:boolean  optional      
documentation
The detector may have a self-test which is to be triggered from the interlocking.
selfTestToleranceTime  xs:duration  optional      
documentation
The time period for which the detector output shall be tolerated due to running self-test.
selfTestInterval  xs:duration  optional      
documentation
The interval at which the self-test is running, i.e. automatically initiated or triggered from interlocking.
annotation
documentation
Detectors are devices detecting the exceeding of a particular characteristic and providing an output to the interlocking. Depending on the function it may influence the route signalling.
source <xs:complexType name="GenericDetector">
 
<xs:annotation>
   
<xs:documentation>Detectors are devices detecting the exceeding of a particular characteristic and providing an output to the interlocking. Depending on the function it may influence the route signalling.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:LogicalDevice">
     
<xs:sequence>
       
<xs:element name="detectorType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the particular detector type.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="affectsRouteSignalling" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the signalling of a related route is affected by the detector status</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="allowsSingleOverride" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The detector output may be overridden once by special command.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="allowsPermanentOverride" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The detector output may be permanently overridden by special command.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="hasTriggeredSelfTest" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The detector may have a self-test which is to be triggered from the interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="selfTestToleranceTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The time period for which the detector output shall be tolerated due to running self-test.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="selfTestInterval" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The interval at which the self-test is running, i.e. automatically initiated or triggered from interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute GenericDetector/@affectsRouteSignalling
type xs:boolean
properties
use optional
annotation
documentation
indication whether the signalling of a related route is affected by the detector status
source <xs:attribute name="affectsRouteSignalling" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the signalling of a related route is affected by the detector status</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute GenericDetector/@allowsSingleOverride
type xs:boolean
properties
use optional
annotation
documentation
The detector output may be overridden once by special command.
source <xs:attribute name="allowsSingleOverride" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The detector output may be overridden once by special command.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute GenericDetector/@allowsPermanentOverride
type xs:boolean
properties
use optional
annotation
documentation
The detector output may be permanently overridden by special command.
source <xs:attribute name="allowsPermanentOverride" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The detector output may be permanently overridden by special command.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute GenericDetector/@hasTriggeredSelfTest
type xs:boolean
properties
use optional
annotation
documentation
The detector may have a self-test which is to be triggered from the interlocking.
source <xs:attribute name="hasTriggeredSelfTest" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The detector may have a self-test which is to be triggered from the interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute GenericDetector/@selfTestToleranceTime
type xs:duration
properties
use optional
annotation
documentation
The time period for which the detector output shall be tolerated due to running self-test.
source <xs:attribute name="selfTestToleranceTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The time period for which the detector output shall be tolerated due to running self-test.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute GenericDetector/@selfTestInterval
type xs:duration
properties
use optional
annotation
documentation
The interval at which the self-test is running, i.e. automatically initiated or triggered from interlocking.
source <xs:attribute name="selfTestInterval" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The interval at which the self-test is running, i.e. automatically initiated or triggered from interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element GenericDetector/detectorType
diagram railml3_p123.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the particular detector type.
source <xs:element name="detectorType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the particular detector type.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType GenericDetectors
diagram railml3_p124.png
namespace https://www.railml.org/schemas/3.1
children rail3:genericDetector
used by
element AssetsForIL/genericDetectors
annotation
documentation
contains all GenericDetector elements
source <xs:complexType name="GenericDetectors">
 
<xs:annotation>
   
<xs:documentation>contains all GenericDetector elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="genericDetector" type="rail3:GenericDetector" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Device for detecting the exceeding of a particular characteristic.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element GenericDetectors/genericDetector
diagram railml3_p125.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericDetector
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo rail3:detectorType
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
affectsRouteSignalling  xs:boolean  optional      
documentation
indication whether the signalling of a related route is affected by the detector status
allowsSingleOverride  xs:boolean  optional      
documentation
The detector output may be overridden once by special command.
allowsPermanentOverride  xs:boolean  optional      
documentation
The detector output may be permanently overridden by special command.
hasTriggeredSelfTest  xs:boolean  optional      
documentation
The detector may have a self-test which is to be triggered from the interlocking.
selfTestToleranceTime  xs:duration  optional      
documentation
The time period for which the detector output shall be tolerated due to running self-test.
selfTestInterval  xs:duration  optional      
documentation
The interval at which the self-test is running, i.e. automatically initiated or triggered from interlocking.
annotation
documentation
Device for detecting the exceeding of a particular characteristic.
source <xs:element name="genericDetector" type="rail3:GenericDetector" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Device for detecting the exceeding of a particular characteristic.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType GenericIM
diagram railml3_p126.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:ownsSetsOfAssets rail3:usesTypes
used by
element GenericIMs/specificIM
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The container for the IM specific type definitions.
source <xs:complexType name="GenericIM">
 
<xs:annotation>
   
<xs:documentation>The container for the IM specific type definitions.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="ownsSetsOfAssets" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the associated lists of assets.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="usesTypes" type="rail3:GenericTypes" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The types defined for this IM.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element GenericIM/ownsSetsOfAssets
diagram railml3_p127.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the associated lists of assets.
source <xs:element name="ownsSetsOfAssets" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the associated lists of assets.</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericIM/usesTypes
diagram railml3_p128.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericTypes
properties
content complex
children rail3:hasAspect rail3:hasTVDresetStrategy rail3:hasRouteType rail3:hasLevelCrossingType rail3:hasElementGroupType rail3:hasDetectorTypes
attributes
Name  Type  Use  Default  Fixed  Annotation
annotation
documentation
The types defined for this IM.
source <xs:element name="usesTypes" type="rail3:GenericTypes" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The types defined for this IM.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType GenericIMs
diagram railml3_p129.png
namespace https://www.railml.org/schemas/3.1
children rail3:specificIM
used by
element Interlocking/specificIMs
annotation
documentation
container element for all specificIM elements
source <xs:complexType name="GenericIMs">
 
<xs:annotation>
   
<xs:documentation>container element for all specificIM elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="specificIM" type="rail3:GenericIM" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Container with the generic classification of types used by a specific infrastructure manager.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element GenericIMs/specificIM
diagram railml3_p130.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericIM
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:ownsSetsOfAssets rail3:usesTypes
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Container with the generic classification of types used by a specific infrastructure manager.
source <xs:element name="specificIM" type="rail3:GenericIM" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Container with the generic classification of types used by a specific infrastructure manager.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType GenericResetStrategy
diagram railml3_p131.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasTVDresetStrategy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
resetStrategy  rail3:tGenericResetStrategyList  required      
documentation
The classification of the reset strategy.
annotation
documentation
Used by TVD section reset strategy that the IM regulates. E.g. reset by sweep allowed, manual reset allowed. Note that the IM can apply different reset strategies to sections. Absence of a strategy implies that reset is not possible.
source <xs:complexType name="GenericResetStrategy">
 
<xs:annotation>
   
<xs:documentation>Used by TVD section reset strategy that the IM regulates. E.g. reset by sweep allowed, manual reset allowed. Note that the IM can apply different reset strategies to sections. Absence of a strategy implies that reset is not possible.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="resetStrategy" type="rail3:tGenericResetStrategyList" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the reset strategy.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute GenericResetStrategy/@resetStrategy
type rail3:tGenericResetStrategyList
properties
use required
facets
Kind Value Annotation
enumeration unconditionalReset
enumeration sweepRunWithoutConfirmation
enumeration sweepRunWithConfirmation
enumeration procedure
enumeration conditionalReset
annotation
documentation
The classification of the reset strategy.
source <xs:attribute name="resetStrategy" type="rail3:tGenericResetStrategyList" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the reset strategy.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType GenericRouteType
diagram railml3_p132.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasRouteType
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
genericRouteType  rail3:tGenericRouteTypeExt  required      
documentation
The classification of the route types.
annotation
documentation
For train traffic control different types of routes are used. Each particular type has its IM specifics which are defined in the operational rules. Here the generic classification is done.
source <xs:complexType name="GenericRouteType">
 
<xs:annotation>
   
<xs:documentation>For train traffic control different types of routes are used. Each particular type has its IM specifics which are defined in the operational rules. Here the generic classification is done.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="genericRouteType" type="rail3:tGenericRouteTypeExt" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the route types.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute GenericRouteType/@genericRouteType
type rail3:tGenericRouteTypeExt
properties
use required
annotation
documentation
The classification of the route types.
source <xs:attribute name="genericRouteType" type="rail3:tGenericRouteTypeExt" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the route types.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType GenericTypes
diagram railml3_p133.png
namespace https://www.railml.org/schemas/3.1
children rail3:hasAspect rail3:hasTVDresetStrategy rail3:hasRouteType rail3:hasLevelCrossingType rail3:hasElementGroupType rail3:hasDetectorTypes
used by
element GenericIM/usesTypes
attributes
Name  Type  Use  Default  Fixed  Annotation
annotation
documentation
The list of all possible types being specific for this IM.
source <xs:complexType name="GenericTypes">
 
<xs:annotation>
   
<xs:documentation>The list of all possible types being specific for this IM.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="hasAspect" type="rail3:GenericAspect" minOccurs="2" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Classification of signal aspects.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="hasTVDresetStrategy" type="rail3:GenericResetStrategy" minOccurs="0" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Classification of TVD section reset strategies</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="hasRouteType" type="rail3:GenericRouteType" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Classification of route types.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="hasLevelCrossingType" type="rail3:LevelCrossingTypeList" minOccurs="0" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Classification of basic level crossing types.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="hasElementGroupType" type="rail3:ElementGroupingTypes" minOccurs="0" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Classification of element groups used for operation from the interlock.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="hasDetectorTypes" type="rail3:DetectorTypes" minOccurs="0" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The list of detector type classification.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
 
<xs:attributeGroup ref="rail3:anyAttribute"/>
</xs:complexType>

element GenericTypes/hasAspect
diagram railml3_p134.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericAspect
properties
minOcc 2
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
genericAspect  rail3:tGenericAspectList  required      
documentation
The classification of the aspect.
annotation
documentation
Classification of signal aspects.
source <xs:element name="hasAspect" type="rail3:GenericAspect" minOccurs="2" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Classification of signal aspects.</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericTypes/hasTVDresetStrategy
diagram railml3_p135.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericResetStrategy
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
resetStrategy  rail3:tGenericResetStrategyList  required      
documentation
The classification of the reset strategy.
annotation
documentation
Classification of TVD section reset strategies
source <xs:element name="hasTVDresetStrategy" type="rail3:GenericResetStrategy" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Classification of TVD section reset strategies</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericTypes/hasRouteType
diagram railml3_p136.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericRouteType
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
genericRouteType  rail3:tGenericRouteTypeExt  required      
documentation
The classification of the route types.
annotation
documentation
Classification of route types.
source <xs:element name="hasRouteType" type="rail3:GenericRouteType" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Classification of route types.</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericTypes/hasLevelCrossingType
diagram railml3_p137.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingTypeList
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
controlType  rail3:tLevelCrossingControlTypes  required      
documentation
The classification of the control type w.r.t. the interlocking operation.
allowsLocalOperation  xs:boolean  optional      
documentation
The level crossing may have a control unit which allows local operation from the field.
hasBarrier  xs:boolean  optional      
documentation
The level crossing may be equipped with barriers for road traffic.
hasTrafficWarning  xs:boolean  optional      
documentation
The level crossing may be equipped with audible/optical means to allow warning of road traffic.
annotation
documentation
Classification of basic level crossing types.
source <xs:element name="hasLevelCrossingType" type="rail3:LevelCrossingTypeList" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Classification of basic level crossing types.</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericTypes/hasElementGroupType
diagram railml3_p138.png
namespace https://www.railml.org/schemas/3.1
type rail3:ElementGroupingTypes
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
elementGroupType  rail3:tGroupingTypesExt  required      
documentation
The classification of the element group.
annotation
documentation
Classification of element groups used for operation from the interlock.
source <xs:element name="hasElementGroupType" type="rail3:ElementGroupingTypes" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Classification of element groups used for operation from the interlock.</xs:documentation>
 
</xs:annotation>
</xs:element>

element GenericTypes/hasDetectorTypes
diagram railml3_p139.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorTypes
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
detectorType  rail3:tDetectorTypeListExt  required      
documentation
The classification of the particular detector type.
annotation
documentation
The list of detector type classification.
source <xs:element name="hasDetectorTypes" type="rail3:DetectorTypes" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The list of detector type classification.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType InitStatus
diagram railml3_p140.png
namespace https://www.railml.org/schemas/3.1
used by
element Interface/initStatus
attributes
Name  Type  Use  Default  Fixed  Annotation
comString  rail3:tBitPatternAny  required      
documentation
The status of all outputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
messString  rail3:tBitPatternAny  required      
documentation
The status of all inputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
annotation
documentation
This is the description of the interface status in command and message direction which is assumed in start-up cases, i.e. when both sides of the system are just powered up.
source <xs:complexType name="InitStatus">
 
<xs:annotation>
   
<xs:documentation>This is the description of the interface status in command and message direction which is assumed in start-up cases, i.e. when both sides of the system are just powered up.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence/>
 
<xs:attribute name="comString" type="rail3:tBitPatternAny" use="required">
   
<xs:annotation>
     
<xs:documentation>The status of all outputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter</xs:documentation>
   
</xs:annotation>
 
</xs:attribute>
 
<xs:attribute name="messString" type="rail3:tBitPatternAny" use="required">
   
<xs:annotation>
     
<xs:documentation>The status of all inputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter</xs:documentation>
   
</xs:annotation>
 
</xs:attribute>
</xs:complexType>

attribute InitStatus/@comString
type rail3:tBitPatternAny
properties
use required
facets
Kind Value Annotation
minLength 1
pattern [0-1x]*
annotation
documentation
The status of all outputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
source <xs:attribute name="comString" type="rail3:tBitPatternAny" use="required">
 
<xs:annotation>
   
<xs:documentation>The status of all outputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute InitStatus/@messString
type rail3:tBitPatternAny
properties
use required
facets
Kind Value Annotation
minLength 1
pattern [0-1x]*
annotation
documentation
The status of all inputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
source <xs:attribute name="messString" type="rail3:tBitPatternAny" use="required">
 
<xs:annotation>
   
<xs:documentation>The status of all inputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType InputOutput
diagram railml3_p141.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
elements Interface/command Interface/message
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
bitNr  xs:nonNegativeInteger  optional      
documentation
The order number of the information.
description  xs:string  optional      
documentation
The verbal description of the information.
normalState  rail3:tContactState  optional      
documentation
The power-off state of the input or output.
pulseDuration  xs:duration  optional      
documentation
The pulse width of the input or output if using pulsed information.
annotation
documentation
The detailed list of input or output information (closed=1=active, open=0=inactive)
source <xs:complexType name="InputOutput">
 
<xs:annotation>
   
<xs:documentation>The detailed list of input or output information (closed=1=active, open=0=inactive)</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="bitNr" type="xs:nonNegativeInteger" use="optional">
       
<xs:annotation>
         
<xs:documentation>The order number of the information.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="description" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>The verbal description of the information.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="normalState" type="rail3:tContactState" use="optional">
       
<xs:annotation>
         
<xs:documentation>The power-off state of the input or output.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="pulseDuration" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The pulse width of the input or output if using pulsed information.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute InputOutput/@bitNr
type xs:nonNegativeInteger
properties
use optional
annotation
documentation
The order number of the information.
source <xs:attribute name="bitNr" type="xs:nonNegativeInteger" use="optional">
 
<xs:annotation>
   
<xs:documentation>The order number of the information.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute InputOutput/@description
type xs:string
properties
use optional
annotation
documentation
The verbal description of the information.
source <xs:attribute name="description" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>The verbal description of the information.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute InputOutput/@normalState
type rail3:tContactState
properties
use optional
facets
Kind Value Annotation
enumeration closed
enumeration open
annotation
documentation
The power-off state of the input or output.
source <xs:attribute name="normalState" type="rail3:tContactState" use="optional">
 
<xs:annotation>
   
<xs:documentation>The power-off state of the input or output.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute InputOutput/@pulseDuration
type xs:duration
properties
use optional
annotation
documentation
The pulse width of the input or output if using pulsed information.
source <xs:attribute name="pulseDuration" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The pulse width of the input or output if using pulsed information.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType Interface
diagram railml3_p142.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:command rail3:message rail3:initStatus
used by
element Interfaces/interface
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
invalidTolerationTime  xs:duration  optional      
documentation
The time period for which an invalid status of the received messages is tolerated.
switchoverTolerationTime  xs:duration  optional      
documentation
The time period for which the received messages are not considered stable due to switching process.
annotation
documentation
Description of a physical interface with definition of the information to be exchanged in which direction.
source <xs:complexType name="Interface">
 
<xs:annotation>
   
<xs:documentation>Description of a physical interface with definition of the information to be exchanged in which direction.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="command" type="rail3:InputOutput" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The list of the output information, i.e. commanded to the interfaced unit.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="message" type="rail3:InputOutput" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The list of input information, i.e. received from the interfaced unit.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="initStatus" type="rail3:InitStatus" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The initial status of commands and messages on the interface in case of "cold start", i.e. a kind of predefined status to be assumed in absence of real information.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="invalidTolerationTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The time period for which an invalid status of the received messages is tolerated.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="switchoverTolerationTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The time period for which the received messages are not considered stable due to switching process.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Interface/@invalidTolerationTime
type xs:duration
properties
use optional
annotation
documentation
The time period for which an invalid status of the received messages is tolerated.
source <xs:attribute name="invalidTolerationTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The time period for which an invalid status of the received messages is tolerated.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Interface/@switchoverTolerationTime
type xs:duration
properties
use optional
annotation
documentation
The time period for which the received messages are not considered stable due to switching process.
source <xs:attribute name="switchoverTolerationTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The time period for which the received messages are not considered stable due to switching process.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element Interface/command
diagram railml3_p143.png
namespace https://www.railml.org/schemas/3.1
type rail3:InputOutput
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
bitNr  xs:nonNegativeInteger  optional      
documentation
The order number of the information.
description  xs:string  optional      
documentation
The verbal description of the information.
normalState  rail3:tContactState  optional      
documentation
The power-off state of the input or output.
pulseDuration  xs:duration  optional      
documentation
The pulse width of the input or output if using pulsed information.
annotation
documentation
The list of the output information, i.e. commanded to the interfaced unit.
source <xs:element name="command" type="rail3:InputOutput" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The list of the output information, i.e. commanded to the interfaced unit.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Interface/message
diagram railml3_p144.png
namespace https://www.railml.org/schemas/3.1
type rail3:InputOutput
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
bitNr  xs:nonNegativeInteger  optional      
documentation
The order number of the information.
description  xs:string  optional      
documentation
The verbal description of the information.
normalState  rail3:tContactState  optional      
documentation
The power-off state of the input or output.
pulseDuration  xs:duration  optional      
documentation
The pulse width of the input or output if using pulsed information.
annotation
documentation
The list of input information, i.e. received from the interfaced unit.
source <xs:element name="message" type="rail3:InputOutput" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The list of input information, i.e. received from the interfaced unit.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Interface/initStatus
diagram railml3_p145.png
namespace https://www.railml.org/schemas/3.1
type rail3:InitStatus
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
comString  rail3:tBitPatternAny  required      
documentation
The status of all outputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
messString  rail3:tBitPatternAny  required      
documentation
The status of all inputs as bit string starting with lowest bit. "0"-inactive, "1"-active, "x"-does not matter
annotation
documentation
The initial status of commands and messages on the interface in case of "cold start", i.e. a kind of predefined status to be assumed in absence of real information.
source <xs:element name="initStatus" type="rail3:InitStatus" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The initial status of commands and messages on the interface in case of "cold start", i.e. a kind of predefined status to be assumed in absence of real information.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Interfaces
diagram railml3_p146.png
namespace https://www.railml.org/schemas/3.1
children rail3:interface
used by
element AssetsForIL/interfaces
annotation
documentation
container element for all Interface elements
source <xs:complexType name="Interfaces">
 
<xs:annotation>
   
<xs:documentation>container element for all Interface elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="interface" type="rail3:Interface" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Description of a physical interface with definition of the information to be exchanged in which direction.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Interfaces/interface
diagram railml3_p147.png
namespace https://www.railml.org/schemas/3.1
type rail3:Interface
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:command rail3:message rail3:initStatus
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
invalidTolerationTime  xs:duration  optional      
documentation
The time period for which an invalid status of the received messages is tolerated.
switchoverTolerationTime  xs:duration  optional      
documentation
The time period for which the received messages are not considered stable due to switching process.
annotation
documentation
Description of a physical interface with definition of the information to be exchanged in which direction.
source <xs:element name="interface" type="rail3:Interface" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Description of a physical interface with definition of the information to be exchanged in which direction.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Interlocking
diagram railml3_p148.png
namespace https://www.railml.org/schemas/3.1
children rail3:assetsForIL rail3:controllers rail3:signalBoxes rail3:specificIMs
used by
element railML/interlocking
annotation
documentation
This is the top level element for the interlocking model. It is the home of several elements (classes) containing the particular aspects of the information.
source <xs:complexType name="Interlocking">
 
<xs:annotation>
   
<xs:documentation>This is the top level element for the interlocking model. It is the home of several elements (classes) containing the particular aspects of the information.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="assetsForIL" type="rail3:AssetsForIL" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>container for all asset elements needed for interlocking purpose</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="controllers" type="rail3:Controllers" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>container for all Controller elements</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="signalBoxes" type="rail3:SignalBoxes" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>container for all SignalBox elements</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="specificIMs" type="rail3:GenericIMs" minOccurs="0" maxOccurs="1">
     
<xs:annotation>
       
<xs:documentation>container for all SpecificIM elements</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Interlocking/assetsForIL
diagram railml3_p149.png
namespace https://www.railml.org/schemas/3.1
type rail3:AssetsForIL
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:tvdSections rail3:switchesIL rail3:derailersIL rail3:movableCrossings rail3:levelCrossingsIL rail3:keys rail3:keyLocksIL rail3:genericDetectors rail3:signalsIL rail3:atpDevices rail3:interfaces rail3:workZones rail3:localOperationAreas rail3:shuntingZones rail3:permissionZones rail3:routeReleaseGroupsAhead rail3:routeReleaseGroupsRear rail3:routes rail3:conflictingRoutes rail3:routeRelations rail3:combinedRoutes rail3:overlaps rail3:dangerPoints rail3:destinationPoints rail3:powerSuppliesIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
container for all asset elements needed for interlocking purpose
source <xs:element name="assetsForIL" type="rail3:AssetsForIL" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>container for all asset elements needed for interlocking purpose</xs:documentation>
 
</xs:annotation>
</xs:element>

element Interlocking/controllers
diagram railml3_p150.png
namespace https://www.railml.org/schemas/3.1
type rail3:Controllers
properties
minOcc 0
maxOcc 1
content complex
children rail3:controller
annotation
documentation
container for all Controller elements
source <xs:element name="controllers" type="rail3:Controllers" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>container for all Controller elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element Interlocking/signalBoxes
diagram railml3_p151.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalBoxes
properties
minOcc 0
maxOcc 1
content complex
children rail3:signalBox
annotation
documentation
container for all SignalBox elements
source <xs:element name="signalBoxes" type="rail3:SignalBoxes" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>container for all SignalBox elements</xs:documentation>
 
</xs:annotation>
</xs:element>

element Interlocking/specificIMs
diagram railml3_p152.png
namespace https://www.railml.org/schemas/3.1
type rail3:GenericIMs
properties
minOcc 0
maxOcc 1
content complex
children rail3:specificIM
annotation
documentation
container for all SpecificIM elements
source <xs:element name="specificIMs" type="rail3:GenericIMs" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>container for all SpecificIM elements</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType InterlockingInterface
diagram railml3_p153.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:lastOwnTvdSection rail3:firstRemoteTvdSection rail3:incomingRoute rail3:outgoingRoute rail3:hasInterface
used by
element SignalBox/controlsInterface
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
interfaceLocation  rail3:tIxlInterfaceLocationTypeList  required      
documentation
The topology view of interface location determining the extent of information to be exchanged.
isOnCommandSide  xs:boolean  optional      
documentation
True means the related interlocking uses the described commands for output towards the partner. With false it is inverted for the related interlocking.
annotation
documentation
The interface between different interlockings is a special object and differs in the amount of information exchanged between the two.
If the interlockings are of different type or from different vendor the interface is often made of parallel data exchange and might use relays.
source <xs:complexType name="InterlockingInterface">
 
<xs:annotation>
   
<xs:documentation>The interface between different interlockings is a special object and differs in the amount of information exchanged between the two.
If the interlockings are of different type or from different vendor the interface is often made of parallel data exchange and might use relays.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="lastOwnTvdSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the last TVD section just before the interface.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="firstRemoteTvdSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the first TVD section within the other interlocking beyond the interface.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="incomingRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>This is the reference to all routes the interlocking knows that start at the interface location or in rear of it in direction towards the interlocking.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="outgoingRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>This is the reference to all routes the interlocking knows that end at the interface location or in advance of it in direction towards the other interlocking.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the description of the physical interface with commands and messages transmitted.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="interfaceLocation" type="rail3:tIxlInterfaceLocationTypeList" use="required">
       
<xs:annotation>
         
<xs:documentation>The topology view of interface location determining the extent of information to be exchanged.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="isOnCommandSide" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>True means the related interlocking uses the described commands for output towards the partner. With false it is inverted for the related interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute InterlockingInterface/@interfaceLocation
type rail3:tIxlInterfaceLocationTypeList
properties
use required
facets
Kind Value Annotation
enumeration atStationBorder
enumeration onOpenLine
enumeration inStation
annotation
documentation
The topology view of interface location determining the extent of information to be exchanged.
source <xs:attribute name="interfaceLocation" type="rail3:tIxlInterfaceLocationTypeList" use="required">
 
<xs:annotation>
   
<xs:documentation>The topology view of interface location determining the extent of information to be exchanged.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute InterlockingInterface/@isOnCommandSide
type xs:boolean
properties
use optional
annotation
documentation
True means the related interlocking uses the described commands for output towards the partner. With false it is inverted for the related interlocking.
source <xs:attribute name="isOnCommandSide" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>True means the related interlocking uses the described commands for output towards the partner. With false it is inverted for the related interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element InterlockingInterface/lastOwnTvdSection
diagram railml3_p154.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the last TVD section just before the interface.
source <xs:element name="lastOwnTvdSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the last TVD section just before the interface.</xs:documentation>
 
</xs:annotation>
</xs:element>

element InterlockingInterface/firstRemoteTvdSection
diagram railml3_p155.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the first TVD section within the other interlocking beyond the interface.
source <xs:element name="firstRemoteTvdSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the first TVD section within the other interlocking beyond the interface.</xs:documentation>
 
</xs:annotation>
</xs:element>

element InterlockingInterface/incomingRoute
diagram railml3_p156.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to all routes the interlocking knows that start at the interface location or in rear of it in direction towards the interlocking.
source <xs:element name="incomingRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>This is the reference to all routes the interlocking knows that start at the interface location or in rear of it in direction towards the interlocking.</xs:documentation>
 
</xs:annotation>
</xs:element>

element InterlockingInterface/outgoingRoute
diagram railml3_p157.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to all routes the interlocking knows that end at the interface location or in advance of it in direction towards the other interlocking.
source <xs:element name="outgoingRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>This is the reference to all routes the interlocking knows that end at the interface location or in advance of it in direction towards the other interlocking.</xs:documentation>
 
</xs:annotation>
</xs:element>

element InterlockingInterface/hasInterface
diagram railml3_p158.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the description of the physical interface with commands and messages transmitted.
source <xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the description of the physical interface with commands and messages transmitted.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Itineraries
diagram railml3_p159.png
namespace https://www.railml.org/schemas/3.1
children rail3:itinerary
used by
element Controller/itineraries
annotation
documentation
container for all itinerary elements describing train paths through the network
source <xs:complexType name="Itineraries">
 
<xs:annotation>
   
<xs:documentation>container for all itinerary elements describing train paths through the network</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="itinerary" type="rail3:CombinedRoute" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Itinerary is a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Itineraries/itinerary
diagram railml3_p160.png
namespace https://www.railml.org/schemas/3.1
type rail3:CombinedRoute
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:comboEntry rail3:comboExit rail3:containsRoute
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Itinerary is a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).
source <xs:element name="itinerary" type="rail3:CombinedRoute" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Itinerary is a combination of single routes defining the path from A to B independent of involved signalBoxes (interlockings).</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Key
diagram railml3_p161.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:isPhysical
used by
element Keys/key
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
An abstract key to unlock a device or decode a message.
source <xs:complexType name="Key">
 
<xs:annotation>
   
<xs:documentation>An abstract key to unlock a device or decode a message.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="isPhysical" type="xs:boolean" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The key can be of physical type, i.e. key for a mechanical lock.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element Key/isPhysical
diagram railml3_p162.png
namespace https://www.railml.org/schemas/3.1
type xs:boolean
properties
minOcc 0
maxOcc 1
content simple
annotation
documentation
The key can be of physical type, i.e. key for a mechanical lock.
source <xs:element name="isPhysical" type="xs:boolean" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The key can be of physical type, i.e. key for a mechanical lock.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType KeyLockIL
diagram railml3_p163.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:LogicalDevice
properties
base rail3:LogicalDevice
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo rail3:acceptsKey rail3:hasTvdSection rail3:hasSlaveLock
used by
element KeyLocksIL/keyLockIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
hasAutomaticKeyRelease  xs:boolean  optional      
documentation
The key of a siding on open line may be released automatically when the related TVD section (trigger) becomes occupied.
hasAutomaticKeyLock  xs:boolean  optional      
documentation
The key may be automatically relocked when returned into the lock. Thus the key can be used only once.
keyRequestTime  xs:duration  optional      
documentation
The time period a request for key release is indicated to the operator.
keyAuthoriseTime  xs:duration  optional      
documentation
The time period the key release is active after commanded by the operator. Afterwards a not removed key will be automatically relocked again.
annotation
documentation
A device, also known as key lock (de: Schlüsselschalter) situated near the track. It is used to request local control of a (group of) track assets from the interlocking. Commonly, staff requests local control from the interlocking via this device. Once granted, the key can be removed upon which the (group of) track asset is no longer under interlocking control. In reverse, the interlocking takes back control when the key is inserted and staff acknowledged relinquishing control. Note that the lock is a track asset defined in infrastructure namespace. The interlocking reads the state of the lock and returns permission to remove the key, i.e. levelOfControl=fullControl. A combined lock has a master lock that controls a set of slave locks. Slave locks may have to be released in a well-defined sequence.
source <xs:complexType name="KeyLockIL">
 
<xs:annotation>
   
<xs:documentation>A device, also known as key lock (de: Schlüsselschalter) situated near the track. It is used to request local control of a (group of) track assets from the interlocking. Commonly, staff requests local control from the interlocking via this device. Once granted, the key can be removed upon which the (group of) track asset is no longer under interlocking control. In reverse, the interlocking takes back control when the key is inserted and staff acknowledged relinquishing control. Note that the lock is a track asset defined in infrastructure namespace. The interlocking reads the state of the lock and returns permission to remove the key, i.e. levelOfControl=fullControl. A combined lock has a master lock that controls a set of slave locks. Slave locks may have to be released in a well-defined sequence.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:LogicalDevice">
     
<xs:sequence>
       
<xs:element name="acceptsKey" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the particular key used with this master lock.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the TVD section related to this master lock. This is especially used for siding key locks on open line.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasSlaveLock" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to a dependent KeyReleaseInstrument</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="hasAutomaticKeyRelease" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The key of a siding on open line may be released automatically when the related TVD section (trigger) becomes occupied.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="hasAutomaticKeyLock" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The key may be automatically relocked when returned into the lock. Thus the key can be used only once.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="keyRequestTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The time period a request for key release is indicated to the operator.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="keyAuthoriseTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The time period the key release is active after commanded by the operator. Afterwards a not removed key will be automatically relocked again.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute KeyLockIL/@hasAutomaticKeyRelease
type xs:boolean
properties
use optional
annotation
documentation
The key of a siding on open line may be released automatically when the related TVD section (trigger) becomes occupied.
source <xs:attribute name="hasAutomaticKeyRelease" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The key of a siding on open line may be released automatically when the related TVD section (trigger) becomes occupied.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute KeyLockIL/@hasAutomaticKeyLock
type xs:boolean
properties
use optional
annotation
documentation
The key may be automatically relocked when returned into the lock. Thus the key can be used only once.
source <xs:attribute name="hasAutomaticKeyLock" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The key may be automatically relocked when returned into the lock. Thus the key can be used only once.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute KeyLockIL/@keyRequestTime
type xs:duration
properties
use optional
annotation
documentation
The time period a request for key release is indicated to the operator.
source <xs:attribute name="keyRequestTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The time period a request for key release is indicated to the operator.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute KeyLockIL/@keyAuthoriseTime
type xs:duration
properties
use optional
annotation
documentation
The time period the key release is active after commanded by the operator. Afterwards a not removed key will be automatically relocked again.
source <xs:attribute name="keyAuthoriseTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The time period the key release is active after commanded by the operator. Afterwards a not removed key will be automatically relocked again.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element KeyLockIL/acceptsKey
diagram railml3_p164.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the particular key used with this master lock.
source <xs:element name="acceptsKey" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the particular key used with this master lock.</xs:documentation>
 
</xs:annotation>
</xs:element>

element KeyLockIL/hasTvdSection
diagram railml3_p165.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the TVD section related to this master lock. This is especially used for siding key locks on open line.
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the TVD section related to this master lock. This is especially used for siding key locks on open line.</xs:documentation>
 
</xs:annotation>
</xs:element>

element KeyLockIL/hasSlaveLock
diagram railml3_p166.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to a dependent KeyReleaseInstrument
source <xs:element name="hasSlaveLock" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to a dependent KeyReleaseInstrument</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType KeyLockInState
diagram railml3_p167.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenState
used by
elements WorkZone/keyLockInState LocalOperationArea/keyLockInState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required state is for protection of the area from inside or outside
annotation
documentation
reference to any key lock and its state inside or outside the restricted area required for use and/or protection
source <xs:complexType name="KeyLockInState">
 
<xs:annotation>
   
<xs:documentation>reference to any key lock and its state inside or outside the restricted area required for use and/or protection</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenState" type="rail3:LockAndGivenState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the key lock and its state plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the required state is for protection of the area from inside or outside</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute KeyLockInState/@protectingSide
type rail3:tProtectingSideList
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
indication whether the required state is for protection of the area from inside or outside
source <xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the required state is for protection of the area from inside or outside</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element KeyLockInState/givenState
diagram railml3_p168.png
namespace https://www.railml.org/schemas/3.1
type rail3:LockAndGivenState
properties
content complex
children rail3:designator rail3:relatedLockAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the key lock and its state plus the level of enforcement
source <xs:element name="givenState" type="rail3:LockAndGivenState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the key lock and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType KeyLocksIL
diagram railml3_p169.png
namespace https://www.railml.org/schemas/3.1
children rail3:keyLockIL rail3:ownsLogicalDevice
used by
element AssetsForIL/keyLocksIL
annotation
documentation
container element for all KeyLockIL elements
source <xs:complexType name="KeyLocksIL">
 
<xs:annotation>
   
<xs:documentation>container element for all KeyLockIL elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="keyLockIL" type="rail3:KeyLockIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>A device for locking a key which is released from interlocking or by using a master key.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
   
<xs:element name="ownsLogicalDevice" type="rail3:LogicalDevice" minOccurs="1" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element KeyLocksIL/keyLockIL
diagram railml3_p170.png
namespace https://www.railml.org/schemas/3.1
type rail3:KeyLockIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo rail3:acceptsKey rail3:hasTvdSection rail3:hasSlaveLock
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
hasAutomaticKeyRelease  xs:boolean  optional      
documentation
The key of a siding on open line may be released automatically when the related TVD section (trigger) becomes occupied.
hasAutomaticKeyLock  xs:boolean  optional      
documentation
The key may be automatically relocked when returned into the lock. Thus the key can be used only once.
keyRequestTime  xs:duration  optional      
documentation
The time period a request for key release is indicated to the operator.
keyAuthoriseTime  xs:duration  optional      
documentation
The time period the key release is active after commanded by the operator. Afterwards a not removed key will be automatically relocked again.
annotation
documentation
A device for locking a key which is released from interlocking or by using a master key.
source <xs:element name="keyLockIL" type="rail3:KeyLockIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>A device for locking a key which is released from interlocking or by using a master key.</xs:documentation>
 
</xs:annotation>
</xs:element>

element KeyLocksIL/ownsLogicalDevice
diagram railml3_p171.png
namespace https://www.railml.org/schemas/3.1
type rail3:LogicalDevice
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
source <xs:element name="ownsLogicalDevice" type="rail3:LogicalDevice" minOccurs="1" maxOccurs="unbounded"/>

complexType Keys
diagram railml3_p172.png
namespace https://www.railml.org/schemas/3.1
children rail3:key
used by
element AssetsForIL/keys
annotation
documentation
container element for all Key elements
source <xs:complexType name="Keys">
 
<xs:annotation>
   
<xs:documentation>container element for all Key elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="key" type="rail3:Key" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>An ancillary element used for operation of a specific locking device. </xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Keys/key
diagram railml3_p173.png
namespace https://www.railml.org/schemas/3.1
type rail3:Key
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:isPhysical
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
An ancillary element used for operation of a specific locking device.
source <xs:element name="key" type="rail3:Key" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>An ancillary element used for operation of a specific locking device. </xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingAndGivenState
diagram railml3_p174.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedLevelCrossingAndState
used by
elements LevelCrossingInState/givenState RouteRelation/requiredLevelCrossingState Overlap/requiresLevelCrossingInState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the level crossing and its state plus the level of enforcement
source <xs:complexType name="LevelCrossingAndGivenState">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the level crossing and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedLevelCrossingAndState" type="rail3:LevelCrossingAndState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the level crossing and its state</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element LevelCrossingAndGivenState/relatedLevelCrossingAndState
diagram railml3_p175.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingAndState
properties
content complex
children rail3:designator rail3:refersToLevelCrossing
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tLevelCrossingState  required      
documentation
The state the level crossing has.
annotation
documentation
the tuple of references to the level crossing and its state
source <xs:element name="relatedLevelCrossingAndState" type="rail3:LevelCrossingAndState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the level crossing and its state</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingAndState
diagram railml3_p176.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToLevelCrossing
used by
element LevelCrossingAndGivenState/relatedLevelCrossingAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tLevelCrossingState  required      
documentation
The state the level crossing has.
annotation
documentation
A tuple of Level Crossing and its position.
source <xs:complexType name="LevelCrossingAndState">
 
<xs:annotation>
   
<xs:documentation>A tuple of Level Crossing and its position.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToLevelCrossing" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the level crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inState" type="rail3:tLevelCrossingState" use="required">
       
<xs:annotation>
         
<xs:documentation>The state the level crossing has.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LevelCrossingAndState/@inState
type rail3:tLevelCrossingState
properties
use required
facets
Kind Value Annotation
enumeration unknown
enumeration closing
enumeration opening
enumeration closed
enumeration open
annotation
documentation
The state the level crossing has.
source <xs:attribute name="inState" type="rail3:tLevelCrossingState" use="required">
 
<xs:annotation>
   
<xs:documentation>The state the level crossing has.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element LevelCrossingAndState/refersToLevelCrossing
diagram railml3_p177.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the level crossing.
source <xs:element name="refersToLevelCrossing" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the level crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingDeactivator
diagram railml3_p178.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:tvdDetectorRef
used by
element LevelCrossingIL/deactivatedBy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
Deactivation can be delayed by this timer. Starts counting when the associated TVD section is vacated.
annotation
documentation
The train detector and/or TVD section(s) that deactivates the level crossing. This may be the level crossing tracks, e.g. km 12.809/2, that would appear on signalling plans.
source <xs:complexType name="LevelCrossingDeactivator">
 
<xs:annotation>
   
<xs:documentation>The train detector and/or TVD section(s) that deactivates the level crossing. This may be the level crossing tracks, e.g. km 12.809/2, that would appear on signalling plans.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="tvdDetectorRef" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the train detection element in infrastructure or a dedicated TVD section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="delay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Deactivation can be delayed by this timer. Starts counting when the associated TVD section is vacated.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LevelCrossingDeactivator/@delay
type xs:duration
properties
use required
annotation
documentation
Deactivation can be delayed by this timer. Starts counting when the associated TVD section is vacated.
source <xs:attribute name="delay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Deactivation can be delayed by this timer. Starts counting when the associated TVD section is vacated.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element LevelCrossingDeactivator/tvdDetectorRef
diagram railml3_p179.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the train detection element in infrastructure or a dedicated TVD section.
source <xs:element name="tvdDetectorRef" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the train detection element in infrastructure or a dedicated TVD section.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingIL
diagram railml3_p180.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
children rail3:designator rail3:hasInterface rail3:isLevelCrossingType rail3:refersTo rail3:deactivatedBy rail3:activationCondition rail3:hasTvdSection
used by
element LevelCrossingsIL/levelCrossingIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
preferredPosition  rail3:tLevelCrossingState  optional      
documentation
This is the state of level crossing under normal conditions, i.e. when not in use. For most level crossings this would be the open state.
unprotectedSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Speed in km/h at which the level crossing can be passed when it is not protected (V_LX)
typicalTimeToClose  xs:duration  required      
documentation
Average time between the time a train detector notes an approaching train and the moment the level crossing is closed to road traffic, i.e. the moment that the interlocking can lock a route across the level crossing. This equates to the time it takes to close the barrier (if present). Should be set to 0 if no barrier is configured. Useful for simulation.
constantWarningTime  xs:duration  optional      
documentation
A level crossing must cause as little as possible hindering to train as well as road traffic. Therefore, the level crossing must close as late as safely possible. The optimal delay, known as constant warning time, between activation and closing is possible when the train speed and position are known.
minimumOpenTime  xs:duration  optional      
documentation
This is the time the level crossing has to be open before it is allowed to close again. This is to ensure a certain capacity for the crossing road traffic.
maximumClosedTime  xs:duration  optional      
documentation
This is the time span after a message to the operator is triggered because a level crossing being closed for too long time can be considered as unsafe. In such cases the road drivers and pedestrians might try to cross the railway line illegally.
requiresStopBeforeUnprotectedLevelCrossing  xs:boolean  optional      
documentation
Flag to define whether any train needs to stop in front of the level crossing in case it is unprotected. Only afterwards it can proceed according the value in speedRestriction.
annotation
documentation
A level crossing (LX) is activated, i.e. requested to close for road traffic, upon train approach. This happens when the train crosses a detection point, i.e. an insulated track joint, axle counter or treadle. These approach detectors are commonly referred to as Approach Starting (AS).
source <xs:complexType name="LevelCrossingIL">
 
<xs:annotation>
   
<xs:documentation>A level crossing (LX) is activated, i.e. requested to close for road traffic, upon train approach. This happens when the train crosses a detection point, i.e. an insulated track joint, axle counter or treadle. These approach detectors are commonly referred to as Approach Starting (AS).</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to physical description of level crossing interface with list of commands to the field and notifications from the field</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="isLevelCrossingType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to the basic type of level crossing. It refers to a basic configuration of a level crossing for this IM.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the physical level crossing in infrastructure.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="deactivatedBy" type="rail3:LevelCrossingDeactivator" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The description of deactivation conditions for this level crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="activationCondition" type="rail3:ActivationCondition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Description of the possible activation conditions of this level crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the TVD section(s) directly at the level crossing</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="preferredPosition" type="rail3:tLevelCrossingState" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the state of level crossing under normal conditions, i.e. when not in use. For most level crossings this would be the open state.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="unprotectedSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Speed in km/h at which the level crossing can be passed when it is not protected (V_LX)</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="typicalTimeToClose" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Average time between the time a train detector notes an approaching train and the moment the level crossing is closed to road traffic, i.e. the moment that the interlocking can lock a route across the level crossing. This equates to the time it takes to close the barrier (if present). Should be set to 0 if no barrier is configured. Useful for simulation.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="constantWarningTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>A level crossing must cause as little as possible hindering to train as well as road traffic. Therefore, the level crossing must close as late as safely possible. The optimal delay, known as constant warning time, between activation and closing is possible when the train speed and position are known.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="minimumOpenTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the time the level crossing has to be open before it is allowed to close again. This is to ensure a certain capacity for the crossing road traffic.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="maximumClosedTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the time span after a message to the operator is triggered because a level crossing being closed for too long time can be considered as unsafe. In such cases the road drivers and pedestrians might try to cross the railway line illegally.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="requiresStopBeforeUnprotectedLevelCrossing" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>Flag to define whether any train needs to stop in front of the level crossing in case it is unprotected. Only afterwards it can proceed according the value in speedRestriction.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LevelCrossingIL/@preferredPosition
type rail3:tLevelCrossingState
properties
use optional
facets
Kind Value Annotation
enumeration unknown
enumeration closing
enumeration opening
enumeration closed
enumeration open
annotation
documentation
This is the state of level crossing under normal conditions, i.e. when not in use. For most level crossings this would be the open state.
source <xs:attribute name="preferredPosition" type="rail3:tLevelCrossingState" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the state of level crossing under normal conditions, i.e. when not in use. For most level crossings this would be the open state.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@unprotectedSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Speed in km/h at which the level crossing can be passed when it is not protected (V_LX)
source <xs:attribute name="unprotectedSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Speed in km/h at which the level crossing can be passed when it is not protected (V_LX)</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@typicalTimeToClose
type xs:duration
properties
use required
annotation
documentation
Average time between the time a train detector notes an approaching train and the moment the level crossing is closed to road traffic, i.e. the moment that the interlocking can lock a route across the level crossing. This equates to the time it takes to close the barrier (if present). Should be set to 0 if no barrier is configured. Useful for simulation.
source <xs:attribute name="typicalTimeToClose" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Average time between the time a train detector notes an approaching train and the moment the level crossing is closed to road traffic, i.e. the moment that the interlocking can lock a route across the level crossing. This equates to the time it takes to close the barrier (if present). Should be set to 0 if no barrier is configured. Useful for simulation.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@constantWarningTime
type xs:duration
properties
use optional
annotation
documentation
A level crossing must cause as little as possible hindering to train as well as road traffic. Therefore, the level crossing must close as late as safely possible. The optimal delay, known as constant warning time, between activation and closing is possible when the train speed and position are known.
source <xs:attribute name="constantWarningTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>A level crossing must cause as little as possible hindering to train as well as road traffic. Therefore, the level crossing must close as late as safely possible. The optimal delay, known as constant warning time, between activation and closing is possible when the train speed and position are known.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@minimumOpenTime
type xs:duration
properties
use optional
annotation
documentation
This is the time the level crossing has to be open before it is allowed to close again. This is to ensure a certain capacity for the crossing road traffic.
source <xs:attribute name="minimumOpenTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the time the level crossing has to be open before it is allowed to close again. This is to ensure a certain capacity for the crossing road traffic.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@maximumClosedTime
type xs:duration
properties
use optional
annotation
documentation
This is the time span after a message to the operator is triggered because a level crossing being closed for too long time can be considered as unsafe. In such cases the road drivers and pedestrians might try to cross the railway line illegally.
source <xs:attribute name="maximumClosedTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the time span after a message to the operator is triggered because a level crossing being closed for too long time can be considered as unsafe. In such cases the road drivers and pedestrians might try to cross the railway line illegally.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingIL/@requiresStopBeforeUnprotectedLevelCrossing
type xs:boolean
properties
use optional
annotation
documentation
Flag to define whether any train needs to stop in front of the level crossing in case it is unprotected. Only afterwards it can proceed according the value in speedRestriction.
source <xs:attribute name="requiresStopBeforeUnprotectedLevelCrossing" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>Flag to define whether any train needs to stop in front of the level crossing in case it is unprotected. Only afterwards it can proceed according the value in speedRestriction.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element LevelCrossingIL/hasInterface
diagram railml3_p181.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to physical description of level crossing interface with list of commands to the field and notifications from the field
source <xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to physical description of level crossing interface with list of commands to the field and notifications from the field</xs:documentation>
 
</xs:annotation>
</xs:element>

element LevelCrossingIL/isLevelCrossingType
diagram railml3_p182.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the basic type of level crossing. It refers to a basic configuration of a level crossing for this IM.
source <xs:element name="isLevelCrossingType" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to the basic type of level crossing. It refers to a basic configuration of a level crossing for this IM.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LevelCrossingIL/refersTo
diagram railml3_p183.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the physical level crossing in infrastructure.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the physical level crossing in infrastructure.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LevelCrossingIL/deactivatedBy
diagram railml3_p184.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingDeactivator
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:tvdDetectorRef
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
Deactivation can be delayed by this timer. Starts counting when the associated TVD section is vacated.
annotation
documentation
The description of deactivation conditions for this level crossing.
source <xs:element name="deactivatedBy" type="rail3:LevelCrossingDeactivator" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The description of deactivation conditions for this level crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LevelCrossingIL/activationCondition
diagram railml3_p185.png
namespace https://www.railml.org/schemas/3.1
type rail3:ActivationCondition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:delayBySwitchPosition rail3:aspectRelatedDelay rail3:signalDelayTime rail3:activatedBy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
andOr  rail3:tAndOr  optional      
documentation
The logical combination of all activation conditions.
annotation
documentation
Description of the possible activation conditions of this level crossing.
source <xs:element name="activationCondition" type="rail3:ActivationCondition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Description of the possible activation conditions of this level crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LevelCrossingIL/hasTvdSection
diagram railml3_p186.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the TVD section(s) directly at the level crossing
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the TVD section(s) directly at the level crossing</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingInState
diagram railml3_p187.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenState
used by
elements WorkZone/levelCrossingInState LocalOperationArea/levelCrossingInState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any level crossing and its state inside the restricted area required for use
source <xs:complexType name="LevelCrossingInState">
 
<xs:annotation>
   
<xs:documentation>reference to any level crossing and its state inside the restricted area required for use</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenState" type="rail3:LevelCrossingAndGivenState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the level crossing and its state plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element LevelCrossingInState/givenState
diagram railml3_p188.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingAndGivenState
properties
content complex
children rail3:designator rail3:relatedLevelCrossingAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the level crossing and its state plus the level of enforcement
source <xs:element name="givenState" type="rail3:LevelCrossingAndGivenState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the level crossing and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingsIL
diagram railml3_p189.png
namespace https://www.railml.org/schemas/3.1
children rail3:levelCrossingIL
used by
element AssetsForIL/levelCrossingsIL
annotation
documentation
container element for all LevelCrossingIL elements
source <xs:complexType name="LevelCrossingsIL">
 
<xs:annotation>
   
<xs:documentation>container element for all LevelCrossingIL elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="levelCrossingIL" type="rail3:LevelCrossingIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The level crossing is a track asset allowing road traffic to cross the railway track in a secure way on the same level. Here the functional aspects for interlocking operation are considered.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element LevelCrossingsIL/levelCrossingIL
diagram railml3_p190.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:hasInterface rail3:isLevelCrossingType rail3:refersTo rail3:deactivatedBy rail3:activationCondition rail3:hasTvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
preferredPosition  rail3:tLevelCrossingState  optional      
documentation
This is the state of level crossing under normal conditions, i.e. when not in use. For most level crossings this would be the open state.
unprotectedSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Speed in km/h at which the level crossing can be passed when it is not protected (V_LX)
typicalTimeToClose  xs:duration  required      
documentation
Average time between the time a train detector notes an approaching train and the moment the level crossing is closed to road traffic, i.e. the moment that the interlocking can lock a route across the level crossing. This equates to the time it takes to close the barrier (if present). Should be set to 0 if no barrier is configured. Useful for simulation.
constantWarningTime  xs:duration  optional      
documentation
A level crossing must cause as little as possible hindering to train as well as road traffic. Therefore, the level crossing must close as late as safely possible. The optimal delay, known as constant warning time, between activation and closing is possible when the train speed and position are known.
minimumOpenTime  xs:duration  optional      
documentation
This is the time the level crossing has to be open before it is allowed to close again. This is to ensure a certain capacity for the crossing road traffic.
maximumClosedTime  xs:duration  optional      
documentation
This is the time span after a message to the operator is triggered because a level crossing being closed for too long time can be considered as unsafe. In such cases the road drivers and pedestrians might try to cross the railway line illegally.
requiresStopBeforeUnprotectedLevelCrossing  xs:boolean  optional      
documentation
Flag to define whether any train needs to stop in front of the level crossing in case it is unprotected. Only afterwards it can proceed according the value in speedRestriction.
annotation
documentation
The level crossing is a track asset allowing road traffic to cross the railway track in a secure way on the same level. Here the functional aspects for interlocking operation are considered.
source <xs:element name="levelCrossingIL" type="rail3:LevelCrossingIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The level crossing is a track asset allowing road traffic to cross the railway track in a secure way on the same level. Here the functional aspects for interlocking operation are considered.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LevelCrossingTypeList
diagram railml3_p191.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element GenericTypes/hasLevelCrossingType
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
controlType  rail3:tLevelCrossingControlTypes  required      
documentation
The classification of the control type w.r.t. the interlocking operation.
allowsLocalOperation  xs:boolean  optional      
documentation
The level crossing may have a control unit which allows local operation from the field.
hasBarrier  xs:boolean  optional      
documentation
The level crossing may be equipped with barriers for road traffic.
hasTrafficWarning  xs:boolean  optional      
documentation
The level crossing may be equipped with audible/optical means to allow warning of road traffic.
annotation
documentation
The level crossings have some basic features which can be specified independent of the particular manufacturer. Most important is the control type saying how the control relation between the interlocking and the level crossing is.
source <xs:complexType name="LevelCrossingTypeList">
 
<xs:annotation>
   
<xs:documentation>The level crossings have some basic features which can be specified independent of the particular manufacturer. Most important is the control type saying how the control relation between the interlocking and the level crossing is.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="controlType" type="rail3:tLevelCrossingControlTypes" use="required">
       
<xs:annotation>
         
<xs:documentation>The classification of the control type w.r.t. the interlocking operation.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="allowsLocalOperation" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The level crossing may have a control unit which allows local operation from the field.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="hasBarrier" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The level crossing may be equipped with barriers for road traffic.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="hasTrafficWarning" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The level crossing may be equipped with audible/optical means to allow warning of road traffic.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LevelCrossingTypeList/@controlType
type rail3:tLevelCrossingControlTypes
properties
use required
facets
Kind Value Annotation
enumeration autonomous
enumeration fullControlled
enumeration halfControlled
annotation
documentation
The classification of the control type w.r.t. the interlocking operation.
source <xs:attribute name="controlType" type="rail3:tLevelCrossingControlTypes" use="required">
 
<xs:annotation>
   
<xs:documentation>The classification of the control type w.r.t. the interlocking operation.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingTypeList/@allowsLocalOperation
type xs:boolean
properties
use optional
annotation
documentation
The level crossing may have a control unit which allows local operation from the field.
source <xs:attribute name="allowsLocalOperation" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The level crossing may have a control unit which allows local operation from the field.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingTypeList/@hasBarrier
type xs:boolean
properties
use optional
annotation
documentation
The level crossing may be equipped with barriers for road traffic.
source <xs:attribute name="hasBarrier" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The level crossing may be equipped with barriers for road traffic.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute LevelCrossingTypeList/@hasTrafficWarning
type xs:boolean
properties
use optional
annotation
documentation
The level crossing may be equipped with audible/optical means to allow warning of road traffic.
source <xs:attribute name="hasTrafficWarning" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The level crossing may be equipped with audible/optical means to allow warning of road traffic.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType LocalOperationArea
diagram railml3_p192.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:RestrictedArea
properties
base rail3:RestrictedArea
children rail3:designator rail3:isLimitedBy rail3:deactivationKey rail3:switchInPosition rail3:derailerInPosition rail3:crossingInPosition rail3:detectorInState rail3:signalWithAspect rail3:keyLockInState rail3:levelCrossingInState rail3:releasedForLocalOperation
used by
element LocalOperationAreas/localOperationArea
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Area used for local shunting movements without routes. Movable elements within the area might be operated from onsite panels. These areas are predefined for parts of a station.
source <xs:complexType name="LocalOperationArea">
 
<xs:annotation>
   
<xs:documentation>Area used for local shunting movements without routes. Movable elements within the area might be operated from onsite panels. These areas are predefined for parts of a station.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:RestrictedArea">
     
<xs:sequence>
       
<xs:element name="deactivationKey" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any device used for deactivate the local operation area after use</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="switchInPosition" type="rail3:SwitchInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any switch and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="derailerInPosition" type="rail3:DerailerInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any derailer and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="crossingInPosition" type="rail3:CrossingInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any movable crossing and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="detectorInState" type="rail3:DetectorInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any detector and its state inside or outside the local operation area required for use</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="signalWithAspect" type="rail3:SignalWithAspect" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any signal and its aspect inside or outside the local operation area required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="keyLockInState" type="rail3:KeyLockInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any key lock and its state inside or outside the local operation area required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="levelCrossingInState" type="rail3:LevelCrossingInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any level crossing and its state inside the local operation area required for use</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="releasedForLocalOperation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any element, which is released for local operation, when the local operation area is active</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element LocalOperationArea/deactivationKey
diagram railml3_p193.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any device used for deactivate the local operation area after use
source <xs:element name="deactivationKey" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any device used for deactivate the local operation area after use</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/switchInPosition
diagram railml3_p194.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any switch and its position inside or outside the local operation area required for use and/or protection
source <xs:element name="switchInPosition" type="rail3:SwitchInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any switch and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/derailerInPosition
diagram railml3_p195.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any derailer and its position inside or outside the local operation area required for use and/or protection
source <xs:element name="derailerInPosition" type="rail3:DerailerInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any derailer and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/crossingInPosition
diagram railml3_p196.png
namespace https://www.railml.org/schemas/3.1
type rail3:CrossingInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any movable crossing and its position inside or outside the local operation area required for use and/or protection
source <xs:element name="crossingInPosition" type="rail3:CrossingInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any movable crossing and its position inside or outside the local operation area required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/detectorInState
diagram railml3_p197.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any detector and its state inside or outside the local operation area required for use
source <xs:element name="detectorInState" type="rail3:DetectorInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any detector and its state inside or outside the local operation area required for use</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/signalWithAspect
diagram railml3_p198.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalWithAspect
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required aspect is for protection of the area from inside or outside
annotation
documentation
reference to any signal and its aspect inside or outside the local operation area required for use and/or protection
source <xs:element name="signalWithAspect" type="rail3:SignalWithAspect" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any signal and its aspect inside or outside the local operation area required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/keyLockInState
diagram railml3_p199.png
namespace https://www.railml.org/schemas/3.1
type rail3:KeyLockInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required state is for protection of the area from inside or outside
annotation
documentation
reference to any key lock and its state inside or outside the local operation area required for use and/or protection
source <xs:element name="keyLockInState" type="rail3:KeyLockInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any key lock and its state inside or outside the local operation area required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/levelCrossingInState
diagram railml3_p200.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any level crossing and its state inside the local operation area required for use
source <xs:element name="levelCrossingInState" type="rail3:LevelCrossingInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any level crossing and its state inside the local operation area required for use</xs:documentation>
 
</xs:annotation>
</xs:element>

element LocalOperationArea/releasedForLocalOperation
diagram railml3_p201.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any element, which is released for local operation, when the local operation area is active
source <xs:element name="releasedForLocalOperation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any element, which is released for local operation, when the local operation area is active</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LocalOperationAreas
diagram railml3_p202.png
namespace https://www.railml.org/schemas/3.1
children rail3:localOperationArea
used by
element AssetsForIL/localOperationAreas
source <xs:complexType name="LocalOperationAreas">
 
<xs:sequence>
   
<xs:element name="localOperationArea" type="rail3:LocalOperationArea" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Area used for local shunting movements without routes. Movable elements within the area might be operated from onsite panels.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element LocalOperationAreas/localOperationArea
diagram railml3_p203.png
namespace https://www.railml.org/schemas/3.1
type rail3:LocalOperationArea
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:isLimitedBy rail3:deactivationKey rail3:switchInPosition rail3:derailerInPosition rail3:crossingInPosition rail3:detectorInState rail3:signalWithAspect rail3:keyLockInState rail3:levelCrossingInState rail3:releasedForLocalOperation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Area used for local shunting movements without routes. Movable elements within the area might be operated from onsite panels.
source <xs:element name="localOperationArea" type="rail3:LocalOperationArea" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Area used for local shunting movements without routes. Movable elements within the area might be operated from onsite panels.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LockAndGivenState
diagram railml3_p204.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedLockAndState
used by
elements KeyLockInState/givenState RouteRelation/requiredKeyLockState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the key lock and its state plus the level of enforcement
source <xs:complexType name="LockAndGivenState">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the key lock and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedLockAndState" type="rail3:LockAndState" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the key lock and its state</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element LockAndGivenState/relatedLockAndState
diagram railml3_p205.png
namespace https://www.railml.org/schemas/3.1
type rail3:LockAndState
properties
content complex
children rail3:designator rail3:refersToKeyLock
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tLockState  required      
documentation
The state the key release instrument has.
annotation
documentation
the tuple of references to the key lock and its state
source <xs:element name="relatedLockAndState" type="rail3:LockAndState" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the key lock and its state</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LockAndState
diagram railml3_p206.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToKeyLock
used by
element LockAndGivenState/relatedLockAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tLockState  required      
documentation
The state the key release instrument has.
annotation
documentation
The tuple of Masterlock/KeyReleaseInstrument and its states
source <xs:complexType name="LockAndState">
 
<xs:annotation>
   
<xs:documentation>The tuple of Masterlock/KeyReleaseInstrument and its states</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToKeyLock" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the Masterlock or Keylock.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inState" type="rail3:tLockState" use="required">
       
<xs:annotation>
         
<xs:documentation>The state the key release instrument has.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LockAndState/@inState
type rail3:tLockState
properties
use required
facets
Kind Value Annotation
enumeration released
enumeration locked
annotation
documentation
The state the key release instrument has.
source <xs:attribute name="inState" type="rail3:tLockState" use="required">
 
<xs:annotation>
   
<xs:documentation>The state the key release instrument has.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element LockAndState/refersToKeyLock
diagram railml3_p207.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the Masterlock or Keylock.
source <xs:element name="refersToKeyLock" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the Masterlock or Keylock.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType LogicalDevice
diagram railml3_p208.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
abstract true
children rail3:designator rail3:takesControlOf rail3:hasInterface rail3:refersTo
used by
element KeyLocksIL/ownsLogicalDevice
complexTypes GenericDetector KeyLockIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
description  xs:string  optional      
documentation
Description of the logic.
annotation
documentation
The logical device applies any number of Boolean equations. It represents e.g. a complex relay circuit or PLC that converts high/low electric input signals from any source into Boolean true/false outputs. It can exchange binary i/o with the interlocking. The description attribute can contain textual description of the field elements and Boolean relations that produce the Boolean output. Use this for ancillary equipment connected to the interlocking, e.g. bascule bridges, tunnel equipment, detectors such as earthquake and flooding detectors. Finally it provides a state which is considered in interlocking operation.
source <xs:complexType name="LogicalDevice" abstract="true">
 
<xs:annotation>
   
<xs:documentation>The logical device applies any number of Boolean equations. It represents e.g. a complex relay circuit or PLC that converts high/low electric input signals from any source into Boolean true/false outputs. It can exchange binary i/o with the interlocking. The description attribute can contain textual description of the field elements and Boolean relations that produce the Boolean output. Use this for ancillary equipment connected to the interlocking, e.g. bascule bridges, tunnel equipment, detectors such as earthquake and flooding detectors. Finally it provides a state which is considered in interlocking operation.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="takesControlOf" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to one or more track assets which are controlled by this logical object.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the physical I/O-interface from interlocking to the locking device to control it.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the physical device in the infrastructure.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="description" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>Description of the logic.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute LogicalDevice/@description
type xs:string
properties
use optional
annotation
documentation
Description of the logic.
source <xs:attribute name="description" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>Description of the logic.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element LogicalDevice/takesControlOf
diagram railml3_p209.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to one or more track assets which are controlled by this logical object.
source <xs:element name="takesControlOf" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to one or more track assets which are controlled by this logical object.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LogicalDevice/hasInterface
diagram railml3_p210.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the physical I/O-interface from interlocking to the locking device to control it.
source <xs:element name="hasInterface" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the physical I/O-interface from interlocking to the locking device to control it.</xs:documentation>
 
</xs:annotation>
</xs:element>

element LogicalDevice/refersTo
diagram railml3_p211.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the physical device in the infrastructure.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the physical device in the infrastructure.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType MovableCrossing
diagram railml3_p212.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:MovableElement
properties
base rail3:MovableElement
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement rail3:branchUpLeft rail3:branchUpRight rail3:branchDownLeft rail3:branchDownRight rail3:hasFoulingTrainDetectors
used by
element MovableCrossings/movableCrossing
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tCrossingPosition  optional      
documentation
This is the preferred position of the crossing which it is switched to when not in use.
annotation
documentation
Crossings are a special item for interlockings as a position is required for them even if there is no really movable item trackside.
Some crossings, especially high speed ones, have a movable frog to close the gap at the crossing (UK: movable nose crossing, DE: Herzstück mit beweglicher Spitze, NL: kruising met beweegbaar puntstuk). Unlike a switch, such a movable frog will not send the train left or right but it does guide the train. Thus the position is essential for avoiding derailment. Do not confound this class with ordinary double or single slip switches. The latter are regarded as two back-to-back switches.
source <xs:complexType name="MovableCrossing">
 
<xs:annotation>
   
<xs:documentation>Crossings are a special item for interlockings as a position is required for them even if there is no really movable item trackside.
Some crossings, especially high speed ones, have a movable frog to close the gap at the crossing (UK: movable nose crossing, DE: Herzstück mit beweglicher Spitze, NL: kruising met beweegbaar puntstuk). Unlike a switch, such a movable frog will not send the train left or right but it does guide the train. Thus the position is essential for avoiding derailment. Do not confound this class with ordinary double or single slip switches. The latter are regarded as two back-to-back switches.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:MovableElement">
     
<xs:sequence>
       
<xs:element name="branchUpLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Referral to the physical track that connects from upper left side to the crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="branchUpRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Referral to the physical track that connects from upper right side to the crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="branchDownLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Referral to the physical track that connects from lower left side to the crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="branchDownRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Referral to the physical track that connects from lower right side to the crossing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasFoulingTrainDetectors" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the train detectors delimiting the TVD section of this crossing, which are too close and cannot guarantee a clear gauge of the set track.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="preferredPosition" type="rail3:tCrossingPosition" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the preferred position of the crossing which it is switched to when not in use.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute MovableCrossing/@preferredPosition
type rail3:tCrossingPosition
properties
use optional
facets
Kind Value Annotation
enumeration upleft-rightdown
enumeration downleft-rightup
annotation
documentation
This is the preferred position of the crossing which it is switched to when not in use.
source <xs:attribute name="preferredPosition" type="rail3:tCrossingPosition" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the preferred position of the crossing which it is switched to when not in use.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element MovableCrossing/branchUpLeft
diagram railml3_p213.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Referral to the physical track that connects from upper left side to the crossing.
source <xs:element name="branchUpLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Referral to the physical track that connects from upper left side to the crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableCrossing/branchUpRight
diagram railml3_p214.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Referral to the physical track that connects from upper right side to the crossing.
source <xs:element name="branchUpRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Referral to the physical track that connects from upper right side to the crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableCrossing/branchDownLeft
diagram railml3_p215.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Referral to the physical track that connects from lower left side to the crossing.
source <xs:element name="branchDownLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Referral to the physical track that connects from lower left side to the crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableCrossing/branchDownRight
diagram railml3_p216.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Referral to the physical track that connects from lower right side to the crossing.
source <xs:element name="branchDownRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Referral to the physical track that connects from lower right side to the crossing.</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableCrossing/hasFoulingTrainDetectors
diagram railml3_p217.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the train detectors delimiting the TVD section of this crossing, which are too close and cannot guarantee a clear gauge of the set track.
source <xs:element name="hasFoulingTrainDetectors" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the train detectors delimiting the TVD section of this crossing, which are too close and cannot guarantee a clear gauge of the set track.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType MovableCrossings
diagram railml3_p218.png
namespace https://www.railml.org/schemas/3.1
children rail3:movableCrossing
used by
element AssetsForIL/movableCrossings
source <xs:complexType name="MovableCrossings">
 
<xs:sequence>
   
<xs:element name="movableCrossing" type="rail3:MovableCrossing" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Crossings are a special item for interlockings as a position is required for them even if there is no really movable item trackside. Here the functional aspects for interlocking operation are considered.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element MovableCrossings/movableCrossing
diagram railml3_p219.png
namespace https://www.railml.org/schemas/3.1
type rail3:MovableCrossing
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement rail3:branchUpLeft rail3:branchUpRight rail3:branchDownLeft rail3:branchDownRight rail3:hasFoulingTrainDetectors
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tCrossingPosition  optional      
documentation
This is the preferred position of the crossing which it is switched to when not in use.
annotation
documentation
Crossings are a special item for interlockings as a position is required for them even if there is no really movable item trackside. Here the functional aspects for interlocking operation are considered.
source <xs:element name="movableCrossing" type="rail3:MovableCrossing" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Crossings are a special item for interlockings as a position is required for them even if there is no really movable item trackside. Here the functional aspects for interlocking operation are considered.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType MovableElement
diagram railml3_p220.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
abstract true
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement
used by
complexTypes DerailerIL MovableCrossing SwitchIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
annotation
documentation
Abstract element defining the attributes common to movable elements. The movable element refers to TrackAsset, thus creating a link to the IS namespace.
source <xs:complexType name="MovableElement" abstract="true">
 
<xs:annotation>
   
<xs:documentation>Abstract element defining the attributes common to movable elements. The movable element refers to TrackAsset, thus creating a link to the IS namespace.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to the physical movable element in the infrastructure.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasGaugeClearanceMarker" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
         
<xs:annotation>
           
<xs:documentation>the reference to any gauge clearance marker in infrastructure</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to the underlying TVD section of the movable element</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="connectedToPowerSupply" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>relation to power supply for controlling the number of simultaneously switched switch actuators</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="relatedMovableElement" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>reference to other movable element in case of single/double slip switch or coupled switch</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="maxThrowTime" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="typicalThrowTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="returnsToPreferredPosition" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="isKeyLocked" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="numberOfBladeSwitchActuators" type="xs:nonNegativeInteger" use="optional">
       
<xs:annotation>
         
<xs:documentation>number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="numberOfFrogSwitchActuators" type="xs:nonNegativeInteger" use="optional">
       
<xs:annotation>
         
<xs:documentation>number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute MovableElement/@maxThrowTime
type xs:duration
properties
use required
annotation
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
source <xs:attribute name="maxThrowTime" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute MovableElement/@typicalThrowTime
type xs:duration
properties
use optional
annotation
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
source <xs:attribute name="typicalThrowTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute MovableElement/@returnsToPreferredPosition
type xs:boolean
properties
use optional
annotation
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
source <xs:attribute name="returnsToPreferredPosition" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute MovableElement/@isKeyLocked
type xs:boolean
properties
use optional
annotation
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
source <xs:attribute name="isKeyLocked" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute MovableElement/@numberOfBladeSwitchActuators
type xs:nonNegativeInteger
properties
use optional
annotation
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
source <xs:attribute name="numberOfBladeSwitchActuators" type="xs:nonNegativeInteger" use="optional">
 
<xs:annotation>
   
<xs:documentation>number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute MovableElement/@numberOfFrogSwitchActuators
type xs:nonNegativeInteger
properties
use optional
annotation
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
source <xs:attribute name="numberOfFrogSwitchActuators" type="xs:nonNegativeInteger" use="optional">
 
<xs:annotation>
   
<xs:documentation>number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element MovableElement/refersTo
diagram railml3_p221.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the physical movable element in the infrastructure.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to the physical movable element in the infrastructure.</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableElement/hasGaugeClearanceMarker
diagram railml3_p222.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 2
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
the reference to any gauge clearance marker in infrastructure
source <xs:element name="hasGaugeClearanceMarker" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
 
<xs:annotation>
   
<xs:documentation>the reference to any gauge clearance marker in infrastructure</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableElement/hasTvdSection
diagram railml3_p223.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the underlying TVD section of the movable element
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to the underlying TVD section of the movable element</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableElement/connectedToPowerSupply
diagram railml3_p224.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
relation to power supply for controlling the number of simultaneously switched switch actuators
source <xs:element name="connectedToPowerSupply" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>relation to power supply for controlling the number of simultaneously switched switch actuators</xs:documentation>
 
</xs:annotation>
</xs:element>

element MovableElement/relatedMovableElement
diagram railml3_p225.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to other movable element in case of single/double slip switch or coupled switch
source <xs:element name="relatedMovableElement" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>reference to other movable element in case of single/double slip switch or coupled switch</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Overlap
diagram railml3_p226.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:activeForApproachRoute rail3:relatedToTrackAsset rail3:requiresSwitchInPosition rail3:requiresLevelCrossingInState rail3:hasTvdSection rail3:isLimitedBy rail3:overlapRelease
used by
element Overlaps/overlap
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h associated with the overlap
overlapSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum speed in the overlap in km/h for other trains than the one using the related route.
overlapValidityTime  xs:duration  optional      
documentation
The overlap validity time is the time that the train assumes the overlap to be locked. This is the ETCS validity time T_OL.
length  rail3:tLengthM  optional      
documentation
Alternatively to a particular limit the length of the overlap in metres can be given.
annotation
documentation
INESS (INtegrated European Signalling System) definition: A defined section of track in advance of a stop signal, or a stopping point in a continuous signalling system, which must be kept clear to avoid the risk of collision should a train inadvertently run past the signal or the stopping point.
Many IMs require overlap beyond active routes to protect from overshoot. One or more sections beyond the exit signal are locked out from use by other routes. The overlap is delimited by train detectors. Facing switches in the overlap are locked, otherwise, use the swinging overlap. Trailing switches in the overlap may normally not locked. Note that there is no need to explicitly identify the switches in the overlap because they can be derived from the begin and endpoints of the overlap.
The overlap can be released if the RBC deems that an approaching train is slow enough such that overshoot is unlikely.
Trains other than the one for which the route-overlap is locked may be attributed a permitted speed in the overlap. If the value is set to 0 it is not possible to set a route through the overlap. Compare this variable with the release speed that applies to the train that is being released beyond the danger point.
source <xs:complexType name="Overlap">
 
<xs:annotation>
   
<xs:documentation>INESS (INtegrated European Signalling System) definition: A defined section of track in advance of a stop signal, or a stopping point in a continuous signalling system, which must be kept clear to avoid the risk of collision should a train inadvertently run past the signal or the stopping point.
Many IMs require overlap beyond active routes to protect from overshoot. One or more sections beyond the exit signal are locked out from use by other routes. The overlap is delimited by train detectors. Facing switches in the overlap are locked, otherwise, use the swinging overlap. Trailing switches in the overlap may normally not locked. Note that there is no need to explicitly identify the switches in the overlap because they can be derived from the begin and endpoints of the overlap.
The overlap can be released if the RBC deems that an approaching train is slow enough such that overshoot is unlikely.
Trains other than the one for which the route-overlap is locked may be attributed a permitted speed in the overlap. If the value is set to 0 it is not possible to set a route through the overlap. Compare this variable with the release speed that applies to the train that is being released beyond the danger point.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="activeForApproachRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the related route using the overlap.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="relatedToTrackAsset" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Alternatively to a specific route a reference to a track asset the danger point is related to can be given. This can be a destination signal of a route or any other suitable object.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiresSwitchInPosition" type="rail3:SwitchAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any switch in the overlap required to be in a particular position and its position.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiresLevelCrossingInState" type="rail3:LevelCrossingAndGivenState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any level crossing in the overlap required to be in a particular state and its state.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any TVD section(s) within the path of the overlap.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="isLimitedBy" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to track assets limiting the overlap. It may be used in conjunction to attribute length.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="overlapRelease" type="rail3:OverlapRelease" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Overlap is set in lockstep with the route. The interlocking releases the overlap when it is safe to presume that an approaching train will not overrun a closed destination signal. When the train occupied the last section (or destination area), an overlap release timer starts running. The timer value is defined by operational rules and the approaching speed. Upon expiry, the interlocking releases the overlap. Overlap is released together with the route or after expiration of the release timer. Overlap is released after a defined time in a timer that starts from a timerTriggerPoint.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Release speed in km/h associated with the overlap</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="overlapSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Maximum speed in the overlap in km/h for other trains than the one using the related route.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="overlapValidityTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The overlap validity time is the time that the train assumes the overlap to be locked. This is the ETCS validity time T_OL.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="length" type="rail3:tLengthM" use="optional">
       
<xs:annotation>
         
<xs:documentation>Alternatively to a particular limit the length of the overlap in metres can be given.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Overlap/@releaseSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Release speed in km/h associated with the overlap
source <xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Release speed in km/h associated with the overlap</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Overlap/@overlapSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Maximum speed in the overlap in km/h for other trains than the one using the related route.
source <xs:attribute name="overlapSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Maximum speed in the overlap in km/h for other trains than the one using the related route.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Overlap/@overlapValidityTime
type xs:duration
properties
use optional
annotation
documentation
The overlap validity time is the time that the train assumes the overlap to be locked. This is the ETCS validity time T_OL.
source <xs:attribute name="overlapValidityTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The overlap validity time is the time that the train assumes the overlap to be locked. This is the ETCS validity time T_OL.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Overlap/@length
type rail3:tLengthM
properties
use optional
annotation
documentation
Alternatively to a particular limit the length of the overlap in metres can be given.
source <xs:attribute name="length" type="rail3:tLengthM" use="optional">
 
<xs:annotation>
   
<xs:documentation>Alternatively to a particular limit the length of the overlap in metres can be given.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element Overlap/activeForApproachRoute
diagram railml3_p227.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the related route using the overlap.
source <xs:element name="activeForApproachRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the related route using the overlap.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/relatedToTrackAsset
diagram railml3_p228.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Alternatively to a specific route a reference to a track asset the danger point is related to can be given. This can be a destination signal of a route or any other suitable object.
source <xs:element name="relatedToTrackAsset" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Alternatively to a specific route a reference to a track asset the danger point is related to can be given. This can be a destination signal of a route or any other suitable object.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/requiresSwitchInPosition
diagram railml3_p229.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndGivenPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedSwitchAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The reference to any switch in the overlap required to be in a particular position and its position.
source <xs:element name="requiresSwitchInPosition" type="rail3:SwitchAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any switch in the overlap required to be in a particular position and its position.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/requiresLevelCrossingInState
diagram railml3_p230.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingAndGivenState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedLevelCrossingAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
The reference to any level crossing in the overlap required to be in a particular state and its state.
source <xs:element name="requiresLevelCrossingInState" type="rail3:LevelCrossingAndGivenState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any level crossing in the overlap required to be in a particular state and its state.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/hasTvdSection
diagram railml3_p231.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to any TVD section(s) within the path of the overlap.
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any TVD section(s) within the path of the overlap.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/isLimitedBy
diagram railml3_p232.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
References to track assets limiting the overlap. It may be used in conjunction to attribute length.
source <xs:element name="isLimitedBy" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to track assets limiting the overlap. It may be used in conjunction to attribute length.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Overlap/overlapRelease
diagram railml3_p233.png
namespace https://www.railml.org/schemas/3.1
type rail3:OverlapRelease
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:releaseTriggerSection rail3:overlapReleaseTimer
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Overlap is set in lockstep with the route. The interlocking releases the overlap when it is safe to presume that an approaching train will not overrun a closed destination signal. When the train occupied the last section (or destination area), an overlap release timer starts running. The timer value is defined by operational rules and the approaching speed. Upon expiry, the interlocking releases the overlap. Overlap is released together with the route or after expiration of the release timer. Overlap is released after a defined time in a timer that starts from a timerTriggerPoint.
source <xs:element name="overlapRelease" type="rail3:OverlapRelease" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Overlap is set in lockstep with the route. The interlocking releases the overlap when it is safe to presume that an approaching train will not overrun a closed destination signal. When the train occupied the last section (or destination area), an overlap release timer starts running. The timer value is defined by operational rules and the approaching speed. Upon expiry, the interlocking releases the overlap. Overlap is released together with the route or after expiration of the release timer. Overlap is released after a defined time in a timer that starts from a timerTriggerPoint.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType OverlapRelease
diagram railml3_p234.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:releaseTriggerSection rail3:overlapReleaseTimer
used by
element Overlap/overlapRelease
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Overlap is set in lockstep with the route. The interlocking releases the overlap when it is safe to presume that an approaching train will not overrun a closed destination signal. When the train occupied the last section (or destination area), an overlap release timer starts running. The timer value is defined by operational rules and the approaching speed. Upon expiry, the interlocking releases the overlap. Overlap is released together with the route or after expiration of the release timer. Overlap is released after a defined time in a timer that starts from a timerTriggerPoint.
source <xs:complexType name="OverlapRelease">
 
<xs:annotation>
   
<xs:documentation>Overlap is set in lockstep with the route. The interlocking releases the overlap when it is safe to presume that an approaching train will not overrun a closed destination signal. When the train occupied the last section (or destination area), an overlap release timer starts running. The timer value is defined by operational rules and the approaching speed. Upon expiry, the interlocking releases the overlap. Overlap is released together with the route or after expiration of the release timer. Overlap is released after a defined time in a timer that starts from a timerTriggerPoint.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="releaseTriggerSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the TVD section triggering the overlap release.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="overlapReleaseTimer" type="rail3:OverlapReleaseTimer" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Description of overlap release timer (duration, start condition)</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element OverlapRelease/releaseTriggerSection
diagram railml3_p235.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the TVD section triggering the overlap release.
source <xs:element name="releaseTriggerSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the TVD section triggering the overlap release.</xs:documentation>
 
</xs:annotation>
</xs:element>

element OverlapRelease/overlapReleaseTimer
diagram railml3_p236.png
namespace https://www.railml.org/schemas/3.1
type rail3:OverlapReleaseTimer
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
timerValue  xs:duration  required      
documentation
The time period which has to be elapsed after the trigger condition and physical release of the overlap.
overlapReleaseCondition  rail3:tOverlapReleaseCondition  optional      
documentation
The condition to start the release timer.
annotation
documentation
Description of overlap release timer (duration, start condition)
source <xs:element name="overlapReleaseTimer" type="rail3:OverlapReleaseTimer" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Description of overlap release timer (duration, start condition)</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType OverlapReleaseTimer
diagram railml3_p237.png
namespace https://www.railml.org/schemas/3.1
used by
element OverlapRelease/overlapReleaseTimer
attributes
Name  Type  Use  Default  Fixed  Annotation
timerValue  xs:duration  required      
documentation
The time period which has to be elapsed after the trigger condition and physical release of the overlap.
overlapReleaseCondition  rail3:tOverlapReleaseCondition  optional      
documentation
The condition to start the release timer.
annotation
documentation
Details for timing the overlap release.
source <xs:complexType name="OverlapReleaseTimer">
 
<xs:annotation>
   
<xs:documentation>Details for timing the overlap release.</xs:documentation>
 
</xs:annotation>
 
<xs:sequence/>
 
<xs:attribute name="timerValue" type="xs:duration" use="required">
   
<xs:annotation>
     
<xs:documentation>The time period which has to be elapsed after the trigger condition and physical release of the overlap.</xs:documentation>
   
</xs:annotation>
 
</xs:attribute>
 
<xs:attribute name="overlapReleaseCondition" type="rail3:tOverlapReleaseCondition" use="optional">
   
<xs:annotation>
     
<xs:documentation>The condition to start the release timer.</xs:documentation>
   
</xs:annotation>
 
</xs:attribute>
 
<xs:attributeGroup ref="rail3:anyAttribute"/>
</xs:complexType>

attribute OverlapReleaseTimer/@timerValue
type xs:duration
properties
use required
annotation
documentation
The time period which has to be elapsed after the trigger condition and physical release of the overlap.
source <xs:attribute name="timerValue" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>The time period which has to be elapsed after the trigger condition and physical release of the overlap.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute OverlapReleaseTimer/@overlapReleaseCondition
type rail3:tOverlapReleaseCondition
properties
use optional
facets
Kind Value Annotation
enumeration trainInitiatedTrigger
enumeration startTimerAfterVacating
enumeration startTimerUponOccupation
annotation
documentation
The condition to start the release timer.
source <xs:attribute name="overlapReleaseCondition" type="rail3:tOverlapReleaseCondition" use="optional">
 
<xs:annotation>
   
<xs:documentation>The condition to start the release timer.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType Overlaps
diagram railml3_p238.png
namespace https://www.railml.org/schemas/3.1
children rail3:overlap
used by
element AssetsForIL/overlaps
annotation
documentation
container element for all Overlap elements
source <xs:complexType name="Overlaps">
 
<xs:annotation>
   
<xs:documentation>container element for all Overlap elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="overlap" type="rail3:Overlap" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>track(s) in advance of a stop signal, or a stopping point in a continuous signalling system, which must be kept clear to avoid the risk of collision should a train inadvertently run past the signal or the stopping point</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Overlaps/overlap
diagram railml3_p239.png
namespace https://www.railml.org/schemas/3.1
type rail3:Overlap
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:activeForApproachRoute rail3:relatedToTrackAsset rail3:requiresSwitchInPosition rail3:requiresLevelCrossingInState rail3:hasTvdSection rail3:isLimitedBy rail3:overlapRelease
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h associated with the overlap
overlapSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum speed in the overlap in km/h for other trains than the one using the related route.
overlapValidityTime  xs:duration  optional      
documentation
The overlap validity time is the time that the train assumes the overlap to be locked. This is the ETCS validity time T_OL.
length  rail3:tLengthM  optional      
documentation
Alternatively to a particular limit the length of the overlap in metres can be given.
annotation
documentation
track(s) in advance of a stop signal, or a stopping point in a continuous signalling system, which must be kept clear to avoid the risk of collision should a train inadvertently run past the signal or the stopping point
source <xs:element name="overlap" type="rail3:Overlap" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>track(s) in advance of a stop signal, or a stopping point in a continuous signalling system, which must be kept clear to avoid the risk of collision should a train inadvertently run past the signal or the stopping point</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType PartialRoute
diagram railml3_p240.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
abstract true
children rail3:designator rail3:hasTvdSection
used by
element PartialRoutes/knowsPartialRoute
complexTypes RouteReleaseGroupAhead RouteReleaseGroupRear
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
annotation
documentation
A partial route is a subset of TVD sections within the route. This subset can be used, e.g. for release if the conditions prescribed by the IM rules are fulfilled.
source <xs:complexType name="PartialRoute" abstract="true">
 
<xs:annotation>
   
<xs:documentation>A partial route is a subset of TVD sections within the route. This subset can be used, e.g. for release if the conditions prescribed by the IM rules are fulfilled.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Referral to the TVD sections in this part of the route.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="delay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="typicalDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute PartialRoute/@delay
type xs:duration
properties
use optional
annotation
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
source <xs:attribute name="delay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute PartialRoute/@typicalDelay
type xs:duration
properties
use optional
annotation
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
source <xs:attribute name="typicalDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element PartialRoute/hasTvdSection
diagram railml3_p241.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Referral to the TVD sections in this part of the route.
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Referral to the TVD sections in this part of the route.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType PartialRoutes
diagram railml3_p242.png
namespace https://www.railml.org/schemas/3.1
children rail3:knowsPartialRoute
annotation
documentation
container element for all PartialRoute elements
source <xs:complexType name="PartialRoutes">
 
<xs:annotation>
   
<xs:documentation>container element for all PartialRoute elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="knowsPartialRoute" type="rail3:PartialRoute" minOccurs="1" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element PartialRoutes/knowsPartialRoute
diagram railml3_p243.png
namespace https://www.railml.org/schemas/3.1
type rail3:PartialRoute
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:hasTvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
source <xs:element name="knowsPartialRoute" type="rail3:PartialRoute" minOccurs="1" maxOccurs="unbounded"/>

complexType PermissionZone
diagram railml3_p244.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
children rail3:designator rail3:canBeControlledBy rail3:controlledElement
used by
element PermissionZones/permissionZone
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A restricted area inside a station which can be controlled from a different controller as the rest of the station
source <xs:complexType name="PermissionZone">
 
<xs:annotation>
   
<xs:documentation>A restricted area inside a station which can be controlled from a different controller as the rest of the station</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="canBeControlledBy" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any controller, which can control this permission zone</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlledElement" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to elements which belong to this zone and have the same operating permission</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element PermissionZone/canBeControlledBy
diagram railml3_p245.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any controller, which can control this permission zone
source <xs:element name="canBeControlledBy" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any controller, which can control this permission zone</xs:documentation>
 
</xs:annotation>
</xs:element>

element PermissionZone/controlledElement
diagram railml3_p246.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
References to elements which belong to this zone and have the same operating permission
source <xs:element name="controlledElement" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to elements which belong to this zone and have the same operating permission</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType PermissionZones
diagram railml3_p247.png
namespace https://www.railml.org/schemas/3.1
children rail3:permissionZone
used by
element AssetsForIL/permissionZones
source <xs:complexType name="PermissionZones">
 
<xs:sequence>
   
<xs:element name="permissionZone" type="rail3:PermissionZone" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>A set of track assets inside a station which can have different operating permissions (being controlled from a different controller) as the rest of the station</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element PermissionZones/permissionZone
diagram railml3_p248.png
namespace https://www.railml.org/schemas/3.1
type rail3:PermissionZone
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:canBeControlledBy rail3:controlledElement
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A set of track assets inside a station which can have different operating permissions (being controlled from a different controller) as the rest of the station
source <xs:element name="permissionZone" type="rail3:PermissionZone" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>A set of track assets inside a station which can have different operating permissions (being controlled from a different controller) as the rest of the station</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType PowerSuppliesIL
diagram railml3_p249.png
namespace https://www.railml.org/schemas/3.1
children rail3:powerSupplyIL
used by
element AssetsForIL/powerSuppliesIL
annotation
documentation
container element for all PowerSupplyIL elements
source <xs:complexType name="PowerSuppliesIL">
 
<xs:annotation>
   
<xs:documentation>container element for all PowerSupplyIL elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="powerSupplyIL" type="rail3:PowerSupplyIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>specific features of power supply used for interlocking</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element PowerSuppliesIL/powerSupplyIL
diagram railml3_p250.png
namespace https://www.railml.org/schemas/3.1
type rail3:PowerSupplyIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
numberOfSimultaneousSwitchingActuators  xs:nonNegativeInteger  optional      
documentation
maximum number of switch actuators that can be activated simultaneously with this power supply
signalVoltageMode  rail3:tSignalVoltageModes  optional      
documentation
mode of switching signal voltage for day and night voltage
annotation
documentation
specific features of power supply used for interlocking
source <xs:element name="powerSupplyIL" type="rail3:PowerSupplyIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>specific features of power supply used for interlocking</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType PowerSupplyIL
diagram railml3_p251.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
element PowerSuppliesIL/powerSupplyIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
numberOfSimultaneousSwitchingActuators  xs:nonNegativeInteger  optional      
documentation
maximum number of switch actuators that can be activated simultaneously with this power supply
signalVoltageMode  rail3:tSignalVoltageModes  optional      
documentation
mode of switching signal voltage for day and night voltage
annotation
documentation
Interlocking specific features of the power supply
source <xs:complexType name="PowerSupplyIL">
 
<xs:annotation>
   
<xs:documentation>Interlocking specific features of the power supply</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
     
<xs:attribute name="numberOfSimultaneousSwitchingActuators" type="xs:nonNegativeInteger" use="optional">
       
<xs:annotation>
         
<xs:documentation>maximum number of switch actuators that can be activated simultaneously with this power supply</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="signalVoltageMode" type="rail3:tSignalVoltageModes" use="optional">
       
<xs:annotation>
         
<xs:documentation>mode of switching signal voltage for day and night voltage</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute PowerSupplyIL/@numberOfSimultaneousSwitchingActuators
type xs:nonNegativeInteger
properties
use optional
annotation
documentation
maximum number of switch actuators that can be activated simultaneously with this power supply
source <xs:attribute name="numberOfSimultaneousSwitchingActuators" type="xs:nonNegativeInteger" use="optional">
 
<xs:annotation>
   
<xs:documentation>maximum number of switch actuators that can be activated simultaneously with this power supply</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute PowerSupplyIL/@signalVoltageMode
type rail3:tSignalVoltageModes
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration nightOnly
enumeration manual
enumeration automatic
annotation
documentation
mode of switching signal voltage for day and night voltage
source <xs:attribute name="signalVoltageMode" type="rail3:tSignalVoltageModes" use="optional">
 
<xs:annotation>
   
<xs:documentation>mode of switching signal voltage for day and night voltage</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType RestrictedArea
diagram railml3_p252.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
abstract true
children rail3:designator rail3:isLimitedBy
used by
element RestrictedAreas/ownsRestrictedArea
complexTypes LocalOperationArea ShuntingZone WorkZone
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The Restricted Area (RA) is an area of the yard that the interlocking can set aside from normal operation. Railway personnel typically take local control of a RA and the interlocking detects switches and signal such that regular trains cannot enter the RA. Typical Restricted Areas are local shunting areas, working area or possession areas. Local workers take over control of the RA from the interlocking. The type of RA defines the extent of control, i.e. what the interlocking allows local workers to do. E.g. regulations may allow local route setting in a shunting area but not in a working zone. Track workers may be allowed to operate individual switches in a working zone but they cannot set routes. Therefore, the interlocking must be aware of the RA type. This type datatype is abstract so the user is forced to specialize it.
source <xs:complexType name="RestrictedArea" abstract="true">
 
<xs:annotation>
   
<xs:documentation>The Restricted Area (RA) is an area of the yard that the interlocking can set aside from normal operation. Railway personnel typically take local control of a RA and the interlocking detects switches and signal such that regular trains cannot enter the RA. Typical Restricted Areas are local shunting areas, working area or possession areas. Local workers take over control of the RA from the interlocking. The type of RA defines the extent of control, i.e. what the interlocking allows local workers to do. E.g. regulations may allow local route setting in a shunting area but not in a working zone. Track workers may be allowed to operate individual switches in a working zone but they cannot set routes. Therefore, the interlocking must be aware of the RA type. This type datatype is abstract so the user is forced to specialize it.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="isLimitedBy" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Reference to any asset in network forming the restricted area limits</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element RestrictedArea/isLimitedBy
diagram railml3_p253.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to any asset in network forming the restricted area limits
source <xs:element name="isLimitedBy" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Reference to any asset in network forming the restricted area limits</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RestrictedAreas
diagram railml3_p254.png
namespace https://www.railml.org/schemas/3.1
children rail3:ownsRestrictedArea
annotation
documentation
container element for all instances of RestrictedArea elements
source <xs:complexType name="RestrictedAreas">
 
<xs:annotation>
   
<xs:documentation>container element for all instances of RestrictedArea elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="ownsRestrictedArea" type="rail3:RestrictedArea" minOccurs="1" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element RestrictedAreas/ownsRestrictedArea
diagram railml3_p255.png
namespace https://www.railml.org/schemas/3.1
type rail3:RestrictedArea
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:isLimitedBy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
source <xs:element name="ownsRestrictedArea" type="rail3:RestrictedArea" minOccurs="1" maxOccurs="unbounded"/>

complexType Route
diagram railml3_p256.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
children rail3:designator rail3:handlesRouteType rail3:routeActivationSection rail3:facingSwitchInPosition rail3:hasTvdSection rail3:routeEntry rail3:hasReleaseGroup rail3:switchPositionInDepartureTrack rail3:routeExit rail3:additionalRelation
used by
element Routes/route
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
locksAutomatically  xs:boolean  optional      
documentation
If true, the interlocking locks this route automatically and immediately after it was cleared. The operator has to intervene if he wishes to call another route. Automatikfahrstrasse in German, trace automatique in French. Note that this functionality is often part of the control system in which case this attribute should be omitted.
processingDelay  xs:duration  optional      
documentation
The delay in seconds between the moment the interlocking receives the route call and the moment the route the interlocking reports back that the route is locked, i.e. the processing time for setting that route.
proceedAspectDelay  xs:duration  optional      
documentation
The delay for the signal before it will change from closed to any proceed aspect.
signalClosureDelay  xs:duration  optional      
documentation
The delay for the signal after the conditions for proceed aspect are removed and the physical closure of the signal.
approachReleaseDelay  xs:duration  optional      
documentation
The delay between the request from signalman to release an already approached (definitely locked) route and the real release of associated elements of the route.
annotation
documentation
We define a route as an entry- and exit plus the positions of intermediate switches. If there are no switches in the route, no switch positions can be defined. If one or more switches are encountered en route, either facing or trailing, the positions of these switches must be given. There can be multiple routes from entry to exit depending on the positions of the intermediate switches. The user is free to create different routes with the same entry,exit and same switch positions that differ only by the classifier. This allows one to distinguish for example a traction-route from no-traction-route
source <xs:complexType name="Route">
 
<xs:annotation>
   
<xs:documentation>We define a route as an entry- and exit plus the positions of intermediate switches. If there are no switches in the route, no switch positions can be defined. If one or more switches are encountered en route, either facing or trailing, the positions of these switches must be given. There can be multiple routes from entry to exit depending on the positions of the intermediate switches. The user is free to create different routes with the same entry,exit and same switch positions that differ only by the classifier. This allows one to distinguish for example a traction-route from no-traction-route</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="handlesRouteType" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the IM specific route type. This implies particular characteristics of the route dependent on the IM operational rules.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeActivationSection" type="rail3:RouteActivationSection" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Description of the route activation, i.e. automatic setting or locking when the route entry is approached.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="facingSwitchInPosition" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The tuple for each facing switch in the running path to unambiguously define the route containing the reference to the switch and its position.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to TVD section(s) within the running path of the route.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeEntry" type="rail3:RouteEntry" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Description of the start point of the route. This is normally a signal.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasReleaseGroup" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to any partial routes which are to be released together within a group.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="switchPositionInDepartureTrack" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The tuple for any switch in the track in rear of the start signal required for this route containing the reference to the switch and its position.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="routeExit" type="rail3:RouteExit" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Description of the route destination point. In most cases the route destination is a signal or a buffer stop. </xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="additionalRelation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any additional relation needed for signalling of this route</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="locksAutomatically" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>If true, the interlocking locks this route automatically and immediately after it was cleared. The operator has to intervene if he wishes to call another route. Automatikfahrstrasse in German, trace automatique in French. Note that this functionality is often part of the control system in which case this attribute should be omitted.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="processingDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The delay in seconds between the moment the interlocking receives the route call and the moment the route the interlocking reports back that the route is locked, i.e. the processing time for setting that route.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="proceedAspectDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The delay for the signal before it will change from closed to any proceed aspect.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="signalClosureDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The delay for the signal after the conditions for proceed aspect are removed and the physical closure of the signal.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="approachReleaseDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The delay between the request from signalman to release an already approached (definitely locked) route and the real release of associated elements of the route.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Route/@locksAutomatically
type xs:boolean
properties
use optional
annotation
documentation
If true, the interlocking locks this route automatically and immediately after it was cleared. The operator has to intervene if he wishes to call another route. Automatikfahrstrasse in German, trace automatique in French. Note that this functionality is often part of the control system in which case this attribute should be omitted.
source <xs:attribute name="locksAutomatically" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>If true, the interlocking locks this route automatically and immediately after it was cleared. The operator has to intervene if he wishes to call another route. Automatikfahrstrasse in German, trace automatique in French. Note that this functionality is often part of the control system in which case this attribute should be omitted.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Route/@processingDelay
type xs:duration
properties
use optional
annotation
documentation
The delay in seconds between the moment the interlocking receives the route call and the moment the route the interlocking reports back that the route is locked, i.e. the processing time for setting that route.
source <xs:attribute name="processingDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The delay in seconds between the moment the interlocking receives the route call and the moment the route the interlocking reports back that the route is locked, i.e. the processing time for setting that route.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Route/@proceedAspectDelay
type xs:duration
properties
use optional
annotation
documentation
The delay for the signal before it will change from closed to any proceed aspect.
source <xs:attribute name="proceedAspectDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The delay for the signal before it will change from closed to any proceed aspect.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Route/@signalClosureDelay
type xs:duration
properties
use optional
annotation
documentation
The delay for the signal after the conditions for proceed aspect are removed and the physical closure of the signal.
source <xs:attribute name="signalClosureDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The delay for the signal after the conditions for proceed aspect are removed and the physical closure of the signal.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Route/@approachReleaseDelay
type xs:duration
properties
use optional
annotation
documentation
The delay between the request from signalman to release an already approached (definitely locked) route and the real release of associated elements of the route.
source <xs:attribute name="approachReleaseDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The delay between the request from signalman to release an already approached (definitely locked) route and the real release of associated elements of the route.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element Route/handlesRouteType
diagram railml3_p257.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the IM specific route type. This implies particular characteristics of the route dependent on the IM operational rules.
source <xs:element name="handlesRouteType" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the IM specific route type. This implies particular characteristics of the route dependent on the IM operational rules.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/routeActivationSection
diagram railml3_p258.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteActivationSection
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:activationSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delayForLock  xs:duration  optional      
documentation
The delay in seconds between the moment the approach section changes from vacant to occupied and the moment the route the interlocking locks the route.
automaticReleaseDelay  xs:duration  optional      
documentation
Delay in seconds between the moment that the route is locked on the ground that the approach section turned occupied, and the release of the route. This delay for automatic release would typically be used when an approach train stops in an approach section but fails to enter the route.
annotation
documentation
Description of the route activation, i.e. automatic setting or locking when the route entry is approached.
source <xs:element name="routeActivationSection" type="rail3:RouteActivationSection" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Description of the route activation, i.e. automatic setting or locking when the route entry is approached.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/facingSwitchInPosition
diagram railml3_p259.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:refersToSwitch
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
annotation
documentation
The tuple for each facing switch in the running path to unambiguously define the route containing the reference to the switch and its position.
source <xs:element name="facingSwitchInPosition" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The tuple for each facing switch in the running path to unambiguously define the route containing the reference to the switch and its position.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/hasTvdSection
diagram railml3_p260.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to TVD section(s) within the running path of the route.
source <xs:element name="hasTvdSection" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to TVD section(s) within the running path of the route.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/routeEntry
diagram railml3_p261.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteEntry
properties
content complex
children rail3:designator rail3:refersTo rail3:nonReplacement
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Description of the start point of the route. This is normally a signal.
source <xs:element name="routeEntry" type="rail3:RouteEntry" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Description of the start point of the route. This is normally a signal.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/hasReleaseGroup
diagram railml3_p262.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The references to any partial routes which are to be released together within a group.
source <xs:element name="hasReleaseGroup" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to any partial routes which are to be released together within a group.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/switchPositionInDepartureTrack
diagram railml3_p263.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:refersToSwitch
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
annotation
documentation
The tuple for any switch in the track in rear of the start signal required for this route containing the reference to the switch and its position.
source <xs:element name="switchPositionInDepartureTrack" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The tuple for any switch in the track in rear of the start signal required for this route containing the reference to the switch and its position.</xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/routeExit
diagram railml3_p264.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteExit
properties
content complex
children rail3:designator rail3:refersTo rail3:hasDangerPoint rail3:hasOverlap
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Description of the route destination point. In most cases the route destination is a signal or a buffer stop.
source <xs:element name="routeExit" type="rail3:RouteExit" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Description of the route destination point. In most cases the route destination is a signal or a buffer stop. </xs:documentation>
 
</xs:annotation>
</xs:element>

element Route/additionalRelation
diagram railml3_p265.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any additional relation needed for signalling of this route
source <xs:element name="additionalRelation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any additional relation needed for signalling of this route</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteActivationSection
diagram railml3_p266.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:activationSection
used by
element Route/routeActivationSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delayForLock  xs:duration  optional      
documentation
The delay in seconds between the moment the approach section changes from vacant to occupied and the moment the route the interlocking locks the route.
automaticReleaseDelay  xs:duration  optional      
documentation
Delay in seconds between the moment that the route is locked on the ground that the approach section turned occupied, and the release of the route. This delay for automatic release would typically be used when an approach train stops in an approach section but fails to enter the route.
annotation
documentation
The route is locked, i.e. activated, when this sections turns from vacant to occupied. If the delayForLock timer isn't given (or zero) the lock applies immediately.
source <xs:complexType name="RouteActivationSection">
 
<xs:annotation>
   
<xs:documentation>The route is locked, i.e. activated, when this sections turns from vacant to occupied. If the delayForLock timer isn't given (or zero) the lock applies immediately.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="activationSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the TVD section activating the route when this section turns from vacant to occupied.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="delayForLock" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>The delay in seconds between the moment the approach section changes from vacant to occupied and the moment the route the interlocking locks the route.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="automaticReleaseDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>Delay in seconds between the moment that the route is locked on the ground that the approach section turned occupied, and the release of the route. This delay for automatic release would typically be used when an approach train stops in an approach section but fails to enter the route.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute RouteActivationSection/@delayForLock
type xs:duration
properties
use optional
annotation
documentation
The delay in seconds between the moment the approach section changes from vacant to occupied and the moment the route the interlocking locks the route.
source <xs:attribute name="delayForLock" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>The delay in seconds between the moment the approach section changes from vacant to occupied and the moment the route the interlocking locks the route.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute RouteActivationSection/@automaticReleaseDelay
type xs:duration
properties
use optional
annotation
documentation
Delay in seconds between the moment that the route is locked on the ground that the approach section turned occupied, and the release of the route. This delay for automatic release would typically be used when an approach train stops in an approach section but fails to enter the route.
source <xs:attribute name="automaticReleaseDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>Delay in seconds between the moment that the route is locked on the ground that the approach section turned occupied, and the release of the route. This delay for automatic release would typically be used when an approach train stops in an approach section but fails to enter the route.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element RouteActivationSection/activationSection
diagram railml3_p267.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the TVD section activating the route when this section turns from vacant to occupied.
source <xs:element name="activationSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the TVD section activating the route when this section turns from vacant to occupied.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteEntry
diagram railml3_p268.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:refersTo rail3:nonReplacement
used by
element Route/routeEntry
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The route entry is normally a (virtual) signal.
source <xs:complexType name="RouteEntry">
 
<xs:annotation>
   
<xs:documentation>The route entry is normally a (virtual) signal.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the track asset representing the start point of the route. In most cases this is a signal.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="nonReplacement" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any TVD section in advance to the start signal which sequential occupation will not cause the signal closure.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element RouteEntry/refersTo
diagram railml3_p269.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the track asset representing the start point of the route. In most cases this is a signal.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the track asset representing the start point of the route. In most cases this is a signal.</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteEntry/nonReplacement
diagram railml3_p270.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to any TVD section in advance to the start signal which sequential occupation will not cause the signal closure.
source <xs:element name="nonReplacement" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any TVD section in advance to the start signal which sequential occupation will not cause the signal closure.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteExit
diagram railml3_p271.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:refersTo rail3:hasDangerPoint rail3:hasOverlap
used by
elements DestinationPoints/destinationPoint Route/routeExit
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The exit signal or any other track asset that acts as route exit
source <xs:complexType name="RouteExit">
 
<xs:annotation>
   
<xs:documentation>The exit signal or any other track asset that acts as route exit</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the track asset representing the destination point of the route. In most cases this is a signal or buffer stop.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasDangerPoint" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to any danger point related to this route end.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasOverlap" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any overlap related to this route end.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element RouteExit/refersTo
diagram railml3_p272.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the track asset representing the destination point of the route. In most cases this is a signal or buffer stop.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the track asset representing the destination point of the route. In most cases this is a signal or buffer stop.</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteExit/hasDangerPoint
diagram railml3_p273.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to any danger point related to this route end.
source <xs:element name="hasDangerPoint" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to any danger point related to this route end.</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteExit/hasOverlap
diagram railml3_p274.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to any overlap related to this route end.
source <xs:element name="hasOverlap" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any overlap related to this route end.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteRelation
diagram railml3_p275.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:requiredSwitchPosition rail3:requiredDerailerPosition rail3:requiredCrossingPosition rail3:requiredDetectorState rail3:requiredSignalAspect rail3:requiredSectionState rail3:requiredKeyLockState rail3:requiredLevelCrossingState
used by
element RouteRelations/routeRelation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A route relation states the conditions that must be fulfilled for a given signal to be open. Note that these relations may well be captured in a control table. Therefore, the use is optional.
source <xs:complexType name="RouteRelation">
 
<xs:annotation>
   
<xs:documentation>A route relation states the conditions that must be fulfilled for a given signal to be open. Note that these relations may well be captured in a control table. Therefore, the use is optional.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="requiredSwitchPosition" type="rail3:SwitchAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular switch and its required position to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredDerailerPosition" type="rail3:DerailerAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular derailer and its required position to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredCrossingPosition" type="rail3:CrossingAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular movable crossing and its required position to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredDetectorState" type="rail3:DetectorAndGivenState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular detector and its required state to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredSignalAspect" type="rail3:SignalAndGivenAspect" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular signal and its required aspect to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredSectionState" type="rail3:SectionAndGivenVacancy" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular TVD section and its required state to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredKeyLockState" type="rail3:LockAndGivenState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular key lock and its required state to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="requiredLevelCrossingState" type="rail3:LevelCrossingAndGivenState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>References to a particular level crossing and its required state to fulfil the route relation</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element RouteRelation/requiredSwitchPosition
diagram railml3_p276.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndGivenPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedSwitchAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular switch and its required position to fulfil the route relation
source <xs:element name="requiredSwitchPosition" type="rail3:SwitchAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular switch and its required position to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredDerailerPosition
diagram railml3_p277.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerAndGivenPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedDerailerAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular derailer and its required position to fulfil the route relation
source <xs:element name="requiredDerailerPosition" type="rail3:DerailerAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular derailer and its required position to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredCrossingPosition
diagram railml3_p278.png
namespace https://www.railml.org/schemas/3.1
type rail3:CrossingAndGivenPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedCrossingAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular movable crossing and its required position to fulfil the route relation
source <xs:element name="requiredCrossingPosition" type="rail3:CrossingAndGivenPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular movable crossing and its required position to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredDetectorState
diagram railml3_p279.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorAndGivenState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedDetectorAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular detector and its required state to fulfil the route relation
source <xs:element name="requiredDetectorState" type="rail3:DetectorAndGivenState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular detector and its required state to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredSignalAspect
diagram railml3_p280.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndGivenAspect
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedSignalAndAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular signal and its required aspect to fulfil the route relation
source <xs:element name="requiredSignalAspect" type="rail3:SignalAndGivenAspect" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular signal and its required aspect to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredSectionState
diagram railml3_p281.png
namespace https://www.railml.org/schemas/3.1
type rail3:SectionAndGivenVacancy
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedSectionAndVacancy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular TVD section and its required state to fulfil the route relation
source <xs:element name="requiredSectionState" type="rail3:SectionAndGivenVacancy" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular TVD section and its required state to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredKeyLockState
diagram railml3_p282.png
namespace https://www.railml.org/schemas/3.1
type rail3:LockAndGivenState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedLockAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular key lock and its required state to fulfil the route relation
source <xs:element name="requiredKeyLockState" type="rail3:LockAndGivenState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular key lock and its required state to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

element RouteRelation/requiredLevelCrossingState
diagram railml3_p283.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingAndGivenState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:relatedLevelCrossingAndState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
References to a particular level crossing and its required state to fulfil the route relation
source <xs:element name="requiredLevelCrossingState" type="rail3:LevelCrossingAndGivenState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>References to a particular level crossing and its required state to fulfil the route relation</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteRelations
diagram railml3_p284.png
namespace https://www.railml.org/schemas/3.1
children rail3:routeRelation
used by
element AssetsForIL/routeRelations
annotation
documentation
container element for all RouteRelation elements
source <xs:complexType name="RouteRelations">
 
<xs:annotation>
   
<xs:documentation>container element for all RouteRelation elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="routeRelation" type="rail3:RouteRelation" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>states the conditions that must be fulfilled for a given signal to be open</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element RouteRelations/routeRelation
diagram railml3_p285.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteRelation
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:requiredSwitchPosition rail3:requiredDerailerPosition rail3:requiredCrossingPosition rail3:requiredDetectorState rail3:requiredSignalAspect rail3:requiredSectionState rail3:requiredKeyLockState rail3:requiredLevelCrossingState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
states the conditions that must be fulfilled for a given signal to be open
source <xs:element name="routeRelation" type="rail3:RouteRelation" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>states the conditions that must be fulfilled for a given signal to be open</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteReleaseGroupAhead
diagram railml3_p286.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:PartialRoute
properties
base rail3:PartialRoute
children rail3:designator rail3:hasTvdSection
used by
element RouteReleaseGroupsAhead/routeReleaseGroupAhead
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
isAutomatic  xs:boolean  optional      
documentation
True if the route is released automatically after expiry of the delay. False otherwise, e.g. operator intervention is required.
annotation
documentation
A route section is a partial route situated ahead of a train. In order to prevent that a stopped train locks down the remaining route, such a partial route can be released. Condition for release are expiry of a timer and/or an operator command as prescribed by the IM rules and regulations. This is especially used for ERTMS MA sections.
source <xs:complexType name="RouteReleaseGroupAhead">
 
<xs:annotation>
   
<xs:documentation>A route section is a partial route situated ahead of a train. In order to prevent that a stopped train locks down the remaining route, such a partial route can be released. Condition for release are expiry of a timer and/or an operator command as prescribed by the IM rules and regulations. This is especially used for ERTMS MA sections.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:PartialRoute">
     
<xs:sequence/>
     
<xs:attribute name="isAutomatic" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>True if the route is released automatically after expiry of the delay. False otherwise, e.g. operator intervention is required.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute RouteReleaseGroupAhead/@isAutomatic
type xs:boolean
properties
use optional
annotation
documentation
True if the route is released automatically after expiry of the delay. False otherwise, e.g. operator intervention is required.
source <xs:attribute name="isAutomatic" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>True if the route is released automatically after expiry of the delay. False otherwise, e.g. operator intervention is required.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType RouteReleaseGroupRear
diagram railml3_p287.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:PartialRoute
properties
base rail3:PartialRoute
children rail3:designator rail3:hasTvdSection
used by
element RouteReleaseGroupsRear/routeReleaseGroupRear
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
annotation
documentation
Ordered set of TVD sections in rear of the train.
Partial route, i.e. a set of TVD sections in rear of the train that is released as a group if given safety conditions are fulfilled. Partial route release can be delayed to improve safety. Route release groups can be associated with several routes.
Release can be retarded by a given delay.
If a route that has one single route release group then the route is released as a whole. In this case, there is no need to explicitly define the TVD sections that are part of this release group.
source <xs:complexType name="RouteReleaseGroupRear">
 
<xs:annotation>
   
<xs:documentation>Ordered set of TVD sections in rear of the train.
Partial route, i.e. a set of TVD sections in rear of the train that is released as a group if given safety conditions are fulfilled. Partial route release can be delayed to improve safety. Route release groups can be associated with several routes.
Release can be retarded by a given delay.
If a route that has one single route release group then the route is released as a whole. In this case, there is no need to explicitly define the TVD sections that are part of this release group.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:PartialRoute">
     
<xs:sequence/>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

complexType RouteReleaseGroupsAhead
diagram railml3_p288.png
namespace https://www.railml.org/schemas/3.1
children rail3:routeReleaseGroupAhead
used by
element AssetsForIL/routeReleaseGroupsAhead
source <xs:complexType name="RouteReleaseGroupsAhead">
 
<xs:sequence>
   
<xs:element name="routeReleaseGroupAhead" type="rail3:RouteReleaseGroupAhead" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>One or more TVD sections as part of the route which can be released in a group ahead of the train in standstill.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element RouteReleaseGroupsAhead/routeReleaseGroupAhead
diagram railml3_p289.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteReleaseGroupAhead
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:hasTvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
isAutomatic  xs:boolean  optional      
documentation
True if the route is released automatically after expiry of the delay. False otherwise, e.g. operator intervention is required.
annotation
documentation
One or more TVD sections as part of the route which can be released in a group ahead of the train in standstill.
source <xs:element name="routeReleaseGroupAhead" type="rail3:RouteReleaseGroupAhead" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>One or more TVD sections as part of the route which can be released in a group ahead of the train in standstill.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType RouteReleaseGroupsRear
diagram railml3_p290.png
namespace https://www.railml.org/schemas/3.1
children rail3:routeReleaseGroupRear
used by
element AssetsForIL/routeReleaseGroupsRear
source <xs:complexType name="RouteReleaseGroupsRear">
 
<xs:sequence>
   
<xs:element name="routeReleaseGroupRear" type="rail3:RouteReleaseGroupRear" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>One or more TVD sections as part of the route which can be released in a group in rear of passing train.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element RouteReleaseGroupsRear/routeReleaseGroupRear
diagram railml3_p291.png
namespace https://www.railml.org/schemas/3.1
type rail3:RouteReleaseGroupRear
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:hasTvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  optional      
documentation
Duration after which the IL releases the partial route. Starts counting from the moment that all the conditions for release are fulfilled. This delay is engineered in static data. If not defined, the IL releases the group without delay.
If the route has only one route release group then the set of TVD sections in the route is released en bloc with the delay given here.
typicalDelay  xs:duration  optional      
documentation
Duration after which the partial route is typically released. Use this delay for simulation purposes. Starts counting from the moment that the interlocking has received all conditions for the release. E.g. TVD sections in the group have been vacated, timers expired.
annotation
documentation
One or more TVD sections as part of the route which can be released in a group in rear of passing train.
source <xs:element name="routeReleaseGroupRear" type="rail3:RouteReleaseGroupRear" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>One or more TVD sections as part of the route which can be released in a group in rear of passing train.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Routes
diagram railml3_p292.png
namespace https://www.railml.org/schemas/3.1
children rail3:route
used by
element AssetsForIL/routes
annotation
documentation
container element for all Route elements
source <xs:complexType name="Routes">
 
<xs:annotation>
   
<xs:documentation>container element for all Route elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="route" type="rail3:Route" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>path for train movements in railway network secured by interlocking system</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element Routes/route
diagram railml3_p293.png
namespace https://www.railml.org/schemas/3.1
type rail3:Route
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:handlesRouteType rail3:routeActivationSection rail3:facingSwitchInPosition rail3:hasTvdSection rail3:routeEntry rail3:hasReleaseGroup rail3:switchPositionInDepartureTrack rail3:routeExit rail3:additionalRelation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
locksAutomatically  xs:boolean  optional      
documentation
If true, the interlocking locks this route automatically and immediately after it was cleared. The operator has to intervene if he wishes to call another route. Automatikfahrstrasse in German, trace automatique in French. Note that this functionality is often part of the control system in which case this attribute should be omitted.
processingDelay  xs:duration  optional      
documentation
The delay in seconds between the moment the interlocking receives the route call and the moment the route the interlocking reports back that the route is locked, i.e. the processing time for setting that route.
proceedAspectDelay  xs:duration  optional      
documentation
The delay for the signal before it will change from closed to any proceed aspect.
signalClosureDelay  xs:duration  optional      
documentation
The delay for the signal after the conditions for proceed aspect are removed and the physical closure of the signal.
approachReleaseDelay  xs:duration  optional      
documentation
The delay between the request from signalman to release an already approached (definitely locked) route and the real release of associated elements of the route.
annotation
documentation
path for train movements in railway network secured by interlocking system
source <xs:element name="route" type="rail3:Route" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>path for train movements in railway network secured by interlocking system</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SectionAndGivenVacancy
diagram railml3_p294.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedSectionAndVacancy
used by
element RouteRelation/requiredSectionState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the TVD section and its state plus the level of enforcement
source <xs:complexType name="SectionAndGivenVacancy">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the TVD section and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedSectionAndVacancy" type="rail3:SectionAndVacancy" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the TVD section and its state plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SectionAndGivenVacancy/relatedSectionAndVacancy
diagram railml3_p295.png
namespace https://www.railml.org/schemas/3.1
type rail3:SectionAndVacancy
properties
content complex
children rail3:designator rail3:refersToSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tSectionVacancy  required      
documentation
The occupation status of the TVD section.
annotation
documentation
the tuple of references to the TVD section and its state plus the level of enforcement
source <xs:element name="relatedSectionAndVacancy" type="rail3:SectionAndVacancy" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the TVD section and its state plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SectionAndVacancy
diagram railml3_p296.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToSection
used by
element SectionAndGivenVacancy/relatedSectionAndVacancy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inState  rail3:tSectionVacancy  required      
documentation
The occupation status of the TVD section.
annotation
documentation
Tuple of a track vacancy detection section and its state (occupied, vacant)
source <xs:complexType name="SectionAndVacancy">
 
<xs:annotation>
   
<xs:documentation>Tuple of a track vacancy detection section and its state (occupied, vacant)</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the TVD section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inState" type="rail3:tSectionVacancy" use="required">
       
<xs:annotation>
         
<xs:documentation>The occupation status of the TVD section.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SectionAndVacancy/@inState
type rail3:tSectionVacancy
properties
use required
facets
Kind Value Annotation
enumeration unknown
enumeration vacant
enumeration occupied
annotation
documentation
The occupation status of the TVD section.
source <xs:attribute name="inState" type="rail3:tSectionVacancy" use="required">
 
<xs:annotation>
   
<xs:documentation>The occupation status of the TVD section.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SectionAndVacancy/refersToSection
diagram railml3_p297.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the TVD section.
source <xs:element name="refersToSection" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the TVD section.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType ShuntingZone
diagram railml3_p298.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:RestrictedArea
properties
base rail3:RestrictedArea
children rail3:designator rail3:isLimitedBy
used by
element ShuntingZones/shuntingZone
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Simple zone defined for shunting movements. It can be used to define any shunting zones.
source <xs:complexType name="ShuntingZone">
 
<xs:annotation>
   
<xs:documentation>Simple zone defined for shunting movements. It can be used to define any shunting zones.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:RestrictedArea">
     
<xs:sequence/>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

complexType ShuntingZones
diagram railml3_p299.png
namespace https://www.railml.org/schemas/3.1
children rail3:shuntingZone
used by
element AssetsForIL/shuntingZones
source <xs:complexType name="ShuntingZones">
 
<xs:sequence>
   
<xs:element name="shuntingZone" type="rail3:ShuntingZone" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Simple zone defined for shunting movements.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element ShuntingZones/shuntingZone
diagram railml3_p300.png
namespace https://www.railml.org/schemas/3.1
type rail3:ShuntingZone
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:isLimitedBy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Simple zone defined for shunting movements.
source <xs:element name="shuntingZone" type="rail3:ShuntingZone" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Simple zone defined for shunting movements.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalAndAspect
diagram railml3_p301.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToSignal rail3:showsAspect
used by
elements AspectRelation/distantAspect AspectRelation/masterAspect SignalAndGivenAspect/relatedSignalAndAspect AspectRelation/slaveAspect
complexType AspectRelatedLevelCrossingDelay
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
A tuple (signal, aspect). Refers to a signal and an aspect. Used for expressing concepts like signal 1105 shows yellow flashing.
source <xs:complexType name="SignalAndAspect">
 
<xs:annotation>
   
<xs:documentation>A tuple (signal, aspect). Refers to a signal and an aspect. Used for expressing concepts like signal 1105 shows yellow flashing.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the signal.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="showsAspect" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The aspect the signal is showing.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SignalAndAspect/refersToSignal
diagram railml3_p302.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the signal.
source <xs:element name="refersToSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the signal.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalAndAspect/showsAspect
diagram railml3_p303.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 1
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The aspect the signal is showing.
source <xs:element name="showsAspect" type="rail3:EntityILref" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The aspect the signal is showing.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalAndGivenAspect
diagram railml3_p304.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedSignalAndAspect
used by
elements SignalWithAspect/givenAspect RouteRelation/requiredSignalAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the signal and its aspect plus the level of enforcement
source <xs:complexType name="SignalAndGivenAspect">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the signal and its aspect plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedSignalAndAspect" type="rail3:SignalAndAspect" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the signal and its aspect</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SignalAndGivenAspect/relatedSignalAndAspect
diagram railml3_p305.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndAspect
properties
content complex
children rail3:designator rail3:refersToSignal rail3:showsAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the signal and its aspect
source <xs:element name="relatedSignalAndAspect" type="rail3:SignalAndAspect" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the signal and its aspect</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalBox
diagram railml3_p306.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:controlsSystemAsset rail3:controlsTrackAsset rail3:controlsRoute rail3:controlsCombinedRoute rail3:controlsInterface rail3:controlledBy rail3:implementsSignalplan rail3:implementsElementGroup rail3:hasPermissionZone rail3:hasConflictingRoutes rail3:hasConfiguration
used by
element SignalBoxes/signalBox
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The SignalBox (single interlocking) is a vital and fail-safe system. It accepts commands from operation control systems and reads the status of field elements. The interlocking controls a set of track assets and system assets to safely guide and control train movement. This logic reflects the railway rules and regulations.
IL logic may be implemented in terms of mechanically interlocking bars, relay circuitry or computer programs.
This is the master class that must be instantiated for a specific interlocking system that controls a specific yard.
source <xs:complexType name="SignalBox">
 
<xs:annotation>
   
<xs:documentation>The SignalBox (single interlocking) is a vital and fail-safe system. It accepts commands from operation control systems and reads the status of field elements. The interlocking controls a set of track assets and system assets to safely guide and control train movement. This logic reflects the railway rules and regulations.
IL logic may be implemented in terms of mechanically interlocking bars, relay circuitry or computer programs.
This is the master class that must be instantiated for a specific interlocking system that controls a specific yard.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="controlsSystemAsset" type="rail3:SystemAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the system assets the interlocking controls</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlsTrackAsset" type="rail3:TrackAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The interlocking carries a list of (references to) track assets that this interlocking controls. The controlled object has an attribute indicating the Level of Control which is most often ‘full control’. Track assets that aren't controlled by the interlocking, e.g. field controlled level crossing or open track elements can be tagged with levelOfControl='none'. </xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlsRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the routes the interlocking controls</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlsCombinedRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to the combined routes the interlocking controls</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlsInterface" type="rail3:InterlockingInterface" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the interfaces to other interlockings</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="controlledBy" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the controllers which can control this interlocking</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="implementsSignalplan" type="rail3:SignalPlan" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the signal plans the interlocking uses</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="implementsElementGroup" type="rail3:ElementGroup" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the element groups which are configured for this interlocking</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasPermissionZone" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The reference to any permission zone within the area controlled by this interlocking.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasConflictingRoutes" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>The references to the conflicting routes the interlocking knows</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasConfiguration" type="rail3:Configuration" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Basic information of the interlocking configuration</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SignalBox/controlsSystemAsset
diagram railml3_p307.png
namespace https://www.railml.org/schemas/3.1
type rail3:SystemAssetConnectedToIL
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:connectedSystemAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The level of control of the asset by the interlocking.
annotation
documentation
The references to the system assets the interlocking controls
source <xs:element name="controlsSystemAsset" type="rail3:SystemAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the system assets the interlocking controls</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/controlsTrackAsset
diagram railml3_p308.png
namespace https://www.railml.org/schemas/3.1
type rail3:TrackAssetConnectedToIL
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:connectedTrackAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The level of control of the asset by the interlocking.
annotation
documentation
The interlocking carries a list of (references to) track assets that this interlocking controls. The controlled object has an attribute indicating the Level of Control which is most often ‘full control’. Track assets that aren't controlled by the interlocking, e.g. field controlled level crossing or open track elements can be tagged with levelOfControl='none'.
source <xs:element name="controlsTrackAsset" type="rail3:TrackAssetConnectedToIL" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The interlocking carries a list of (references to) track assets that this interlocking controls. The controlled object has an attribute indicating the Level of Control which is most often ‘full control’. Track assets that aren't controlled by the interlocking, e.g. field controlled level crossing or open track elements can be tagged with levelOfControl='none'. </xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/controlsRoute
diagram railml3_p309.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the routes the interlocking controls
source <xs:element name="controlsRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the routes the interlocking controls</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/controlsCombinedRoute
diagram railml3_p310.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the combined routes the interlocking controls
source <xs:element name="controlsCombinedRoute" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to the combined routes the interlocking controls</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/controlsInterface
diagram railml3_p311.png
namespace https://www.railml.org/schemas/3.1
type rail3:InterlockingInterface
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:lastOwnTvdSection rail3:firstRemoteTvdSection rail3:incomingRoute rail3:outgoingRoute rail3:hasInterface
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
interfaceLocation  rail3:tIxlInterfaceLocationTypeList  required      
documentation
The topology view of interface location determining the extent of information to be exchanged.
isOnCommandSide  xs:boolean  optional      
documentation
True means the related interlocking uses the described commands for output towards the partner. With false it is inverted for the related interlocking.
annotation
documentation
The references to the interfaces to other interlockings
source <xs:element name="controlsInterface" type="rail3:InterlockingInterface" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the interfaces to other interlockings</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/controlledBy
diagram railml3_p312.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The references to the controllers which can control this interlocking
source <xs:element name="controlledBy" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the controllers which can control this interlocking</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/implementsSignalplan
diagram railml3_p313.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalPlan
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:aspectRelation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The references to the signal plans the interlocking uses
source <xs:element name="implementsSignalplan" type="rail3:SignalPlan" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the signal plans the interlocking uses</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/implementsElementGroup
diagram railml3_p314.png
namespace https://www.railml.org/schemas/3.1
type rail3:ElementGroup
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:groupType rail3:refersToMember
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The references to the element groups which are configured for this interlocking
source <xs:element name="implementsElementGroup" type="rail3:ElementGroup" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the element groups which are configured for this interlocking</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/hasPermissionZone
diagram railml3_p315.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to any permission zone within the area controlled by this interlocking.
source <xs:element name="hasPermissionZone" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The reference to any permission zone within the area controlled by this interlocking.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/hasConflictingRoutes
diagram railml3_p316.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The references to the conflicting routes the interlocking knows
source <xs:element name="hasConflictingRoutes" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The references to the conflicting routes the interlocking knows</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalBox/hasConfiguration
diagram railml3_p317.png
namespace https://www.railml.org/schemas/3.1
type rail3:Configuration
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
model  xs:string  optional      
documentation
The vendor specific model of the interlocking.
technologyType  rail3:tIxlTechnologyTypeListExt  required      
documentation
The basic technology type of the interlocking
SWversion  xs:string  optional      
documentation
The software version used by this interlocking.
signalSystem  xs:string  optional      
documentation
The name of the signal system used with this interlocking, e.g. Hl or Ks system of Deutsche Bahn.
annotation
documentation
Basic information of the interlocking configuration
source <xs:element name="hasConfiguration" type="rail3:Configuration" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Basic information of the interlocking configuration</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalBoxes
diagram railml3_p318.png
namespace https://www.railml.org/schemas/3.1
children rail3:signalBox
used by
element Interlocking/signalBoxes
annotation
documentation
container element for all signalBox elements
source <xs:complexType name="SignalBoxes">
 
<xs:annotation>
   
<xs:documentation>container element for all signalBox elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="signalBox" type="rail3:SignalBox" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>Container with the characteristics of an individual interlocking system.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element SignalBoxes/signalBox
diagram railml3_p319.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalBox
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:controlsSystemAsset rail3:controlsTrackAsset rail3:controlsRoute rail3:controlsCombinedRoute rail3:controlsInterface rail3:controlledBy rail3:implementsSignalplan rail3:implementsElementGroup rail3:hasPermissionZone rail3:hasConflictingRoutes rail3:hasConfiguration
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
Container with the characteristics of an individual interlocking system.
source <xs:element name="signalBox" type="rail3:SignalBox" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Container with the characteristics of an individual interlocking system.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalDelayTime
diagram railml3_p320.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:hasDelayedSignal
used by
element ActivationCondition/signalDelayTime
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
delay  xs:duration  required      
documentation
Time during which the signal remains closed. Starts counting when the level crossing is triggered.
annotation
documentation
Timer that maintains a signal at stop for a given duration after the level crossing was triggered.
source <xs:complexType name="SignalDelayTime">
 
<xs:annotation>
   
<xs:documentation>Timer that maintains a signal at stop for a given duration after the level crossing was triggered.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="hasDelayedSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the signal.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="delay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Time during which the signal remains closed. Starts counting when the level crossing is triggered.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SignalDelayTime/@delay
type xs:duration
properties
use required
annotation
documentation
Time during which the signal remains closed. Starts counting when the level crossing is triggered.
source <xs:attribute name="delay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Time during which the signal remains closed. Starts counting when the level crossing is triggered.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SignalDelayTime/hasDelayedSignal
diagram railml3_p321.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the signal.
source <xs:element name="hasDelayedSignal" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the signal.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalIL
diagram railml3_p322.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
children rail3:designator rail3:refersTo rail3:protectsBlockExit
used by
element SignalsIL/signalIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h from controlled braking curve.
malfunctionSpeed  rail3:tSpeedKmPerHour  optional      
documentation
This constant indicates the maximum speed in km/h with which a train may travel past a failed signal. The malfunctioning signal cannot be opened.
approachSpeed  rail3:tSpeedKmPerHour  optional      
documentation
The maximum speed in km/h with which a train can approach the signal. This matches the Ka of the previous (=upstream) signal or speed sign. This is suitable for defining the line speed profile.
passingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum speed in km/h beyond the signal. This is suitable for defining the line speed profile.
releaseDelay  xs:duration  optional      
documentation
Time to elapse between receiving the revocation command and before route release.
function  rail3:tSignalFunctionListExt  optional      
documentation
Function of the signal for usage by the interlocking. This is in addition to signalType in infrastructure.
isVirtual  xs:boolean  required      
documentation
Often, users label signals virtual. A virtual signal can be a dummy-signal that is a software object in the interlocking but has no physical trackside presence. Such virtual signals can be useful for modelling speed steps; there need not be a physical signal but the interlocking enforces a different speed at the position of the virtual signal. The other way round, stand-alone boards that are not wired to the interlocking can be labelled virtual. Such stand-alone signals are of interest to simulations because when they affect driver behaviour thus influence train runs.
callOnAspectTime  xs:duration  optional      
documentation
time for duration to show call-on aspect on this signal
sightDistance  rail3:tLengthM  optional      
documentation
The distance in metres the signal is visible in advance by the train driver. This might influence reaction times on changing aspects for simulation.
annotation
documentation
A signal has an identity attribute, a reference to a signal or sign defined in the RTM scheme. A sign (or ETCS markerboard) indicating a speed change may well be modelled as a signal because the interlocking is likely to issue a different speed code at that sign
source <xs:complexType name="SignalIL">
 
<xs:annotation>
   
<xs:documentation>A signal has an identity attribute, a reference to a signal or sign defined in the RTM scheme. A sign (or ETCS markerboard) indicating a speed change may well be modelled as a signal because the interlocking is likely to issue a different speed code at that sign</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the physical trackside signal.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="protectsBlockExit" type="rail3:EntityILref" minOccurs="0" maxOccurs="1"/>
     
</xs:sequence>
     
<xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Release speed in km/h from controlled braking curve.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="malfunctionSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>This constant indicates the maximum speed in km/h with which a train may travel past a failed signal. The malfunctioning signal cannot be opened.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="approachSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>The maximum speed in km/h with which a train can approach the signal. This matches the Ka of the previous (=upstream) signal or speed sign. This is suitable for defining the line speed profile.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="passingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
       
<xs:annotation>
         
<xs:documentation>Maximum speed in km/h beyond the signal. This is suitable for defining the line speed profile.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="releaseDelay" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>Time to elapse between receiving the revocation command and before route release.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="function" type="rail3:tSignalFunctionListExt" use="optional">
       
<xs:annotation>
         
<xs:documentation>Function of the signal for usage by the interlocking. This is in addition to signalType in infrastructure.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="isVirtual" type="xs:boolean" use="required">
       
<xs:annotation>
         
<xs:documentation>Often, users label signals virtual. A virtual signal can be a dummy-signal that is a software object in the interlocking but has no physical trackside presence. Such virtual signals can be useful for modelling speed steps; there need not be a physical signal but the interlocking enforces a different speed at the position of the virtual signal. The other way round, stand-alone boards that are not wired to the interlocking can be labelled virtual. Such stand-alone signals are of interest to simulations because when they affect driver behaviour thus influence train runs.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="callOnAspectTime" type="xs:duration" use="optional">
       
<xs:annotation>
         
<xs:documentation>time for duration to show call-on aspect on this signal</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="sightDistance" type="rail3:tLengthM" use="optional">
       
<xs:annotation>
         
<xs:documentation>The distance in metres the signal is visible in advance by the train driver. This might influence reaction times on changing aspects for simulation.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SignalIL/@releaseSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Release speed in km/h from controlled braking curve.
source <xs:attribute name="releaseSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Release speed in km/h from controlled braking curve.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@malfunctionSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
This constant indicates the maximum speed in km/h with which a train may travel past a failed signal. The malfunctioning signal cannot be opened.
source <xs:attribute name="malfunctionSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>This constant indicates the maximum speed in km/h with which a train may travel past a failed signal. The malfunctioning signal cannot be opened.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@approachSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
The maximum speed in km/h with which a train can approach the signal. This matches the Ka of the previous (=upstream) signal or speed sign. This is suitable for defining the line speed profile.
source <xs:attribute name="approachSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>The maximum speed in km/h with which a train can approach the signal. This matches the Ka of the previous (=upstream) signal or speed sign. This is suitable for defining the line speed profile.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@passingSpeed
type rail3:tSpeedKmPerHour
properties
use optional
annotation
documentation
Maximum speed in km/h beyond the signal. This is suitable for defining the line speed profile.
source <xs:attribute name="passingSpeed" type="rail3:tSpeedKmPerHour" use="optional">
 
<xs:annotation>
   
<xs:documentation>Maximum speed in km/h beyond the signal. This is suitable for defining the line speed profile.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@releaseDelay
type xs:duration
properties
use optional
annotation
documentation
Time to elapse between receiving the revocation command and before route release.
source <xs:attribute name="releaseDelay" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>Time to elapse between receiving the revocation command and before route release.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@function
type rail3:tSignalFunctionListExt
properties
use optional
annotation
documentation
Function of the signal for usage by the interlocking. This is in addition to signalType in infrastructure.
source <xs:attribute name="function" type="rail3:tSignalFunctionListExt" use="optional">
 
<xs:annotation>
   
<xs:documentation>Function of the signal for usage by the interlocking. This is in addition to signalType in infrastructure.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@isVirtual
type xs:boolean
properties
use required
annotation
documentation
Often, users label signals virtual. A virtual signal can be a dummy-signal that is a software object in the interlocking but has no physical trackside presence. Such virtual signals can be useful for modelling speed steps; there need not be a physical signal but the interlocking enforces a different speed at the position of the virtual signal. The other way round, stand-alone boards that are not wired to the interlocking can be labelled virtual. Such stand-alone signals are of interest to simulations because when they affect driver behaviour thus influence train runs.
source <xs:attribute name="isVirtual" type="xs:boolean" use="required">
 
<xs:annotation>
   
<xs:documentation>Often, users label signals virtual. A virtual signal can be a dummy-signal that is a software object in the interlocking but has no physical trackside presence. Such virtual signals can be useful for modelling speed steps; there need not be a physical signal but the interlocking enforces a different speed at the position of the virtual signal. The other way round, stand-alone boards that are not wired to the interlocking can be labelled virtual. Such stand-alone signals are of interest to simulations because when they affect driver behaviour thus influence train runs.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@callOnAspectTime
type xs:duration
properties
use optional
annotation
documentation
time for duration to show call-on aspect on this signal
source <xs:attribute name="callOnAspectTime" type="xs:duration" use="optional">
 
<xs:annotation>
   
<xs:documentation>time for duration to show call-on aspect on this signal</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute SignalIL/@sightDistance
type rail3:tLengthM
properties
use optional
annotation
documentation
The distance in metres the signal is visible in advance by the train driver. This might influence reaction times on changing aspects for simulation.
source <xs:attribute name="sightDistance" type="rail3:tLengthM" use="optional">
 
<xs:annotation>
   
<xs:documentation>The distance in metres the signal is visible in advance by the train driver. This might influence reaction times on changing aspects for simulation.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SignalIL/refersTo
diagram railml3_p323.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the physical trackside signal.
source <xs:element name="refersTo" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the physical trackside signal.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SignalIL/protectsBlockExit
diagram railml3_p324.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
source <xs:element name="protectsBlockExit" type="rail3:EntityILref" minOccurs="0" maxOccurs="1"/>

complexType SignalPlan
diagram railml3_p325.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:aspectRelation
used by
element SignalBox/implementsSignalplan
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
The signalplan describes a set of aspect relations.
In speed signalling systems, the aspect relation between signals represents a speed profile that the train must respect.
source <xs:complexType name="SignalPlan">
 
<xs:annotation>
   
<xs:documentation>The signalplan describes a set of aspect relations.
In speed signalling systems, the aspect relation between signals represents a speed profile that the train must respect.
</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="aspectRelation" type="rail3:AspectRelation" minOccurs="1" maxOccurs="unbounded"/>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SignalPlan/aspectRelation
diagram railml3_p326.png
namespace https://www.railml.org/schemas/3.1
type rail3:AspectRelation
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:masterAspect rail3:slaveAspect rail3:distantAspect rail3:signalsSpeedProfile rail3:appliesToRoute
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
passingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
The speed in km/h signalled by the slave aspect, i.e. the speed that the train must respect when passing the slave signal (at route entry).
expectingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum signalled speed in km/h at master signal (aka target speed).
endSectionTime  xs:duration  optional      
documentation
The end-section of a route is the section between the closed route exit signal and the previous slave signal. Commonly, the interlocking revokes (part of) the route when this time period is passed.
source <xs:element name="aspectRelation" type="rail3:AspectRelation" minOccurs="1" maxOccurs="unbounded"/>

complexType SignalsIL
diagram railml3_p327.png
namespace https://www.railml.org/schemas/3.1
children rail3:signalIL
used by
element AssetsForIL/signalsIL
annotation
documentation
container element for all SignalIL elements
source <xs:complexType name="SignalsIL">
 
<xs:annotation>
   
<xs:documentation>container element for all SignalIL elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="signalIL" type="rail3:SignalIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The signal is a track asset used to transmit information to the train driver represented by its optical appearance.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element SignalsIL/signalIL
diagram railml3_p328.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo rail3:protectsBlockExit
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
releaseSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Release speed in km/h from controlled braking curve.
malfunctionSpeed  rail3:tSpeedKmPerHour  optional      
documentation
This constant indicates the maximum speed in km/h with which a train may travel past a failed signal. The malfunctioning signal cannot be opened.
approachSpeed  rail3:tSpeedKmPerHour  optional      
documentation
The maximum speed in km/h with which a train can approach the signal. This matches the Ka of the previous (=upstream) signal or speed sign. This is suitable for defining the line speed profile.
passingSpeed  rail3:tSpeedKmPerHour  optional      
documentation
Maximum speed in km/h beyond the signal. This is suitable for defining the line speed profile.
releaseDelay  xs:duration  optional      
documentation
Time to elapse between receiving the revocation command and before route release.
function  rail3:tSignalFunctionListExt  optional      
documentation
Function of the signal for usage by the interlocking. This is in addition to signalType in infrastructure.
isVirtual  xs:boolean  required      
documentation
Often, users label signals virtual. A virtual signal can be a dummy-signal that is a software object in the interlocking but has no physical trackside presence. Such virtual signals can be useful for modelling speed steps; there need not be a physical signal but the interlocking enforces a different speed at the position of the virtual signal. The other way round, stand-alone boards that are not wired to the interlocking can be labelled virtual. Such stand-alone signals are of interest to simulations because when they affect driver behaviour thus influence train runs.
callOnAspectTime  xs:duration  optional      
documentation
time for duration to show call-on aspect on this signal
sightDistance  rail3:tLengthM  optional      
documentation
The distance in metres the signal is visible in advance by the train driver. This might influence reaction times on changing aspects for simulation.
annotation
documentation
The signal is a track asset used to transmit information to the train driver represented by its optical appearance.
source <xs:element name="signalIL" type="rail3:SignalIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The signal is a track asset used to transmit information to the train driver represented by its optical appearance.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SignalWithAspect
diagram railml3_p329.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenAspect
used by
elements WorkZone/signalWithAspect LocalOperationArea/signalWithAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required aspect is for protection of the area from inside or outside
annotation
documentation
reference to any signal and its aspect inside or outside the restricted area required for use and/or protection
source <xs:complexType name="SignalWithAspect">
 
<xs:annotation>
   
<xs:documentation>reference to any signal and its aspect inside or outside the restricted area required for use and/or protection</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenAspect" type="rail3:SignalAndGivenAspect" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the signal and its aspect plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the required aspect is for protection of the area from inside or outside</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SignalWithAspect/@protectingSide
type rail3:tProtectingSideList
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
indication whether the required aspect is for protection of the area from inside or outside
source <xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the required aspect is for protection of the area from inside or outside</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SignalWithAspect/givenAspect
diagram railml3_p330.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalAndGivenAspect
properties
content complex
children rail3:designator rail3:relatedSignalAndAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the signal and its aspect plus the level of enforcement
source <xs:element name="givenAspect" type="rail3:SignalAndGivenAspect" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the signal and its aspect plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchAndGivenPosition
diagram railml3_p331.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndGivenState
properties
base rail3:AssetAndGivenState
children rail3:designator rail3:relatedSwitchAndPosition
used by
elements SwitchInPosition/givenPosition RouteRelation/requiredSwitchPosition Overlap/requiresSwitchInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the switch and its position plus the level of enforcement
source <xs:complexType name="SwitchAndGivenPosition">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the switch and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndGivenState">
     
<xs:sequence>
       
<xs:element name="relatedSwitchAndPosition" type="rail3:SwitchAndPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the switch and its position</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element SwitchAndGivenPosition/relatedSwitchAndPosition
diagram railml3_p332.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndPosition
properties
content complex
children rail3:designator rail3:refersToSwitch
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
annotation
documentation
the tuple of references to the switch and its position
source <xs:element name="relatedSwitchAndPosition" type="rail3:SwitchAndPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the switch and its position</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchAndPosition
diagram railml3_p333.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:AssetAndState
properties
base rail3:AssetAndState
children rail3:designator rail3:refersToSwitch
used by
elements Route/facingSwitchInPosition SwitchAndGivenPosition/relatedSwitchAndPosition SwitchPositionRestriction/relatedSwitchInPosition Route/switchPositionInDepartureTrack
complexType SwitchRelatedDelay
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
annotation
documentation
A tuple (Switch, position). This refers to a switch and its position.
source <xs:complexType name="SwitchAndPosition">
 
<xs:annotation>
   
<xs:documentation>A tuple (Switch, position). This refers to a switch and its position.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:AssetAndState">
     
<xs:sequence>
       
<xs:element name="refersToSwitch" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the switch.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="inPosition" type="rail3:tSwitchPosition" use="required">
       
<xs:annotation>
         
<xs:documentation>The position the switch is in.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SwitchAndPosition/@inPosition
type rail3:tSwitchPosition
properties
use required
facets
Kind Value Annotation
enumeration right
enumeration left
annotation
documentation
The position the switch is in.
source <xs:attribute name="inPosition" type="rail3:tSwitchPosition" use="required">
 
<xs:annotation>
   
<xs:documentation>The position the switch is in.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SwitchAndPosition/refersToSwitch
diagram railml3_p334.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the switch.
source <xs:element name="refersToSwitch" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the switch.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchesIL
diagram railml3_p335.png
namespace https://www.railml.org/schemas/3.1
children rail3:switchIL
used by
element AssetsForIL/switchesIL
annotation
documentation
container for all switchIL elements
source <xs:complexType name="SwitchesIL">
 
<xs:annotation>
   
<xs:documentation>container for all switchIL elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:element name="switchIL" type="rail3:SwitchIL" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>The switch is a track asset where a train can change from one track to another. Here the functional aspects for interlocking operation are considered.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element SwitchesIL/switchIL
diagram railml3_p336.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchIL
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement rail3:hasFoulingTrainDetectors rail3:branchLeft rail3:branchRight rail3:hasPositionRestriction
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tSwitchPosition  optional      
documentation
This is the preferred position of the switch which it is switched to when not in use or in case of both positions required for flank protection.
annotation
documentation
The switch is a track asset where a train can change from one track to another. Here the functional aspects for interlocking operation are considered.
source <xs:element name="switchIL" type="rail3:SwitchIL" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>The switch is a track asset where a train can change from one track to another. Here the functional aspects for interlocking operation are considered.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchIL
diagram railml3_p337.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:MovableElement
properties
base rail3:MovableElement
children rail3:designator rail3:refersTo rail3:hasGaugeClearanceMarker rail3:hasTvdSection rail3:connectedToPowerSupply rail3:relatedMovableElement rail3:hasFoulingTrainDetectors rail3:branchLeft rail3:branchRight rail3:hasPositionRestriction
used by
element SwitchesIL/switchIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
maxThrowTime  xs:duration  required      
documentation
Maximum time in milliseconds during which the IL can drive the element. If it has not reached end-position before this timer expires, the interlocking stops throwing as to prevent damage.
typicalThrowTime  xs:duration  optional      
documentation
typical throw time is the average time it takes between the moment the IL receives the call and the element reaches the new position. Switch throwing adds a delay to route setting that is of great interest to the use case simulation. For this purpose, we add an attribute typicalThrowTime that allows capacity planners to estimate the influence of slow throwing switches on train traffic. Note that this excludes controller (OCS) processing time and communication between controller (OCS) and interlocking.
returnsToPreferredPosition  xs:boolean  optional      
documentation
The automatic normalisation attribute is closely related to the preferred position. Whether or not the IL returns the element to its preferred position depends on this parameter. E.g. a derailer that is modelled as ... preferredPosition=engaged autoNormalisation=true ... will return to its engaged position when released. A switch modelled as preferredPosition=right autoNormalisation=false... will not automatically return to the right position when released. This combination of attributes is useful for geographical interlockings that automatically determine the preferred routes given the preferred position of intervening switches.
isKeyLocked  xs:boolean  optional      
documentation
One of boolean true or false. True means that the switch is clamped either mechanically or by any electric or electronic means. The interlocking shall never attempt to throw a clamped switch.
numberOfBladeSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the switch blades, 0 means no direct operation from the interlocking
numberOfFrogSwitchActuators  xs:nonNegativeInteger  optional      
documentation
number of switch actuators controlled from interlocking to throw the frog nose(s), 0 means no movable frog
preferredPosition  rail3:tSwitchPosition  optional      
documentation
This is the preferred position of the switch which it is switched to when not in use or in case of both positions required for flank protection.
annotation
documentation
Extends the infrastructure::switch for IXL purposes. The graph model from RailTopoModel allows the definition of connections between tracks. Thus, one can include or exclude connections between tracks. The name SwitchIL is chosen to reconcile US nomenclature and to avoid a naming conflict with infrastructure domain.
source <xs:complexType name="SwitchIL">
 
<xs:annotation>
   
<xs:documentation>Extends the infrastructure::switch for IXL purposes. The graph model from RailTopoModel allows the definition of connections between tracks. Thus, one can include or exclude connections between tracks. The name SwitchIL is chosen to reconcile US nomenclature and to avoid a naming conflict with infrastructure domain.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:MovableElement">
     
<xs:sequence>
       
<xs:element name="hasFoulingTrainDetectors" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>This is the reference to any train detection device in infrastructure which is located to close to the switch, i.e. the gauge of the switch is not clear when the associated neighbouring TVD section is occupied.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="branchLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the underlying track section in infrastructure of the left branch.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="branchRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference to the underlying track section in infrastructure of the right branch.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasPositionRestriction" type="rail3:SwitchPositionRestriction" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>It defines the position the switch shall have in dependency of the position of the related element.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="preferredPosition" type="rail3:tSwitchPosition" use="optional">
       
<xs:annotation>
         
<xs:documentation>This is the preferred position of the switch which it is switched to when not in use or in case of both positions required for flank protection.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SwitchIL/@preferredPosition
type rail3:tSwitchPosition
properties
use optional
facets
Kind Value Annotation
enumeration right
enumeration left
annotation
documentation
This is the preferred position of the switch which it is switched to when not in use or in case of both positions required for flank protection.
source <xs:attribute name="preferredPosition" type="rail3:tSwitchPosition" use="optional">
 
<xs:annotation>
   
<xs:documentation>This is the preferred position of the switch which it is switched to when not in use or in case of both positions required for flank protection.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SwitchIL/hasFoulingTrainDetectors
diagram railml3_p338.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to any train detection device in infrastructure which is located to close to the switch, i.e. the gauge of the switch is not clear when the associated neighbouring TVD section is occupied.
source <xs:element name="hasFoulingTrainDetectors" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>This is the reference to any train detection device in infrastructure which is located to close to the switch, i.e. the gauge of the switch is not clear when the associated neighbouring TVD section is occupied.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SwitchIL/branchLeft
diagram railml3_p339.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the underlying track section in infrastructure of the left branch.
source <xs:element name="branchLeft" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the underlying track section in infrastructure of the left branch.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SwitchIL/branchRight
diagram railml3_p340.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
This is the reference to the underlying track section in infrastructure of the right branch.
source <xs:element name="branchRight" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference to the underlying track section in infrastructure of the right branch.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SwitchIL/hasPositionRestriction
diagram railml3_p341.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchPositionRestriction
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:relatedSwitchInPosition rail3:relatedDerailerInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
restrictedPosition  rail3:tSwitchPosition  required      
documentation
This is the position which is needed when the other element has the named state/position.
annotation
documentation
It defines the position the switch shall have in dependency of the position of the related element.
source <xs:element name="hasPositionRestriction" type="rail3:SwitchPositionRestriction" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>It defines the position the switch shall have in dependency of the position of the related element.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchInPosition
diagram railml3_p342.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:givenPosition
used by
elements WorkZone/switchInPosition LocalOperationArea/switchInPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any switch and its position inside or outside the restricted area required for use and/or protection
source <xs:complexType name="SwitchInPosition">
 
<xs:annotation>
   
<xs:documentation>reference to any switch and its position inside or outside the restricted area required for use and/or protection</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="givenPosition" type="rail3:SwitchAndGivenPosition" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>the tuple of references to the switch and its position plus the level of enforcement</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
       
<xs:annotation>
         
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SwitchInPosition/@protectingSide
type rail3:tProtectingSideList
properties
use optional
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
indication whether the required position is for protection of the area from inside or outside
source <xs:attribute name="protectingSide" type="rail3:tProtectingSideList" use="optional">
 
<xs:annotation>
   
<xs:documentation>indication whether the required position is for protection of the area from inside or outside</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SwitchInPosition/givenPosition
diagram railml3_p343.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndGivenPosition
properties
content complex
children rail3:designator rail3:relatedSwitchAndPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
mustOrShould  rail3:tMustOrShould  optional      
documentation
level of enforcement
proving  rail3:tProving  optional      
documentation
The way the state is proven.
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
annotation
documentation
the tuple of references to the switch and its position plus the level of enforcement
source <xs:element name="givenPosition" type="rail3:SwitchAndGivenPosition" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>the tuple of references to the switch and its position plus the level of enforcement</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchPositionRestriction
diagram railml3_p344.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:relatedSwitchInPosition rail3:relatedDerailerInPosition
used by
element SwitchIL/hasPositionRestriction
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
restrictedPosition  rail3:tSwitchPosition  required      
documentation
This is the position which is needed when the other element has the named state/position.
annotation
documentation
For some relations between movable elements restrictions apply concerning the combination of both elements positions.
source <xs:complexType name="SwitchPositionRestriction">
 
<xs:annotation>
   
<xs:documentation>For some relations between movable elements restrictions apply concerning the combination of both elements positions.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="relatedSwitchInPosition" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference and the state/position of the other switch of the relation.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="relatedDerailerInPosition" type="rail3:DerailerAndPosition" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>This is the reference and the state/position of the derailer of the relation.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="restrictedPosition" type="rail3:tSwitchPosition" use="required">
       
<xs:annotation>
         
<xs:documentation>This is the position which is needed when the other element has the named state/position.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SwitchPositionRestriction/@restrictedPosition
type rail3:tSwitchPosition
properties
use required
facets
Kind Value Annotation
enumeration right
enumeration left
annotation
documentation
This is the position which is needed when the other element has the named state/position.
source <xs:attribute name="restrictedPosition" type="rail3:tSwitchPosition" use="required">
 
<xs:annotation>
   
<xs:documentation>This is the position which is needed when the other element has the named state/position.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SwitchPositionRestriction/relatedSwitchInPosition
diagram railml3_p345.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchAndPosition
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:refersToSwitch
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
annotation
documentation
This is the reference and the state/position of the other switch of the relation.
source <xs:element name="relatedSwitchInPosition" type="rail3:SwitchAndPosition" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference and the state/position of the other switch of the relation.</xs:documentation>
 
</xs:annotation>
</xs:element>

element SwitchPositionRestriction/relatedDerailerInPosition
diagram railml3_p346.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerAndPosition
properties
minOcc 0
maxOcc 1
content complex
children rail3:designator rail3:refersToDerailer
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tDerailingPosition  required      
documentation
The position the derailer is in.
annotation
documentation
This is the reference and the state/position of the derailer of the relation.
source <xs:element name="relatedDerailerInPosition" type="rail3:DerailerAndPosition" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>This is the reference and the state/position of the derailer of the relation.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType SwitchRelatedDelay
diagram railml3_p347.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:SwitchAndPosition
properties
base rail3:SwitchAndPosition
children rail3:designator rail3:refersToSwitch
used by
element ActivationCondition/delayBySwitchPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isNegated  xs:boolean  optional      
documentation
The exclusion of a particular state, i.e. everything else that this one.
inPosition  rail3:tSwitchPosition  required      
documentation
The position the switch is in.
delay  xs:duration  required      
documentation
The delay for activation to be considered when the switch is in the specified position.
annotation
documentation
The position of a switch can influence the activation delay.
source <xs:complexType name="SwitchRelatedDelay">
 
<xs:annotation>
   
<xs:documentation>The position of a switch can influence the activation delay.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:SwitchAndPosition">
     
<xs:sequence/>
     
<xs:attribute name="delay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>The delay for activation to be considered when the switch is in the specified position.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SwitchRelatedDelay/@delay
type xs:duration
properties
use required
annotation
documentation
The delay for activation to be considered when the switch is in the specified position.
source <xs:attribute name="delay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>The delay for activation to be considered when the switch is in the specified position.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType SystemAssetConnectedToIL
diagram railml3_p348.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:connectedSystemAsset
used by
elements ControlledAssets/controlledSystemAsset SignalBox/controlsSystemAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The level of control of the asset by the interlocking.
annotation
documentation
List of System Assets that are connected to a specific IL. These system assets are at least known to the interlocking.
source <xs:complexType name="SystemAssetConnectedToIL">
 
<xs:annotation>
   
<xs:documentation>List of System Assets that are connected to a specific IL. These system assets are at least known to the interlocking.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="connectedSystemAsset" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the connected system asset.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
       
<xs:annotation>
         
<xs:documentation>The level of control of the asset by the interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute SystemAssetConnectedToIL/@extentOfControl
type rail3:tExtentOfControl
properties
use optional
facets
Kind Value Annotation
enumeration steeringOnly
enumeration none
enumeration notificationOnly
enumeration fullControl
annotation
documentation
The level of control of the asset by the interlocking.
source <xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
 
<xs:annotation>
   
<xs:documentation>The level of control of the asset by the interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element SystemAssetConnectedToIL/connectedSystemAsset
diagram railml3_p349.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the connected system asset.
source <xs:element name="connectedSystemAsset" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the connected system asset.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType tElementWithIDandDesignator
diagram railml3_p350.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:tElementWithID
properties
base rail3:tElementWithID
children rail3:designator
used by
complexType EntityIL
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
source <xs:complexType name="tElementWithIDandDesignator">
 
<xs:complexContent>
   
<xs:extension base="rail3:tElementWithID">
     
<xs:sequence>
       
<xs:element name="designator" type="rail3:Designator" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The designator of the element, which is often a coded identification, e.g. 69W03 for a switch no. 03 in station 69. In case of "private" register use leading underscore.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element tElementWithIDandDesignator/designator
diagram railml3_p351.png
namespace https://www.railml.org/schemas/3.1
type rail3:Designator
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
register  xs:string  required      
documentation
name of a register where the designator entry can be found
entry  xs:string  required      
documentation
the designator of the element in the specified register
annotation
documentation
The designator of the element, which is often a coded identification, e.g. 69W03 for a switch no. 03 in station 69. In case of "private" register use leading underscore.
source <xs:element name="designator" type="rail3:Designator" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The designator of the element, which is often a coded identification, e.g. 69W03 for a switch no. 03 in station 69. In case of "private" register use leading underscore.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType TrackAsset
diagram railml3_p352.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator
used by
complexTypes ATPdevice LevelCrossingIL LogicalDevice MovableElement PermissionZone RestrictedArea Route SignalIL TvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A track element (e.g. signal, switch, TVD section), as defined in the IL namespace that is controlled or read by interlocking systems.
source <xs:complexType name="TrackAsset">
 
<xs:annotation>
   
<xs:documentation>A track element (e.g. signal, switch, TVD section), as defined in the IL namespace that is controlled or read by interlocking systems.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence/>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

complexType TrackAssetConnectedToIL
diagram railml3_p353.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:EntityIL
properties
base rail3:EntityIL
children rail3:designator rail3:connectedTrackAsset
used by
element SignalBox/controlsTrackAsset
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
extentOfControl  rail3:tExtentOfControl  optional      
documentation
The level of control of the asset by the interlocking.
annotation
documentation
List of Track Assets that are connected to a specific IL. This list would typically be kept in one or more separate files. This approach allows the IM to split the assets under control of a specific interlocking into different areas. Each area would be allocated a list of Track Assets Connected to the IL. This supports for instance a scenario in which an interlocking is split into several smaller ones during a resignalling project.
source <xs:complexType name="TrackAssetConnectedToIL">
 
<xs:annotation>
   
<xs:documentation>List of Track Assets that are connected to a specific IL. This list would typically be kept in one or more separate files. This approach allows the IM to split the assets under control of a specific interlocking into different areas. Each area would be allocated a list of Track Assets Connected to the IL. This supports for instance a scenario in which an interlocking is split into several smaller ones during a resignalling project.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:EntityIL">
     
<xs:sequence>
       
<xs:element name="connectedTrackAsset" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>The reference to the connected track asset.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
       
<xs:annotation>
         
<xs:documentation>The level of control of the asset by the interlocking.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute TrackAssetConnectedToIL/@extentOfControl
type rail3:tExtentOfControl
properties
use optional
facets
Kind Value Annotation
enumeration steeringOnly
enumeration none
enumeration notificationOnly
enumeration fullControl
annotation
documentation
The level of control of the asset by the interlocking.
source <xs:attribute name="extentOfControl" type="rail3:tExtentOfControl" use="optional">
 
<xs:annotation>
   
<xs:documentation>The level of control of the asset by the interlocking.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element TrackAssetConnectedToIL/connectedTrackAsset
diagram railml3_p354.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
The reference to the connected track asset.
source <xs:element name="connectedTrackAsset" type="rail3:EntityILref" minOccurs="1" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>The reference to the connected track asset.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType TvdSection
diagram railml3_p355.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackAsset
properties
base rail3:TrackAsset
children rail3:designator rail3:hasDemarcatingBufferstop rail3:hasExitSignal rail3:hasDemarcatingTraindetector rail3:hasResetStrategy
used by
element TvdSections/tvdSection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isBerthingTrack  xs:boolean  optional      
documentation
True if this section is part of a berthing track, i.e. track where trains may halt and change direction. Typically, an Interlocking assures that trains progress from section to section in an ordered sequence (aka. two/three phase release). This check would fail when a train changes direction. If this attribute is true, the interlocking doesn't carry out this check for this section.
residualRouteCancellationDelay  xs:duration  required      
documentation
The delay after which the interlocking may clear a partial route left by an unusual train run. The timer starts running when the interlocking accepts the signal man request to clear the section (DE: Restfahrstrasse auflösen) or when the interlocking algorithm detects that the train has set back (automatic route release).
partialRouteReleaseDelay  xs:duration  required      
documentation
Delay time after which the section may be released for use in a new route
technology  rail3:tTvdSectionTechnologyTypeExt  optional      
documentation
the technical type of the TVD section
frequency  rail3:tFrequencyHertz  optional      
documentation
The frequency in Hertz in case of a track circuit. Shall be zero for direct current.
annotation
documentation
A track vacancy detection (TVD) section reports train occupancy to the interlocking. This is a logical unit characterised by the delimiters of the section. Typically, a section is delimited by two insulated track joints or axle counters at the extremities. Sections with a switch or a crossing can have several such limits.
source <xs:complexType name="TvdSection">
 
<xs:annotation>
   
<xs:documentation>A track vacancy detection (TVD) section reports train occupancy to the interlocking. This is a logical unit characterised by the delimiters of the section. Typically, a section is delimited by two insulated track joints or axle counters at the extremities. Sections with a switch or a crossing can have several such limits.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackAsset">
     
<xs:sequence>
       
<xs:element name="hasDemarcatingBufferstop" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
         
<xs:annotation>
           
<xs:documentation>Reference to physical track ends, e.g. buffer stop.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasExitSignal" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
         
<xs:annotation>
           
<xs:documentation>Reference to delimiting signals for leaving the TVD section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasDemarcatingTraindetector" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>Reference to the physical train detection points, e.g. axle counter point, insulated rail joint.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="hasResetStrategy" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>Reference to the IM specific reset strategy for this TVD section.</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="isBerthingTrack" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>True if this section is part of a berthing track, i.e. track where trains may halt and change direction. Typically, an Interlocking assures that trains progress from section to section in an ordered sequence (aka. two/three phase release). This check would fail when a train changes direction. If this attribute is true, the interlocking doesn't carry out this check for this section.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="residualRouteCancellationDelay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>The delay after which the interlocking may clear a partial route left by an unusual train run. The timer starts running when the interlocking accepts the signal man request to clear the section (DE: Restfahrstrasse auflösen) or when the interlocking algorithm detects that the train has set back (automatic route release).</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="partialRouteReleaseDelay" type="xs:duration" use="required">
       
<xs:annotation>
         
<xs:documentation>Delay time after which the section may be released for use in a new route</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="technology" type="rail3:tTvdSectionTechnologyTypeExt" use="optional">
       
<xs:annotation>
         
<xs:documentation>the technical type of the TVD section</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="frequency" type="rail3:tFrequencyHertz" use="optional">
       
<xs:annotation>
         
<xs:documentation>The frequency in Hertz in case of a track circuit. Shall be zero for direct current.</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute TvdSection/@isBerthingTrack
type xs:boolean
properties
use optional
annotation
documentation
True if this section is part of a berthing track, i.e. track where trains may halt and change direction. Typically, an Interlocking assures that trains progress from section to section in an ordered sequence (aka. two/three phase release). This check would fail when a train changes direction. If this attribute is true, the interlocking doesn't carry out this check for this section.
source <xs:attribute name="isBerthingTrack" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>True if this section is part of a berthing track, i.e. track where trains may halt and change direction. Typically, an Interlocking assures that trains progress from section to section in an ordered sequence (aka. two/three phase release). This check would fail when a train changes direction. If this attribute is true, the interlocking doesn't carry out this check for this section.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute TvdSection/@residualRouteCancellationDelay
type xs:duration
properties
use required
annotation
documentation
The delay after which the interlocking may clear a partial route left by an unusual train run. The timer starts running when the interlocking accepts the signal man request to clear the section (DE: Restfahrstrasse auflösen) or when the interlocking algorithm detects that the train has set back (automatic route release).
source <xs:attribute name="residualRouteCancellationDelay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>The delay after which the interlocking may clear a partial route left by an unusual train run. The timer starts running when the interlocking accepts the signal man request to clear the section (DE: Restfahrstrasse auflösen) or when the interlocking algorithm detects that the train has set back (automatic route release).</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute TvdSection/@partialRouteReleaseDelay
type xs:duration
properties
use required
annotation
documentation
Delay time after which the section may be released for use in a new route
source <xs:attribute name="partialRouteReleaseDelay" type="xs:duration" use="required">
 
<xs:annotation>
   
<xs:documentation>Delay time after which the section may be released for use in a new route</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute TvdSection/@technology
type rail3:tTvdSectionTechnologyTypeExt
properties
use optional
annotation
documentation
the technical type of the TVD section
source <xs:attribute name="technology" type="rail3:tTvdSectionTechnologyTypeExt" use="optional">
 
<xs:annotation>
   
<xs:documentation>the technical type of the TVD section</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute TvdSection/@frequency
type rail3:tFrequencyHertz
properties
use optional
facets
Kind Value Annotation
minInclusive 0
fractionDigits 3
annotation
documentation
The frequency in Hertz in case of a track circuit. Shall be zero for direct current.
source <xs:attribute name="frequency" type="rail3:tFrequencyHertz" use="optional">
 
<xs:annotation>
   
<xs:documentation>The frequency in Hertz in case of a track circuit. Shall be zero for direct current.</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element TvdSection/hasDemarcatingBufferstop
diagram railml3_p356.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 2
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to physical track ends, e.g. buffer stop.
source <xs:element name="hasDemarcatingBufferstop" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
 
<xs:annotation>
   
<xs:documentation>Reference to physical track ends, e.g. buffer stop.</xs:documentation>
 
</xs:annotation>
</xs:element>

element TvdSection/hasExitSignal
diagram railml3_p357.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 2
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to delimiting signals for leaving the TVD section.
source <xs:element name="hasExitSignal" type="rail3:EntityILref" minOccurs="0" maxOccurs="2">
 
<xs:annotation>
   
<xs:documentation>Reference to delimiting signals for leaving the TVD section.</xs:documentation>
 
</xs:annotation>
</xs:element>

element TvdSection/hasDemarcatingTraindetector
diagram railml3_p358.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the physical train detection points, e.g. axle counter point, insulated rail joint.
source <xs:element name="hasDemarcatingTraindetector" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>Reference to the physical train detection points, e.g. axle counter point, insulated rail joint.</xs:documentation>
 
</xs:annotation>
</xs:element>

element TvdSection/hasResetStrategy
diagram railml3_p359.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc 1
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
Reference to the IM specific reset strategy for this TVD section.
source <xs:element name="hasResetStrategy" type="rail3:EntityILref" minOccurs="0" maxOccurs="1">
 
<xs:annotation>
   
<xs:documentation>Reference to the IM specific reset strategy for this TVD section.</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType TvdSections
diagram railml3_p360.png
namespace https://www.railml.org/schemas/3.1
children rail3:tvdSection
used by
element AssetsForIL/tvdSections
annotation
documentation
container element for all TvdSection elements
source <xs:complexType name="TvdSections">
 
<xs:annotation>
   
<xs:documentation>container element for all TvdSection elements</xs:documentation>
 
</xs:annotation>
 
<xs:sequence minOccurs="0" maxOccurs="1">
   
<xs:element name="tvdSection" type="rail3:TvdSection" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>track vacancy detection (TVD) section reports train occupancy to the interlocking</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element TvdSections/tvdSection
diagram railml3_p361.png
namespace https://www.railml.org/schemas/3.1
type rail3:TvdSection
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:hasDemarcatingBufferstop rail3:hasExitSignal rail3:hasDemarcatingTraindetector rail3:hasResetStrategy
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
isBerthingTrack  xs:boolean  optional      
documentation
True if this section is part of a berthing track, i.e. track where trains may halt and change direction. Typically, an Interlocking assures that trains progress from section to section in an ordered sequence (aka. two/three phase release). This check would fail when a train changes direction. If this attribute is true, the interlocking doesn't carry out this check for this section.
residualRouteCancellationDelay  xs:duration  required      
documentation
The delay after which the interlocking may clear a partial route left by an unusual train run. The timer starts running when the interlocking accepts the signal man request to clear the section (DE: Restfahrstrasse auflösen) or when the interlocking algorithm detects that the train has set back (automatic route release).
partialRouteReleaseDelay  xs:duration  required      
documentation
Delay time after which the section may be released for use in a new route
technology  rail3:tTvdSectionTechnologyTypeExt  optional      
documentation
the technical type of the TVD section
frequency  rail3:tFrequencyHertz  optional      
documentation
The frequency in Hertz in case of a track circuit. Shall be zero for direct current.
annotation
documentation
track vacancy detection (TVD) section reports train occupancy to the interlocking
source <xs:element name="tvdSection" type="rail3:TvdSection" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>track vacancy detection (TVD) section reports train occupancy to the interlocking</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType WorkZone
diagram railml3_p362.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:RestrictedArea
properties
base rail3:RestrictedArea
children rail3:designator rail3:isLimitedBy rail3:activationLock rail3:switchInPosition rail3:derailerInPosition rail3:crossingInPosition rail3:detectorInState rail3:signalWithAspect rail3:keyLockInState rail3:levelCrossingInState rail3:releasedForLocalOperation
used by
element WorkZones/workZone
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A set of track assets that track workers or the signalman can set apart from the main line. When taken, it is impossible to call regular routes into this work zone.
source <xs:complexType name="WorkZone">
 
<xs:annotation>
   
<xs:documentation>A set of track assets that track workers or the signalman can set apart from the main line. When taken, it is impossible to call regular routes into this work zone.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:RestrictedArea">
     
<xs:sequence>
       
<xs:element name="activationLock" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any locking device used for activation of the work zone</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="switchInPosition" type="rail3:SwitchInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any switch and its position inside or outside the work zone required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="derailerInPosition" type="rail3:DerailerInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any derailer and its position inside or outside the work zone required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="crossingInPosition" type="rail3:CrossingInPosition" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any movable crossing and its position inside or outside the work zone required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="detectorInState" type="rail3:DetectorInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any detector and its state inside or outside the work zone required for use</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="signalWithAspect" type="rail3:SignalWithAspect" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any signal and its aspect inside or outside the work zone required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="keyLockInState" type="rail3:KeyLockInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any key log and its state inside or outside the work zone required for use and/or protection</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="levelCrossingInState" type="rail3:LevelCrossingInState" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any level crossing and its state inside the work zone required for use</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:element name="releasedForLocalOperation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to any element, which is released for local operation, when the work zone is active</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element WorkZone/activationLock
diagram railml3_p363.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any locking device used for activation of the work zone
source <xs:element name="activationLock" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any locking device used for activation of the work zone</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/switchInPosition
diagram railml3_p364.png
namespace https://www.railml.org/schemas/3.1
type rail3:SwitchInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any switch and its position inside or outside the work zone required for use and/or protection
source <xs:element name="switchInPosition" type="rail3:SwitchInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any switch and its position inside or outside the work zone required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/derailerInPosition
diagram railml3_p365.png
namespace https://www.railml.org/schemas/3.1
type rail3:DerailerInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any derailer and its position inside or outside the work zone required for use and/or protection
source <xs:element name="derailerInPosition" type="rail3:DerailerInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any derailer and its position inside or outside the work zone required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/crossingInPosition
diagram railml3_p366.png
namespace https://www.railml.org/schemas/3.1
type rail3:CrossingInPosition
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenPosition
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required position is for protection of the area from inside or outside
annotation
documentation
reference to any movable crossing and its position inside or outside the work zone required for use and/or protection
source <xs:element name="crossingInPosition" type="rail3:CrossingInPosition" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any movable crossing and its position inside or outside the work zone required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/detectorInState
diagram railml3_p367.png
namespace https://www.railml.org/schemas/3.1
type rail3:DetectorInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any detector and its state inside or outside the work zone required for use
source <xs:element name="detectorInState" type="rail3:DetectorInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any detector and its state inside or outside the work zone required for use</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/signalWithAspect
diagram railml3_p368.png
namespace https://www.railml.org/schemas/3.1
type rail3:SignalWithAspect
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenAspect
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required aspect is for protection of the area from inside or outside
annotation
documentation
reference to any signal and its aspect inside or outside the work zone required for use and/or protection
source <xs:element name="signalWithAspect" type="rail3:SignalWithAspect" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any signal and its aspect inside or outside the work zone required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/keyLockInState
diagram railml3_p369.png
namespace https://www.railml.org/schemas/3.1
type rail3:KeyLockInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
protectingSide  rail3:tProtectingSideList  optional      
documentation
indication whether the required state is for protection of the area from inside or outside
annotation
documentation
reference to any key log and its state inside or outside the work zone required for use and/or protection
source <xs:element name="keyLockInState" type="rail3:KeyLockInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any key log and its state inside or outside the work zone required for use and/or protection</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/levelCrossingInState
diagram railml3_p370.png
namespace https://www.railml.org/schemas/3.1
type rail3:LevelCrossingInState
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:designator rail3:givenState
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
reference to any level crossing and its state inside the work zone required for use
source <xs:element name="levelCrossingInState" type="rail3:LevelCrossingInState" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any level crossing and its state inside the work zone required for use</xs:documentation>
 
</xs:annotation>
</xs:element>

element WorkZone/releasedForLocalOperation
diagram railml3_p371.png
namespace https://www.railml.org/schemas/3.1
type rail3:EntityILref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to any element, which is released for local operation, when the work zone is active
source <xs:element name="releasedForLocalOperation" type="rail3:EntityILref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to any element, which is released for local operation, when the work zone is active</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType WorkZones
diagram railml3_p372.png
namespace https://www.railml.org/schemas/3.1
children rail3:workZone
used by
element AssetsForIL/workZones
source <xs:complexType name="WorkZones">
 
<xs:sequence>
   
<xs:element name="workZone" type="rail3:WorkZone" minOccurs="1" maxOccurs="unbounded">
     
<xs:annotation>
       
<xs:documentation>A set of track assets that track workers or the signalman can set apart from the main line.</xs:documentation>
     
</xs:annotation>
   
</xs:element>
 
</xs:sequence>
</xs:complexType>

element WorkZones/workZone
diagram railml3_p373.png
namespace https://www.railml.org/schemas/3.1
type rail3:WorkZone
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:designator rail3:isLimitedBy rail3:activationLock rail3:switchInPosition rail3:derailerInPosition rail3:crossingInPosition rail3:detectorInState rail3:signalWithAspect rail3:keyLockInState rail3:levelCrossingInState rail3:releasedForLocalOperation
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
annotation
documentation
A set of track assets that track workers or the signalman can set apart from the main line.
source <xs:element name="workZone" type="rail3:WorkZone" minOccurs="1" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>A set of track assets that track workers or the signalman can set apart from the main line.</xs:documentation>
 
</xs:annotation>
</xs:element>

simpleType tAndOr
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute ActivationCondition/@andOr
facets
Kind Value Annotation
enumeration XOR
enumeration OR
enumeration AND
annotation
documentation
List of boolean operators for use in constructing boolean conditions.
Used for concatenating boolean conditions by means of AND/OR.
source <xs:simpleType name="tAndOr">
 
<xs:annotation>
   
<xs:documentation>List of boolean operators for use in constructing boolean conditions.
Used for concatenating boolean conditions by means of AND/OR.
</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="XOR"/>
   
<xs:enumeration value="OR"/>
   
<xs:enumeration value="AND"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tBitPatternAny
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes InitStatus/@comString InitStatus/@messString
facets
Kind Value Annotation
minLength 1
pattern [0-1x]*
annotation
documentation
string made of "0", "1" or "x" to describe a bit pattern
source <xs:simpleType name="tBitPatternAny">
 
<xs:annotation>
   
<xs:documentation>string made of "0", "1" or "x" to describe a bit pattern</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:minLength value="1"/>
   
<xs:pattern value="[0-1x]*"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tContactState
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute InputOutput/@normalState
facets
Kind Value Annotation
enumeration closed
enumeration open
annotation
documentation
possible states of a contact, bit or command
source <xs:simpleType name="tContactState">
 
<xs:annotation>
   
<xs:documentation>possible states of a contact, bit or command</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="closed"/>
   
<xs:enumeration value="open"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tCrossingPosition
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes CrossingAndPosition/@inPosition MovableCrossing/@preferredPosition
facets
Kind Value Annotation
enumeration upleft-rightdown
enumeration downleft-rightup
annotation
documentation
typical positions of crossings
source <xs:simpleType name="tCrossingPosition">
 
<xs:annotation>
   
<xs:documentation>typical positions of crossings</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="upleft-rightdown"/>
   
<xs:enumeration value="downleft-rightup"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tDerailingPosition
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes DerailerAndPosition/@inPosition DerailerIL/@preferredPosition
facets
Kind Value Annotation
enumeration passablePosition
enumeration derailingPosition
annotation
documentation
typical positions of a derailing device
source <xs:simpleType name="tDerailingPosition">
 
<xs:annotation>
   
<xs:documentation>typical positions of a derailing device</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="passablePosition"/>
   
<xs:enumeration value="derailingPosition"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tDetectorStates
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute DetectorAndState/@inState
facets
Kind Value Annotation
enumeration inactive
enumeration deactivated
enumeration activated
annotation
documentation
The list of possible detector states.
source <xs:simpleType name="tDetectorStates">
 
<xs:annotation>
   
<xs:documentation>The list of possible detector states.</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="inactive"/>
   
<xs:enumeration value="deactivated"/>
   
<xs:enumeration value="activated"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tDetectorTypeList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tDetectorTypeListExt
facets
Kind Value Annotation
enumeration weighing
enumeration loadingGauge
enumeration landSlide
enumeration intrusion
enumeration hotWheelBox
enumeration gas
enumeration flatWheel
enumeration fire
enumeration doors
enumeration derailment
enumeration cranks
enumeration avalanche
annotation
documentation
The list of possible detector types.
source <xs:simpleType name="tDetectorTypeList">
 
<xs:annotation>
   
<xs:documentation>The list of possible detector types.</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="weighing"/>
   
<xs:enumeration value="loadingGauge"/>
   
<xs:enumeration value="landSlide"/>
   
<xs:enumeration value="intrusion"/>
   
<xs:enumeration value="hotWheelBox"/>
   
<xs:enumeration value="gas"/>
   
<xs:enumeration value="flatWheel"/>
   
<xs:enumeration value="fire"/>
   
<xs:enumeration value="doors"/>
   
<xs:enumeration value="derailment"/>
   
<xs:enumeration value="cranks"/>
   
<xs:enumeration value="avalanche"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tDetectorTypeListExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tDetectorTypeList, rail3:tOtherEnumerationValue)
used by
attribute DetectorTypes/@detectorType
annotation
documentation
The possible list of detector base types with extension point.
source <xs:simpleType name="tDetectorTypeListExt">
 
<xs:annotation>
   
<xs:documentation>The possible list of detector base types with extension point.</xs:documentation>
 
</xs:annotation>
 
<xs:union memberTypes="rail3:tDetectorTypeList rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tExtentOfControl
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes TrackAssetConnectedToIL/@extentOfControl SystemAssetConnectedToIL/@extentOfControl ControlledSignalBox/@extentOfControl
facets
Kind Value Annotation
enumeration steeringOnly
enumeration none
enumeration notificationOnly
enumeration fullControl
annotation
documentation
The Extent of Control is one of full control, steering only, notification only or none.
Full control implies that the IL controls the element AND reads the element feedback to check the execution of the control.
Notification only means that the IL only reads the status of the object in terms of switch position left, controlled or boolean 1 or derailer engaged.
Steering only means that the IL emits the control signal without checking for feedback.
Note that LoC=none suggests that the IL has no relation at all with the track asset, indicating a modelling error that merits further investigation and/or explanation.
source <xs:simpleType name="tExtentOfControl">
 
<xs:annotation>
   
<xs:documentation>The Extent of Control is one of full control, steering only, notification only or none.
Full control implies that the IL controls the element AND reads the element feedback to check the execution of the control.
Notification only means that the IL only reads the status of the object in terms of switch position left, controlled or boolean 1 or derailer engaged.
Steering only means that the IL emits the control signal without checking for feedback.
Note that LoC=none suggests that the IL has no relation at all with the track asset, indicating a modelling error that merits further investigation and/or explanation.
</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="steeringOnly"/>
   
<xs:enumeration value="none"/>
   
<xs:enumeration value="notificationOnly"/>
   
<xs:enumeration value="fullControl"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tGenericAspectList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute GenericAspect/@genericAspect
facets
Kind Value Annotation
enumeration warning
enumeration supplementary
enumeration restriction
enumeration proceed
enumeration limitedProceed
enumeration informative
enumeration combinedProceed
enumeration closed
enumeration caution
enumeration callOn
annotation
documentation
list of possible generic signal aspects (generic meaning)
source <xs:simpleType name="tGenericAspectList">
 
<xs:annotation>
   
<xs:documentation>list of possible generic signal aspects (generic meaning)</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="warning"/>
   
<xs:enumeration value="supplementary"/>
   
<xs:enumeration value="restriction"/>
   
<xs:enumeration value="proceed"/>
   
<xs:enumeration value="limitedProceed"/>
   
<xs:enumeration value="informative"/>
   
<xs:enumeration value="combinedProceed"/>
   
<xs:enumeration value="closed"/>
   
<xs:enumeration value="caution"/>
   
<xs:enumeration value="callOn"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tGenericResetStrategyList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute GenericResetStrategy/@resetStrategy
facets
Kind Value Annotation
enumeration unconditionalReset
enumeration sweepRunWithoutConfirmation
enumeration sweepRunWithConfirmation
enumeration procedure
enumeration conditionalReset
annotation
documentation
list of generic strategies for resetting a TVD section
source <xs:simpleType name="tGenericResetStrategyList">
 
<xs:annotation>
   
<xs:documentation>list of generic strategies for resetting a TVD section</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="unconditionalReset"/>
   
<xs:enumeration value="sweepRunWithoutConfirmation"/>
   
<xs:enumeration value="sweepRunWithConfirmation"/>
   
<xs:enumeration value="procedure"/>
   
<xs:enumeration value="conditionalReset"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tGenericRouteTypeExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tGenericRouteTypeList, rail3:tOtherEnumerationValue)
used by
attribute GenericRouteType/@genericRouteType
annotation
documentation
The list of possible route types with extension point.
source <xs:simpleType name="tGenericRouteTypeExt">
 
<xs:annotation>
   
<xs:documentation>The list of possible route types with extension point.</xs:documentation>
 
</xs:annotation>
 
<xs:union memberTypes="rail3:tGenericRouteTypeList rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tGenericRouteTypeList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tGenericRouteTypeExt
facets
Kind Value Annotation
enumeration tunnel
enumeration siding
enumeration shunting
enumeration occupied
enumeration normal
enumeration nonElectrified
enumeration callOn
annotation
documentation
list of possible generic route types
source <xs:simpleType name="tGenericRouteTypeList">
 
<xs:annotation>
   
<xs:documentation>list of possible generic route types</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="tunnel"/>
   
<xs:enumeration value="siding"/>
   
<xs:enumeration value="shunting"/>
   
<xs:enumeration value="occupied"/>
   
<xs:enumeration value="normal"/>
   
<xs:enumeration value="nonElectrified"/>
   
<xs:enumeration value="callOn"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tGroupingTypes
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tGroupingTypesExt
facets
Kind Value Annotation
enumeration catenary
enumeration elementBlocking
enumeration automaticRouteSetting
enumeration automaticTrainRouting
enumeration callOn
enumeration emergencyStop
enumeration pointStaggering
enumeration pointHeating
annotation
documentation
list of possible generic element groups
source <xs:simpleType name="tGroupingTypes">
 
<xs:annotation>
   
<xs:documentation>list of possible generic element groups</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="catenary"/>
   
<xs:enumeration value="elementBlocking"/>
   
<xs:enumeration value="automaticRouteSetting"/>
   
<xs:enumeration value="automaticTrainRouting"/>
   
<xs:enumeration value="callOn"/>
   
<xs:enumeration value="emergencyStop"/>
   
<xs:enumeration value="pointStaggering"/>
   
<xs:enumeration value="pointHeating"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tGroupingTypesExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tGroupingTypes, rail3:tOtherEnumerationValue)
used by
attribute ElementGroupingTypes/@elementGroupType
annotation
documentation
The list of possible element group types with extension point.
source <xs:simpleType name="tGroupingTypesExt">
 
<xs:annotation>
   
<xs:documentation>The list of possible element group types with extension point.</xs:documentation>
 
</xs:annotation>
 
<xs:union memberTypes="rail3:tGroupingTypes rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tIxlInterfaceLocationTypeList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute InterlockingInterface/@interfaceLocation
facets
Kind Value Annotation
enumeration atStationBorder
enumeration onOpenLine
enumeration inStation
source <xs:simpleType name="tIxlInterfaceLocationTypeList">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="atStationBorder"/>
   
<xs:enumeration value="onOpenLine"/>
   
<xs:enumeration value="inStation"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tIxlTechnologyTypeList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tIxlTechnologyTypeListExt
facets
Kind Value Annotation
enumeration digital
enumeration electronic
enumeration relay
enumeration electromechanical
enumeration mechanical
enumeration manual
source <xs:simpleType name="tIxlTechnologyTypeList">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="digital"/>
   
<xs:enumeration value="electronic"/>
   
<xs:enumeration value="relay"/>
   
<xs:enumeration value="electromechanical"/>
   
<xs:enumeration value="mechanical"/>
   
<xs:enumeration value="manual"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tIxlTechnologyTypeListExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tIxlTechnologyTypeList, rail3:tOtherEnumerationValue)
used by
attribute Configuration/@technologyType
annotation
documentation
The list of possible interlocking technologies with extension point.
source <xs:simpleType name="tIxlTechnologyTypeListExt">
 
<xs:annotation>
   
<xs:documentation>The list of possible interlocking technologies with extension point.</xs:documentation>
 
</xs:annotation>
 
<xs:union memberTypes="rail3:tIxlTechnologyTypeList rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tLevelCrossingControlTypes
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute LevelCrossingTypeList/@controlType
facets
Kind Value Annotation
enumeration autonomous
enumeration fullControlled
enumeration halfControlled
annotation
documentation
list of possible types for controlling a level crossing w.r.t. interlocking operation
source <xs:simpleType name="tLevelCrossingControlTypes">
 
<xs:annotation>
   
<xs:documentation>list of possible types for controlling a level crossing w.r.t. interlocking operation</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="autonomous"/>
   
<xs:enumeration value="fullControlled"/>
   
<xs:enumeration value="halfControlled"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tLevelCrossingState
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes LevelCrossingAndState/@inState LevelCrossingIL/@preferredPosition
facets
Kind Value Annotation
enumeration unknown
enumeration closing
enumeration opening
enumeration closed
enumeration open
annotation
documentation
typical states of level crossings
source <xs:simpleType name="tLevelCrossingState">
 
<xs:annotation>
   
<xs:documentation>typical states of level crossings</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="unknown"/>
   
<xs:enumeration value="closing"/>
   
<xs:enumeration value="opening"/>
   
<xs:enumeration value="closed"/>
   
<xs:enumeration value="open"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tLockState
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute LockAndState/@inState
facets
Kind Value Annotation
enumeration released
enumeration locked
annotation
documentation
typical states of locking instruments (Masterlock, KeyReleaseInstrument)
source <xs:simpleType name="tLockState">
 
<xs:annotation>
   
<xs:documentation>typical states of locking instruments (Masterlock, KeyReleaseInstrument)</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="released"/>
   
<xs:enumeration value="locked"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tMustOrShould
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute AssetAndGivenState/@mustOrShould
facets
Kind Value Annotation
enumeration none
enumeration should
enumeration must
annotation
documentation
Use this to distinguish hard or soft required states. E.g a called-for switch should be in the given position whilst a flank protection switch must be in the given position.
The interlocking normally controls an element into a required position. The enforce-policy expresses what the interlocking must do with the element.
enforce=must means that the condition is fulfilled only when the element acquires the given status, enforce=should means that this given status is the preferred status but no conditio sine qua non, finally enforce=none means that the interlocking is not given a desired status; in other words the IL can ignore the given status.
source <xs:simpleType name="tMustOrShould">
 
<xs:annotation>
   
<xs:documentation>Use this to distinguish hard or soft required states. E.g a called-for switch should be in the given position whilst a flank protection switch must be in the given position.
The interlocking normally controls an element into a required position. The enforce-policy expresses what the interlocking must do with the element.
enforce=must means that the condition is fulfilled only when the element acquires the given status, enforce=should means that this given status is the preferred status but no conditio sine qua non, finally enforce=none means that the interlocking is not given a desired status; in other words the IL can ignore the given status.
</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="none"/>
   
<xs:enumeration value="should"/>
   
<xs:enumeration value="must"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tOverlapReleaseCondition
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute OverlapReleaseTimer/@overlapReleaseCondition
facets
Kind Value Annotation
enumeration trainInitiatedTrigger
enumeration startTimerAfterVacating
enumeration startTimerUponOccupation
source <xs:simpleType name="tOverlapReleaseCondition">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="trainInitiatedTrigger"/>
   
<xs:enumeration value="startTimerAfterVacating"/>
   
<xs:enumeration value="startTimerUponOccupation"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tProtectingSideList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes SwitchInPosition/@protectingSide DerailerInPosition/@protectingSide CrossingInPosition/@protectingSide SignalWithAspect/@protectingSide KeyLockInState/@protectingSide
facets
Kind Value Annotation
enumeration none
enumeration outside
enumeration inside
annotation
documentation
list of protection positions related to the area
source <xs:simpleType name="tProtectingSideList">
 
<xs:annotation>
   
<xs:documentation>list of protection positions related to the area</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="none"/>
   
<xs:enumeration value="outside"/>
   
<xs:enumeration value="inside"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tProving
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute AssetAndGivenState/@proving
facets
Kind Value Annotation
enumeration staffAcknowledged
enumeration continuously
enumeration oneOff
annotation
documentation
The list of proving ways.
source <xs:simpleType name="tProving">
 
<xs:annotation>
   
<xs:documentation>The list of proving ways.</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="staffAcknowledged"/>
   
<xs:enumeration value="continuously"/>
   
<xs:enumeration value="oneOff"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tRouteConflictTypes
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tRouteConflictTypesExt
facets
Kind Value Annotation
enumeration overlappingTVDsection
enumeration conflictingSwitchPosition
enumeration conflictingStatus
enumeration conflictingOverlap
enumeration conflictingHeadProtection
source <xs:simpleType name="tRouteConflictTypes">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="overlappingTVDsection"/>
   
<xs:enumeration value="conflictingSwitchPosition"/>
   
<xs:enumeration value="conflictingStatus"/>
   
<xs:enumeration value="conflictingOverlap"/>
   
<xs:enumeration value="conflictingHeadProtection"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tRouteConflictTypesExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tRouteConflictTypes, rail3:tOtherEnumerationValue)
used by
attribute ConflictReason/@origin
source <xs:simpleType name="tRouteConflictTypesExt">
 
<xs:union memberTypes="rail3:tRouteConflictTypes rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tSectionVacancy
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute SectionAndVacancy/@inState
facets
Kind Value Annotation
enumeration unknown
enumeration vacant
enumeration occupied
annotation
documentation
typical states of TVD sections
source <xs:simpleType name="tSectionVacancy">
 
<xs:annotation>
   
<xs:documentation>typical states of TVD sections</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="unknown"/>
   
<xs:enumeration value="vacant"/>
   
<xs:enumeration value="occupied"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tSignalFunctionList
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tSignalFunctionListExt
facets
Kind Value Annotation
enumeration main
enumeration repeater
enumeration distant
enumeration shunting
enumeration barrage
enumeration block
enumeration junction
enumeration exit
enumeration intermediateStop
enumeration intermediate
enumeration entry
annotation
documentation
List of possible signal functions
source <xs:simpleType name="tSignalFunctionList">
 
<xs:annotation>
   
<xs:documentation>List of possible signal functions</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="main"/>
   
<xs:enumeration value="repeater"/>
   
<xs:enumeration value="distant"/>
   
<xs:enumeration value="shunting"/>
   
<xs:enumeration value="barrage"/>
   
<xs:enumeration value="block"/>
   
<xs:enumeration value="junction"/>
   
<xs:enumeration value="exit"/>
   
<xs:enumeration value="intermediateStop"/>
   
<xs:enumeration value="intermediate"/>
   
<xs:enumeration value="entry"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tSignalFunctionListExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tSignalFunctionList, rail3:tOtherEnumerationValue)
used by
attribute SignalIL/@function
source <xs:simpleType name="tSignalFunctionListExt">
 
<xs:union memberTypes="rail3:tSignalFunctionList rail3:tOtherEnumerationValue"/>
</xs:simpleType>

simpleType tSignalVoltageModes
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attribute PowerSupplyIL/@signalVoltageMode
facets
Kind Value Annotation
enumeration none
enumeration nightOnly
enumeration manual
enumeration automatic
source <xs:simpleType name="tSignalVoltageModes">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="none"/>
   
<xs:enumeration value="nightOnly"/>
   
<xs:enumeration value="manual"/>
   
<xs:enumeration value="automatic"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tSwitchPosition
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
attributes SwitchAndPosition/@inPosition SwitchIL/@preferredPosition SwitchPositionRestriction/@restrictedPosition
facets
Kind Value Annotation
enumeration right
enumeration left
annotation
documentation
typical positions of a point/switch
source <xs:simpleType name="tSwitchPosition">
 
<xs:annotation>
   
<xs:documentation>typical positions of a point/switch</xs:documentation>
 
</xs:annotation>
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="right"/>
   
<xs:enumeration value="left"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tTvdSectionTechnologyType
namespace https://www.railml.org/schemas/3.1
type restriction of xs:string
properties
base xs:string
used by
simpleType tTvdSectionTechnologyTypeExt
facets
Kind Value Annotation
enumeration trackCircuit
enumeration axleCounter
source <xs:simpleType name="tTvdSectionTechnologyType">
 
<xs:restriction base="xs:string">
   
<xs:enumeration value="trackCircuit"/>
   
<xs:enumeration value="axleCounter"/>
 
</xs:restriction>
</xs:simpleType>

simpleType tTvdSectionTechnologyTypeExt
namespace https://www.railml.org/schemas/3.1
type union of (rail3:tTvdSectionTechnologyType, rail3:tOtherEnumerationValue)
used by
attribute TvdSection/@technology
source <xs:simpleType name="tTvdSectionTechnologyTypeExt">
 
<xs:union memberTypes="rail3:tTvdSectionTechnologyType rail3:tOtherEnumerationValue"/>
</xs:simpleType>

complexType AreaProjection
diagram railml3_p374.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:ElementProjection
properties
base rail3:ElementProjection
children rail3:name rail3:usesSymbol rail3:coordinate
used by
element Visualization/areaElementProjection
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  optional      
documentation
unique identifier
refersToElement  rail3:tRef  required      
documentation
reference to any element of infrastructure model
source <xs:complexType name="AreaProjection">
 
<xs:complexContent>
   
<xs:extension base="rail3:ElementProjection">
     
<xs:sequence>
       
<xs:element name="coordinate" type="rail3:ProjectionCoordinate" minOccurs="3" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>coordinates for area projection (min 3 whereas first and last coordinate have to be identical to close the polygon)</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

element AreaProjection/coordinate
diagram railml3_p375.png
namespace https://www.railml.org/schemas/3.1
type rail3:ProjectionCoordinate
properties
minOcc 3
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
x  xs:decimal  required      
y  xs:decimal  optional      
z  xs:decimal  optional      
annotation
documentation
coordinates for area projection (min 3 whereas first and last coordinate have to be identical to close the polygon)
source <xs:element name="coordinate" type="rail3:ProjectionCoordinate" minOccurs="3" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>coordinates for area projection (min 3 whereas first and last coordinate have to be identical to close the polygon)</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Balise
diagram railml3_p376.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:FunctionalInfrastructureEntity
properties
base rail3:FunctionalInfrastructureEntity
children rail3:name rail3:isValid rail3:areaLocation rail3:linearLocation rail3:spotLocation rail3:gmlLocations rail3:networkLocation rail3:designator rail3:external
used by
element Balises/balise
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  required      
documentation
the identifier of the object; this can be either of type xs:ID or UUID
type  rail3:tBaliseType  optional      
documentation
type of balise: fixed or transparent
belongsToParent  rail3:tRef  optional      
documentation
reference to the (one and only) parent balise (group)
basedOnTemplate  rail3:tRef  optional      
documentation
reference to a generic balise (group)
isBaliseGroup  xs:boolean  optional      
documentation
indicate whether the &lt;balise&gt; represents a balise group
baliseGroupType  rail3:tBaliseGroupTypeExt  optional      
documentation
type of balise group: fixed, transparent or infill
source <xs:complexType name="Balise">
 
<xs:complexContent>
   
<xs:extension base="rail3:FunctionalInfrastructureEntity">
     
<xs:sequence/>
     
<xs:attribute name="type" type="rail3:tBaliseType" use="optional">
       
<xs:annotation>
         
<xs:documentation>type of balise: fixed or transparent</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="belongsToParent" type="rail3:tRef" use="optional">
       
<xs:annotation>
         
<xs:documentation>reference to the (one and only) parent balise (group)</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="basedOnTemplate" type="rail3:tRef" use="optional">
       
<xs:annotation>
         
<xs:documentation>reference to a generic balise (group)</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="isBaliseGroup" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>indicate whether the &lt;balise&gt; represents a balise group</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="baliseGroupType" type="rail3:tBaliseGroupTypeExt" use="optional">
       
<xs:annotation>
         
<xs:documentation>type of balise group: fixed, transparent or infill</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Balise/@type
type rail3:tBaliseType
properties
use optional
facets
Kind Value Annotation
enumeration transparent
enumeration fixed
annotation
documentation
type of balise: fixed or transparent
source <xs:attribute name="type" type="rail3:tBaliseType" use="optional">
 
<xs:annotation>
   
<xs:documentation>type of balise: fixed or transparent</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Balise/@belongsToParent
type rail3:tRef
properties
use optional
annotation
documentation
reference to the (one and only) parent balise (group)
source <xs:attribute name="belongsToParent" type="rail3:tRef" use="optional">
 
<xs:annotation>
   
<xs:documentation>reference to the (one and only) parent balise (group)</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Balise/@basedOnTemplate
type rail3:tRef
properties
use optional
annotation
documentation
reference to a generic balise (group)
source <xs:attribute name="basedOnTemplate" type="rail3:tRef" use="optional">
 
<xs:annotation>
   
<xs:documentation>reference to a generic balise (group)</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Balise/@isBaliseGroup
type xs:boolean
properties
use optional
annotation
documentation
indicate whether the &lt;balise&gt; represents a balise group
source <xs:attribute name="isBaliseGroup" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>indicate whether the &lt;balise&gt; represents a balise group</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Balise/@baliseGroupType
type rail3:tBaliseGroupTypeExt
properties
use optional
annotation
documentation
type of balise group: fixed, transparent or infill
source <xs:attribute name="baliseGroupType" type="rail3:tBaliseGroupTypeExt" use="optional">
 
<xs:annotation>
   
<xs:documentation>type of balise group: fixed, transparent or infill</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType Balises
diagram railml3_p377.png
namespace https://www.railml.org/schemas/3.1
children rail3:balise
used by
element FunctionalInfrastructure/balises
source <xs:complexType name="Balises">
 
<xs:sequence>
   
<xs:element name="balise" type="rail3:Balise" minOccurs="0" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element Balises/balise
diagram railml3_p378.png
namespace https://www.railml.org/schemas/3.1
type rail3:Balise
properties
minOcc 0
maxOcc unbounded
content complex
children rail3:name rail3:isValid rail3:areaLocation rail3:linearLocation rail3:spotLocation rail3:gmlLocations rail3:networkLocation rail3:designator rail3:external
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  required      
documentation
the identifier of the object; this can be either of type xs:ID or UUID
type  rail3:tBaliseType  optional      
documentation
type of balise: fixed or transparent
belongsToParent  rail3:tRef  optional      
documentation
reference to the (one and only) parent balise (group)
basedOnTemplate  rail3:tRef  optional      
documentation
reference to a generic balise (group)
isBaliseGroup  xs:boolean  optional      
documentation
indicate whether the &lt;balise&gt; represents a balise group
baliseGroupType  rail3:tBaliseGroupTypeExt  optional      
documentation
type of balise group: fixed, transparent or infill
source <xs:element name="balise" type="rail3:Balise" minOccurs="0" maxOccurs="unbounded"/>

complexType Border
diagram railml3_p379.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackNode
properties
base rail3:TrackNode
children rail3:name rail3:isValid rail3:areaLocation rail3:linearLocation rail3:spotLocation rail3:gmlLocations rail3:networkLocation rail3:designator rail3:external rail3:markedByInfrastructureElement
used by
element Borders/border
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  required      
documentation
the identifier of the object; this can be either of type xs:ID or UUID
isOpenEnd  xs:boolean  optional      
documentation
set TRUE if this represents the end of the known network; default value FALSE
externalRef  xs:string  optional      
documentation
reference to an external identifier allowing to connect in this border point (only useful in case of open ends)
type  rail3:tBorderTypeExt  required      
documentation
defines the type of the border, e.g. "infrastructureManager" to indicate a border between two railway areas owned by different railway infrastructure managers
annotation
documentation
A border point is used to separate the railway network due to different reasons. Typical examples are country borders, the change of owning infrastructure manager or the border of a station.
source <xs:complexType name="Border">
 
<xs:annotation>
   
<xs:documentation>A border point is used to separate the railway network due to different reasons. Typical examples are country borders, the change of owning infrastructure manager or the border of a station.</xs:documentation>
 
</xs:annotation>
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackNode">
     
<xs:sequence>
       
<xs:element name="markedByInfrastructureElement" type="rail3:tElementWithIDref" minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>reference to a functional infrastructure element that marks the border</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:sequence>
     
<xs:attribute name="isOpenEnd" type="xs:boolean" use="optional">
       
<xs:annotation>
         
<xs:documentation>set TRUE if this represents the end of the known network; default value FALSE</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="externalRef" type="xs:string" use="optional">
       
<xs:annotation>
         
<xs:documentation>reference to an external identifier allowing to connect in this border point (only useful in case of open ends)</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
     
<xs:attribute name="type" type="rail3:tBorderTypeExt" use="required">
       
<xs:annotation>
         
<xs:documentation>defines the type of the border, e.g. "infrastructureManager" to indicate a border between two railway areas owned by different railway infrastructure managers</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute Border/@isOpenEnd
type xs:boolean
properties
use optional
annotation
documentation
set TRUE if this represents the end of the known network; default value FALSE
source <xs:attribute name="isOpenEnd" type="xs:boolean" use="optional">
 
<xs:annotation>
   
<xs:documentation>set TRUE if this represents the end of the known network; default value FALSE</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Border/@externalRef
type xs:string
properties
use optional
annotation
documentation
reference to an external identifier allowing to connect in this border point (only useful in case of open ends)
source <xs:attribute name="externalRef" type="xs:string" use="optional">
 
<xs:annotation>
   
<xs:documentation>reference to an external identifier allowing to connect in this border point (only useful in case of open ends)</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute Border/@type
type rail3:tBorderTypeExt
properties
use required
annotation
documentation
defines the type of the border, e.g. "infrastructureManager" to indicate a border between two railway areas owned by different railway infrastructure managers
source <xs:attribute name="type" type="rail3:tBorderTypeExt" use="required">
 
<xs:annotation>
   
<xs:documentation>defines the type of the border, e.g. "infrastructureManager" to indicate a border between two railway areas owned by different railway infrastructure managers</xs:documentation>
 
</xs:annotation>
</xs:attribute>

element Border/markedByInfrastructureElement
diagram railml3_p380.png
namespace https://www.railml.org/schemas/3.1
type rail3:tElementWithIDref
properties
minOcc 0
maxOcc unbounded
content complex
attributes
Name  Type  Use  Default  Fixed  Annotation
ref  rail3:tRef  required      
documentation
reference is required because it's the purpose of the element
annotation
documentation
reference to a functional infrastructure element that marks the border
source <xs:element name="markedByInfrastructureElement" type="rail3:tElementWithIDref" minOccurs="0" maxOccurs="unbounded">
 
<xs:annotation>
   
<xs:documentation>reference to a functional infrastructure element that marks the border</xs:documentation>
 
</xs:annotation>
</xs:element>

complexType Borders
diagram railml3_p381.png
namespace https://www.railml.org/schemas/3.1
children rail3:border
used by
element FunctionalInfrastructure/borders
source <xs:complexType name="Borders">
 
<xs:sequence>
   
<xs:element name="border" type="rail3:Border" minOccurs="1" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element Borders/border
diagram railml3_p382.png
namespace https://www.railml.org/schemas/3.1
type rail3:Border
properties
minOcc 1
maxOcc unbounded
content complex
children rail3:name rail3:isValid rail3:areaLocation rail3:linearLocation rail3:spotLocation rail3:gmlLocations rail3:networkLocation rail3:designator rail3:external rail3:markedByInfrastructureElement
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  required      
documentation
the identifier of the object; this can be either of type xs:ID or UUID
isOpenEnd  xs:boolean  optional      
documentation
set TRUE if this represents the end of the known network; default value FALSE
externalRef  xs:string  optional      
documentation
reference to an external identifier allowing to connect in this border point (only useful in case of open ends)
type  rail3:tBorderTypeExt  required      
documentation
defines the type of the border, e.g. "infrastructureManager" to indicate a border between two railway areas owned by different railway infrastructure managers
source <xs:element name="border" type="rail3:Border" minOccurs="1" maxOccurs="unbounded"/>

complexType BufferStop
diagram railml3_p383.png
namespace https://www.railml.org/schemas/3.1
type extension of rail3:TrackNode
properties
base rail3:TrackNode
children rail3:name rail3:isValid rail3:areaLocation rail3:linearLocation rail3:spotLocation rail3:gmlLocations rail3:networkLocation rail3:designator rail3:external
used by
element BufferStops/bufferStop
attributes
Name  Type  Use  Default  Fixed  Annotation
id  rail3:tID  required      
documentation
the identifier of the object; this can be either of type xs:ID or UUID
type  rail3:tBufferStopType  optional      
documentation
type of the buffer stop
source <xs:complexType name="BufferStop">
 
<xs:complexContent>
   
<xs:extension base="rail3:TrackNode">
     
<xs:sequence/>
     
<xs:attribute name="type" type="rail3:tBufferStopType" use="optional">
       
<xs:annotation>
         
<xs:documentation>type of the buffer stop</xs:documentation>
       
</xs:annotation>
     
</xs:attribute>
   
</xs:extension>
 
</xs:complexContent>
</xs:complexType>

attribute BufferStop/@type
type rail3:tBufferStopType
properties
use optional
facets
Kind Value Annotation
enumeration sleeperCross
enumeration headRamp
enumeration fixedBufferStop
enumeration brakingBufferStop
annotation
documentation
type of the buffer stop
source <xs:attribute name="type" type="rail3:tBufferStopType" use="optional">
 
<xs:annotation>
   
<xs:documentation>type of the buffer stop</xs:documentation>
 
</xs:annotation>
</xs:attribute>

complexType BufferStops
diagram railml3_p384.png
namespace https://www.railml.org/schemas/3.1
children rail3:bufferStop
used by
element FunctionalInfrastructure/bufferStops
source <xs:complexType name="BufferStops">
 
<xs:sequence>
   
<xs:element name="bufferStop" type="rail3:BufferStop" minOccurs="1" maxOccurs="unbounded"/>
 
</xs:sequence>
</xs:complexType>

element BufferStops/bufferStop
diagram