Dev:Splitting and merging railML files

From railML 3 Wiki
Jump to navigation Jump to search

Introduction

This is a guide on splitting and merging railML files serving as a list of best practices.

Users have a big file with railway network and lines in it. Reading software may not support importing this big file. Users want to extract lines from the network to separate files and then (after import) to bring lines back into one network. Splitting and merging of lines may be done by different parties and different tools.

Railway sector actors should be able to prepare their data for splitting and integration in a unified standardized way i.e. split files into (lines) parts intended for integration in an automated way, define explicit points for connection.

Concept

2024-09-09 railML splittingConcept.svg

Connector <netElement> is a redundant <netElement> marking a “border” of a file. It exists in both files after splitting. Connector should have a UUID for the entire lifetime of the splitting exercise.

Connector net element in both split files should have same identifiers (Listings 1 and 2). In the following examples net relations refer to the same net element called “connector”. Topologically it should be located at the border of the lines but not covered by them. In the “general approach”[1] connector is inserted in both mesoscopic and macroscopic levels of aggregation.

Excerpt of topology of the first split file

<netRelation id="nr_ne1connector" navigability="Both">
  <elementA ref="ne1"/>
  <elementB ref="connector"/>
</netRelation>

Excerpt of topology of the second split file

<netRelation id="nr_connector_ne2" navigability="Both">
  <elementA ref="connector "/>
  <elementB ref="ne2"/>
</netRelation>

In examples 2-4, 6 linear positioning system should have UUID, for the entire lifetime of the splitting exercise, and be consistent with semantic constraint IS 016.

If functional IS entities span across several <netElement> (e.g. speedSection below) they may be split in the middle. In this case they and all their children should have UUIDs, for the entire lifetime of the splitting exercise, for successful merge.

2024-09-11 railML splittingSpeedSection.png

Splitting between <netElement>s (general approach)

Example 1 - splitting network into lines (no overlap)

Two railway lines cover disjoint sets of net elements at the macroscopic and microscopic levels. There is no overlap at both microscopic and macroscopic level of aggregation.

2024-09-09 railML splittingNetwork.svg

Input

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  
  <common id="co_01">
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" 
                                 endMeasure="1000.0" linearReferencingMethod="absolute">
          <name name="railway line 1 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
        <linearPositioningSystem id="lps02" units="m" startMeasure="0.0" endMeasure="1000.0" 
                                 linearReferencingMethod="absolute">
          <name name="railway line 2 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne2" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <associatedPositioningSystem id="ne2_aps01">
            <intrinsicCoordinate id="ne2_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne3" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <relation ref="nr_ne4ne3"/>
          <associatedPositioningSystem id="ne3_aps01">
            <intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne3_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne4" length="500.0">
          <relation ref="nr_ne4ne3"/>
          <relation ref="nr_ne5ne4"/>
          <associatedPositioningSystem id="ne4_aps01">
            <intrinsicCoordinate id="ne4_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne4_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne5" length="500.0">
          <relation ref="nr_ne5ne4"/>
          <associatedPositioningSystem id="ne5_aps01">
            <intrinsicCoordinate id="ne5_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne5_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        
        <netElement id="ne1">
          <relation ref="nr_ne6ne1"/>
          <elementCollectionUnordered id="ne1_ecu01">
            <elementPart ref="ne2"/>
            <elementPart ref="ne3"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne1_aps01">
            <intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne6">
          <relation ref="nr_ne6ne1"/>
          <elementCollectionUnordered id="ne6_ecu01">
            <elementPart ref="ne4"/>
            <elementPart ref="ne5"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne6_aps01">
            <intrinsicCoordinate id="ne6_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne6_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <netRelation id="nr_ne3ne2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne3"/>
          <elementB ref="ne2"/>
        </netRelation>
        <netRelation id="nr_ne4ne3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne4"/>
          <elementB ref="ne3"/>
        </netRelation>
        <netRelation id="nr_ne5ne4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne5"/>
          <elementB ref="ne4"/>
        </netRelation>
        <netRelation id="nr_ne6ne1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne6"/>
          <elementB ref="ne1"/>
        </netRelation>
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne2"/>
            <networkResource ref="ne3"/>
            <networkResource ref="ne4"/>
            <networkResource ref="ne5"/>
            <networkResource ref="nr_ne3ne2"/>
            <networkResource ref="nr_ne4ne3"/>
            <networkResource ref="nr_ne5ne4"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne1"/>
            <networkResource ref="ne6"/>

            <networkResource ref="nr_ne6ne1"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <functionalInfrastructure>

      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
        <line id="lin02" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne6" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps02" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps02" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
      </lines>

    </functionalInfrastructure>
  </infrastructure>
</railML>

Splitting

Entity of functional infrastructure belongs to a <line> if its <linearLocation> or <spotLocation> refer to the same or aggregated <netElement> as the given <line>.

Line 1
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  
  <common id="co_01">
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="1000.0" 
                                 linearReferencingMethod="absolute">
          <name name="railway line 1 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne2" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <associatedPositioningSystem id="ne2_aps01">
            <intrinsicCoordinate id="ne2_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne3" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <relation ref="nr_connector1ne3"/>
          <associatedPositioningSystem id="ne3_aps01">
            <intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne3_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net element of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_connector1ne3"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>


        <netElement id="ne1">
          <relation ref="nr_connector2ne1"/>
          <elementCollectionUnordered id="ne1_ecu01">
            <elementPart ref="ne2"/>
            <elementPart ref="ne3"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne1_aps01">
            <intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net element of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_connector2ne1"/>
					<!-- connector net element of mesoscopic level aggregates the one of miscroscopic level -->
          <elementCollectionUnordered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionUnordered>					
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>
      <netRelations>
        <netRelation id="nr_ne3ne2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne3"/>
          <elementB ref="ne2"/>
        </netRelation>
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_connector1ne3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne3"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_connector2ne1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne1"/>
        </netRelation>

        
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne2"/>
            <networkResource ref="ne3"/>
            <networkResource ref="connector1"/>

            <networkResource ref="nr_ne3ne2"/>
            <networkResource ref="nr_connector1ne3"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne1"/>
            <networkResource ref="connector2"/>

            <networkResource ref="nr_connector2ne1"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <functionalInfrastructure>

      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
      </lines>
    </functionalInfrastructure>
  </infrastructure>
</railML>
Line 2
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  
  <common id="co_01">
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps02" units="m" startMeasure="0.0" endMeasure="1000.0" 
                                 linearReferencingMethod="absolute">
          <name name="railway line 2 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <!-- connector net element of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne4connector1"/>
          <associatedPositioningSystem id="ne4_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne4" length="500.0">
          <relation ref="nr_ne5ne4"/>
          <relation ref="nr_ne4connector1"/>
          <associatedPositioningSystem id="ne4_aps01">
            <intrinsicCoordinate id="ne4_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne4_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne5" length="500.0">
          <relation ref="nr_ne5ne4"/>
          <associatedPositioningSystem id="ne5_aps01">
            <intrinsicCoordinate id="ne5_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne5_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net element of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne6connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of miscroscopif level -->
          <elementCollectionUnordered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne6">
          <relation ref="nr_ne6connector2"/>
          <elementCollectionUnordered id="ne6_ecu01">
            <elementPart ref="ne4"/>
            <elementPart ref="ne5"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne6_aps01">
            <intrinsicCoordinate id="ne6_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne6_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

      </netElements>

      <netRelations>
        <netRelation id="nr_ne5ne4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne5"/>
          <elementB ref="ne4"/>
        </netRelation>
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne4connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne4"/>
          <elementB ref="connector1"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne6connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne6"/>
          <elementB ref="connector2"/>
        </netRelation>
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne4"/>
            <networkResource ref="ne5"/>
            <networkResource ref="connector1"/>

            <networkResource ref="nr_ne4connector1"/>
            <networkResource ref="nr_ne5ne4"/>
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne6"/>
            <networkResource ref="connector2"/>

            <networkResource ref="nr_ne6connector2"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <functionalInfrastructure>

      <lines>
        <line id="lin02" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne6" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps02" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps02" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
      </lines>

    </functionalInfrastructure>
  </infrastructure>
</railML>
 

Merging

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  
  <common id="co_01">
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="1000.0" 
                                 linearReferencingMethod="absolute">
          <name name="railway line 1 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
        <linearPositioningSystem id="lps02" units="m" startMeasure="0.0" endMeasure="1000.0" 
                                 linearReferencingMethod="absolute">
          <name name="railway line 2 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne2" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <associatedPositioningSystem id="ne2_aps01">
            <intrinsicCoordinate id="ne2_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne3" length="500.0">
          <relation ref="nr_ne3ne2"/>
          <relation ref="nr_connector1ne3"/>
          <associatedPositioningSystem id="ne3_aps01">
            <intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne3_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net element of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_connector1ne3"/>
          <relation ref="nr_ne4connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        
        <netElement id="ne4" length="500.0">
          <relation ref="nr_ne4connector1"/>
          <relation ref="nr_ne5ne4"/>
          <associatedPositioningSystem id="ne4_aps01">
            <intrinsicCoordinate id="ne4_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne4_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne5" length="500.0">
          <relation ref="nr_ne5ne4"/>
          <associatedPositioningSystem id="ne5_aps01">
            <intrinsicCoordinate id="ne5_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne5_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        
        <netElement id="ne1">
          <relation ref="nr_connector2ne1"/>
          <elementCollectionUnordered id="ne1_ecu01">
            <elementPart ref="ne2"/>
            <elementPart ref="ne3"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne1_aps01">
            <intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net element of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_connector2ne1"/>
          <relation ref="nr_ne6connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionUnordered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        
        <netElement id="ne6">
          <relation ref="nr_connector2ne1"/>
          <elementCollectionUnordered id="ne6_ecu01">
            <elementPart ref="ne4"/>
            <elementPart ref="ne5"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne6_aps01">
            <intrinsicCoordinate id="ne6_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne6_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="1000.0" positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <netRelation id="nr_ne3ne2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne3"/>
          <elementB ref="ne2"/>
        </netRelation>
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_connector1ne3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne3"/>
        </netRelation>
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne4connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne4"/>
          <elementB ref="connector1"/>
        </netRelation>

        <netRelation id="nr_ne5ne4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne5"/>
          <elementB ref="ne4"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_connector2ne1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne1"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne6connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne6"/>
          <elementB ref="connector2"/>
        </netRelation>
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne2"/>
            <networkResource ref="ne3"/>
            <networkResource ref="connector1"/>
            <networkResource ref="ne4"/>
            <networkResource ref="ne5"/>
            <networkResource ref="nr_ne3ne2"/>
            <networkResource ref="nr_connector1ne3"/>
            <networkResource ref="nr_ne4connector1"/>
            <networkResource ref="nr_ne5ne4"/>


          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne1"/>
            <networkResource ref="connector2"/>
            <networkResource ref="ne6"/>
            <networkResource ref="nr_connector2ne1"/>
            <networkResource ref="nr_ne6connector2"/>


          </level>
        </network>
      </networks>
    </topology>
    
    <functionalInfrastructure>

      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
        <line id="lin02" lineCategory="other:CE" lineType="mainLine">
          <linearLocation id="lin02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne6" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps02" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps02" measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
      </lines>

    </functionalInfrastructure>
  </infrastructure>
</railML>

Example 2 - splitting line into line sections and station

Line section is a part of line between two railway stations with no stations in between.

2024-09-10 railML splittingLine1.png

Input

Input to splitting into stations and line sections is Simple example (link to the railML® website).

Stations and line sections do not overlap topologically, i.e. no mesoscopic net element is covered by both station and line section [2][3].

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
  
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
      <geometricPositioningSystems>
        <geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
          <name name="WGS84" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
        <geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
          <name name="ETRS89_UTMzone32N" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
      </geometricPositioningSystems>
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
      <screenPositioningSystems>
        <screenPositioningSystem pxX="1024" pxY="768" id="scs01">
          <name name="screen visualization coordinate system" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </screenPositioningSystem>
      </screenPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
          <relation ref="nr_a03x01"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_x01b03"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x01" length="3600.0">
          <relation ref="nr_a03x01"/>
          <relation ref="nr_x01b03"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a11">
          <relation ref="nr_a11x11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b11">
          <relation ref="nr_x11b11"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x11">
          <relation ref="nr_a11x11"/>
          <relation ref="nr_x11b11"/>
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a03"/>
          <elementB ref="ne_x01"/>
        </netRelation>
        <netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_a11x11" positionOnA="0" positionOnB="0" navigability="Both">
          <elementA ref="ne_a11"/>
          <elementB ref="ne_x11"/>
        </netRelation>
        <netRelation id="nr_x11b11" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="ne_b11"/>
        </netRelation>
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="ne_x01"/>
            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>
            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
            <networkResource ref="nr_a03x01"/>
            <networkResource ref="nr_x01b03"/>
          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
            <networkResource ref="ne_b11"/>
            <networkResource ref="ne_x11"/>
            <networkResource ref="nr_a11x11"/>
            <networkResource ref="nr_x11b11"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
          <name name="Malý příklad železniční tratě" language="cz"/>
          <name name="Kleine Beispielstrecke" language="de"/>
          <name name="Simple Example railway line" language="en"/>
          <name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
          <name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
          <name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
          <name name="Lille eksempelbanen" language="no"/>
          <name name="Lilla Exempellinjen" language="se"/>
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>
        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>
        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Splitting

<line>s are split into stations and line sections using "general approach"[1] when modelled according to the official methodology [2][3].

Stations Arnau and Cstadt and line section between them is extracted into three files.

For <speedSection> and <line>, i.e. functional IS entities with <linearLocation> spreading on stations AND line sections approach "lines overlap within a station" [4] is used, i.e. entities are fully extracted except for the associated <netElement>s not aggregated into extracted station/line section.

Arnau
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
	
<!-- Bf Arnau covers net element a11 on the mesoscopic level of aggregation. In this file a11 and all the topology aggregated into a11 and
all the functional IS referring to a11 and aggregated topology are extracted from Simple example-->

  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
		
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_a11">
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="connecto2_ecu01">
						<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
            <elementPart ref="connector1"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>

        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_connector1ne_a03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_connector2ne_a11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne_a11"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="connector1"/>

            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>

            <networkResource ref="nr_connector1ne_a03"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
            <networkResource ref="connector2"/>

            <networkResource ref="nr_connector2ne_a11"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>

      </bufferStops>

      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x11 b11 are not extracted because are not aggregated into a11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>

<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>

<!-- opp02 is extracted because line from endsInOp refers to it -->

        <operationalPoint id="opp02">
        </operationalPoint>

      </operationalPoints>
      
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>

        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>

      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>

      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x01 b03 and b01 are not extracted because are not aggregated into a11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- associated net elements referring to x01 b03 are not extracted because are not aggregated into a11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>

      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <!-- switch with incomplete data is extracted because trc03 refers to it from trackEnd -->
        <switchIS id="swi02"/>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
<!-- associated net elements referring to x01 b03 are not extracted because are not aggregated into a11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>

      </trainDetectionElements>
    </functionalInfrastructure>
    
  </infrastructure>
  

</railML>
Cstadt
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- Bf Cstadt covers net element b11 on the mesoscopic level of aggregation. In this file b11 and all the topology aggregated into b11 and
all the functional IS referring to b11 and aggregated topology are extracted from Simple example-->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of microscopic level-->
        <netElement id="connector3">
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_b11">
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of mesoscopic level-->
        <netElement id="connector4">
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

      </netElements>

      <netRelations>

        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>

        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne_b03connector3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="connector3"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne_b11connector4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b11"/>
          <elementB ref="connector4"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="connector3"/>


            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
            <networkResource ref="nr_ne_b03connector3"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_b11"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_b11connector4"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>

        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- associated net elements referring to x11 a11 are not extracted because are not aggregated into b11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
			
      <operationalPoints>
        <operationalPoint id="opp01">
<!-- opp02 is extracted because line from beginsInOp refers to it -->

        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <platforms>

        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>

        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>

      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
<!-- associated net elements referring to x01 a03 are not extracted because are not aggregated into b11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x01 a03 and a01 are not extracted because are not aggregated into b11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
        </speedSection>

      </speeds>
      
      <switchesIS>
          <!-- switch with incomplete data is extracted because trc03 refers to it from trackBegin -->
        <switchIS id="swi01"/>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
<!-- associated net elements referring to x01 a03 are not extracted because are not aggregated into b11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>

      </trainDetectionElements>
    </functionalInfrastructure>
    
  </infrastructure>
  

</railML>
Line section
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- Bf Arnau covers net element a11 and Bf Cstadt covers b11. a11 and b11 are both linked to x11. Thus in this file x11 
and all the topology aggregated into x11 and all the functional IS referring to 
x11 and aggregated topology are extracted from Simple example -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01" length="3600.0">
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne_x01connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_x11">
          <relation ref="nr_ne_x11connector2"/>
          <relation ref="nr_connector4ne_x11"/>
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne_x11connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="connector1"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01"/>
        </netRelation>				
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="connector2"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_x01"/>
            <networkResource ref="connector1"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_ne_x01connector1"/>
            <networkResource ref="nr_connector3ne_x01"/>

						
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne_x11"/>
            <networkResource ref="connector2"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_x11connector2"/>
            <networkResource ref="nr_connector4ne_x11"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      

      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- associated net elements referring to a11 b11 are not extracted because are not aggregated into a11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <signalsIS>

        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">

<!-- associated net elements referring to a03, b03 and b01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- associated net elements referring to a03, b03 and a01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>

          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">

            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
<!-- associated net elements referring to a01 b03 are not extracted because are not aggregated into x11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Merging

Merged file is different from input in that it includes connectors as artefacts after splitting.

Split <linearLocation>s after merging also cover connectors.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- this is result of merging two line section anto two stations back together -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
      <geometricPositioningSystems>
        <geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
          <name name="WGS84" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
        <geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
          <name name="ETRS89_UTMzone32N" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
      </geometricPositioningSystems>
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
      <screenPositioningSystems>
        <screenPositioningSystem pxX="1024" pxY="768" id="scs01">
          <name name="screen visualization coordinate system" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </screenPositioningSystem>
      </screenPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
<!-- <relation ref="nr_a03x01"/> is replaced by connector netRelation-->
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
<!-- <relation ref="nr_x01b03"/> is replaced by connector net relation -->
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x01" length="3600.0">
<!--      <relation ref="nr_a03x01"/> and
          <relation ref="nr_x01b03"/> are replaced by connector net relations -->
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <!-- connector net elements of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01"/>
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>				
				
				
        <netElement id="ne_a11">
<!-- <relation ref="nr_a11x11"/> is replaced by connector net relation -->
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b11">
<!-- <relation ref="nr_x11b11"/> is replaced by connector net relation -->
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x11">
<!--      <relation ref="nr_a11x11"/> and
          <relation ref="nr_x11b11"/> are replaced by connector net relations -->
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				
        <!-- connector net elements of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne_x11connector2"/>
          <relation ref="nr_connector2ne_a11"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11"/>
          <relation ref="nr_ne_b11connector4"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				
      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a03"/>
          <elementB ref="ne_x01"/>
        </netRelation>
        <netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="ne_b03"/>
        </netRelation>

				
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne_b03connector3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="connector3"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01"/>
        </netRelation>		
        <netRelation id="nr_connector1ne_a03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_ne_x01connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="connector1"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne_b11connector4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b11"/>
          <elementB ref="connector4"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11"/>
        </netRelation>
        <netRelation id="nr_connector2ne_a11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne_a11"/>
        </netRelation>
        <netRelation id="nr_ne_x11connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="connector2"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="ne_x01"/>
						
            <networkResource ref="connector1"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>
            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
						
            <networkResource ref="nr_ne_x01connector1"/>
            <networkResource ref="nr_connector1ne_a03"/>

            <networkResource ref="nr_connector3ne_x01"/>
            <networkResource ref="nr_ne_b03connector3"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
						
            <networkResource ref="connector2"/>
            <networkResource ref="connector4"/>
						
            <networkResource ref="ne_b11"/>
            <networkResource ref="ne_x11"/>

            <networkResource ref="nr_ne_x11connector2"/>
            <networkResource ref="nr_connector2ne_a11"/>

            <networkResource ref="nr_connector4ne_x11"/>
            <networkResource ref="nr_ne_b11connector4"/>

						
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
          <name name="Malý příklad železniční tratě" language="cz"/>
          <name name="Kleine Beispielstrecke" language="de"/>
          <name name="Simple Example railway line" language="en"/>
          <name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
          <name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
          <name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
          <name name="Lille eksempelbanen" language="no"/>
          <name name="Lilla Exempellinjen" language="se"/>
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector2" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector4" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>
        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>
        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Example 3 - splitting line into line sections and station (considering routes)

Simple example (link to the railML® website) has a rt_sig02_sig04 from the exit signal 68N1 of Arnau to the home (entrance) signal 69A of Cstadt.

Flank protection secures 68W02 from setting a route coming from track 2 of Arnau to line section.

Overlap section is in advance of signal 69A.

According to railML.org forum [5] flank protection is represented in railML3 with <routeRelation>.

2024-09-11 railML splittingRoute.png

Input

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml="http://www.opengis.net/gml/3.2/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd" version="3.2">
	<metadata>
		<dc:format>3.2</dc:format>
		<dc:identifier>3</dc:identifier>
		<dc:source>railML.org</dc:source>
		<dc:title xml:lang="en">Simple Example v12 railML 3.2</dc:title>
		<dc:language>en</dc:language>
		<dc:creator xml:lang="de">railML.org</dc:creator>
		<dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
		<dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
		<dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.2 Simple Example</dc:rights>
	</metadata>
	<common id="co_01">
		<organizationalUnits>
			<organizationalUnit id="im_01" code="SZDC"/>
		</organizationalUnits>
		<speedProfiles>
			<speedProfile id="spp01" influence="increasing"/>
		</speedProfiles>
		<positioning>
			<geometricPositioningSystems>
				<geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
					<name name="WGS84" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</geometricPositioningSystem>
				<geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
					<name name="ETRS89_UTMzone32N" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</geometricPositioningSystem>
			</geometricPositioningSystems>
			<linearPositioningSystems>
				<linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
					<name name="railway line 6869 mileage" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</linearPositioningSystem>
			</linearPositioningSystems>
			<screenPositioningSystems>
				<screenPositioningSystem pxX="1024" pxY="768" id="scs01">
					<name name="screen visualization coordinate system" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</screenPositioningSystem>
			</screenPositioningSystems>
		</positioning>
	</common>
	<infrastructure id="is_01">
		<topology>
			<netElements>
				<netElement id="ne_a01" length="500.0">
					<relation ref="nr_a01a02"/>
					<relation ref="nr_a01a03"/>
					<associatedPositioningSystem id="ne_a01_aps01">
						<intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a02" length="500.0">
					<relation ref="nr_a01a02"/>
					<relation ref="nr_a02a03"/>
					<associatedPositioningSystem id="ne_a02_aps01">
						<intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a03" length="200.0">
					<relation ref="nr_a01a03"/>
					<relation ref="nr_a02a03"/>
					<relation ref="nr_a03x01"/>
					<associatedPositioningSystem id="ne_a03_aps01">
						<intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b01" length="500.0">
					<relation ref="nr_b01b03"/>
					<relation ref="nr_b01b04"/>
					<associatedPositioningSystem id="ne_b01_aps01">
						<intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b02" length="450.0">
					<relation ref="nr_b02b04"/>
					<relation ref="nr_b02b05"/>
					<associatedPositioningSystem id="ne_b02_aps01">
						<intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b03" length="200.0">
					<relation ref="nr_b01b03"/>
					<relation ref="nr_b03b04"/>
					<relation ref="nr_x01b03"/>
					<associatedPositioningSystem id="ne_b03_aps01">
						<intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b04" length="50.0">
					<relation ref="nr_b01b04"/>
					<relation ref="nr_b02b04"/>
					<relation ref="nr_b03b04"/>
					<relation ref="nr_b04b05"/>
					<associatedPositioningSystem id="ne_b04_aps01">
						<intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b05" length="200.0">
					<relation ref="nr_b02b05"/>
					<relation ref="nr_b04b05"/>
					<associatedPositioningSystem id="ne_b05_aps01">
						<intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_x01" length="3600.0">
					<relation ref="nr_a03x01"/>
					<relation ref="nr_x01b03"/>
					<associatedPositioningSystem id="ne_x01_aps01">
						<intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a11">
					<relation ref="nr_a11x11"/>
					<elementCollectionUnordered id="ne_a11_ecu01">
						<elementPart ref="ne_a01"/>
						<elementPart ref="ne_a02"/>
						<elementPart ref="ne_a03"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne_a11_aps01">
						<intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
							<linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_b11">
					<relation ref="nr_x11b11"/>
					<elementCollectionUnordered id="ne_b11_ecu01">
						<elementPart ref="ne_b01"/>
						<elementPart ref="ne_b02"/>
						<elementPart ref="ne_b03"/>
						<elementPart ref="ne_b04"/>
						<elementPart ref="ne_b05"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne_b11_aps01">
						<intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
							<linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_x11">
					<relation ref="nr_a11x11"/>
					<relation ref="nr_x11b11"/>
					<elementCollectionOrdered id="ne_x11_ecu01">
						<elementPart ref="ne_x01"/>
					</elementCollectionOrdered>
					<associatedPositioningSystem id="ne_x11_aps01">
						<intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
			</netElements>
			<netRelations>
				<netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
					<elementA ref="ne_a01"/>
					<elementB ref="ne_a02"/>
				</netRelation>
				<netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a01"/>
					<elementB ref="ne_a03"/>
				</netRelation>
				<netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a02"/>
					<elementB ref="ne_a03"/>
				</netRelation>
				<netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b01"/>
					<elementB ref="ne_b03"/>
				</netRelation>
				<netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
					<elementA ref="ne_b01"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b02"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b02"/>
					<elementB ref="ne_b05"/>
				</netRelation>
				<netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_b03"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
					<elementA ref="ne_b04"/>
					<elementB ref="ne_b05"/>
				</netRelation>
				<netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a03"/>
					<elementB ref="ne_x01"/>
				</netRelation>
				<netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_x01"/>
					<elementB ref="ne_b03"/>
				</netRelation>
				<netRelation id="nr_a11x11" positionOnA="0" positionOnB="0" navigability="Both">
					<elementA ref="ne_a11"/>
					<elementB ref="ne_x11"/>
				</netRelation>
				<netRelation id="nr_x11b11" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_x11"/>
					<elementB ref="ne_b11"/>
				</netRelation>
			</netRelations>
			<networks>
				<network id="nw01">
					<level id="lv0" descriptionLevel="Micro">
						<networkResource ref="ne_a01"/>
						<networkResource ref="ne_a02"/>
						<networkResource ref="ne_a03"/>
						<networkResource ref="ne_b01"/>
						<networkResource ref="ne_b02"/>
						<networkResource ref="ne_b03"/>
						<networkResource ref="ne_b04"/>
						<networkResource ref="ne_b05"/>
						<networkResource ref="ne_x01"/>
						<networkResource ref="nr_a01a02"/>
						<networkResource ref="nr_a01a03"/>
						<networkResource ref="nr_a02a03"/>
						<networkResource ref="nr_b01b03"/>
						<networkResource ref="nr_b01b04"/>
						<networkResource ref="nr_b02b04"/>
						<networkResource ref="nr_b02b05"/>
						<networkResource ref="nr_b03b04"/>
						<networkResource ref="nr_b04b05"/>
						<networkResource ref="nr_a03x01"/>
						<networkResource ref="nr_x01b03"/>
					</level>
					<level id="lv1" descriptionLevel="Meso">
						<networkResource ref="ne_a11"/>
						<networkResource ref="ne_b11"/>
						<networkResource ref="ne_x11"/>
						<networkResource ref="nr_a11x11"/>
						<networkResource ref="nr_x11b11"/>
					</level>
				</network>
			</networks>
		</topology>
		<geometry>
    </geometry>
		<functionalInfrastructure>
			<bufferStops>
				<bufferStop id="bus01" type="fixedBufferStop">
					<spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
					</spotLocation>
				</bufferStop>
				<bufferStop id="bus02" type="fixedBufferStop">
					<spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
					</spotLocation>
				</bufferStop>
				<bufferStop id="bus03" type="fixedBufferStop">
					<spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
						<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
					</spotLocation>
				</bufferStop>
				<bufferStop id="bus04" type="fixedBufferStop">
					<spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
						<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
					</spotLocation>
				</bufferStop>
				<bufferStop id="bus05" type="sleeperCross">
					<spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
				</bufferStop>
			</bufferStops>
			<derailersIS>
				<derailerIS id="der01" derailSide="right">
					<spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
				</derailerIS>
			</derailersIS>
			<levelCrossingsIS>
				<levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
					<name name="LX Arnau Cstadt" language="en"/>
					<spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
					</spotLocation>
					<protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
				</levelCrossingIS>
			</levelCrossingsIS>
			<lines>
				<line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<name name="Malý příklad železniční tratě" language="cz"/>
					<name name="Kleine Beispielstrecke" language="de"/>
					<name name="Simple Example railway line" language="en"/>
					<name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
					<name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
					<name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
					<name name="Lille eksempelbanen" language="no"/>
					<name name="Lilla Exempellinjen" language="se"/>
					<linearLocation id="lin01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
						</associatedNetElement>
					</linearLocation>
					<beginsInOP ref="opp01"/>
					<endsInOP ref="opp02"/>
					<lineLayout numberOfTracks="single"/>
					<linePerformance usablePlatformLength="200" maxSpeed="80">
						<allowedLoadingGauge ref="log01"/>
					</linePerformance>
				</line>
			</lines>
			<loadingGauges>
				<loadingGauge id="log01" code="GA"/>
			</loadingGauges>
			<operationalPoints>
				<operationalPoint id="opp01">
					<name name="Bf Arnau" language="de"/>
					<name name="Adamov" language="cz"/>
					<spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
					</spotLocation>
					<designator register="_SimpleRegister" entry="OAR"/>
					<infrastructureManagerRef ref="im_01"/>
					<opEquipment>
						<ownsPlatform ref="plf01"/>
						<ownsSignal ref="sig01"/>
						<ownsSignal ref="sig02"/>
						<ownsSignal ref="sig03"/>
					</opEquipment>
					<opOperations>
						<opOperation operationalType="station" trafficType="passenger"/>
					</opOperations>
				</operationalPoint>
				<operationalPoint id="opp02">
					<name name="Bf Cstadt" language="de"/>
					<name name="Bouzov" language="cz"/>
					<spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
					</spotLocation>
					<designator register="_SimpleRegister" entry="OCS"/>
					<infrastructureManagerRef ref="im_01"/>
					<opEquipment>
						<ownsPlatform ref="plf02"/>
						<ownsPlatform ref="plf03"/>
						<ownsSignal ref="sig04"/>
						<ownsSignal ref="sig05"/>
						<ownsSignal ref="sig06"/>
					</opEquipment>
					<opOperations>
						<opOperation operationalType="station" trafficType="passenger"/>
					</opOperations>
				</operationalPoint>
			</operationalPoints>
			<platforms>
				<platform id="plf01">
					<spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
						<linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
					</spotLocation>
					<ownsPlatformEdge ref="ple01"/>
					<ownsPlatformEdge ref="ple02"/>
				</platform>
				<platform id="plf02">
					<spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
						<linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
					</spotLocation>
					<ownsPlatformEdge ref="ple03"/>
				</platform>
				<platform id="plf03">
					<spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
						<linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
					</spotLocation>
					<ownsPlatformEdge ref="ple04"/>
				</platform>
			</platforms>
			<platformEdges>
				<platformEdge id="ple01" height="550">
					<name name="Gleis 3" language="de"/>
					<linearLocation id="ple01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
							<linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
							<linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="200.00" validForDirection="both"/>
				</platformEdge>
				<platformEdge id="ple02" height="550">
					<name name="Gleis 2" language="de"/>
					<linearLocation id="ple02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
							<linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
							<linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="200.00" validForDirection="both"/>
				</platformEdge>
				<platformEdge id="ple03" height="550">
					<name name="Gleis 2" language="de"/>
					<linearLocation id="ple03_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
							<linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
							<linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="200.00" validForDirection="both"/>
				</platformEdge>
				<platformEdge id="ple04" height="380">
					<name name="Gleis 1" language="de"/>
					<linearLocation id="ple04_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
							<linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
							<linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="250.00" validForDirection="both"/>
				</platformEdge>
			</platformEdges>
			<signalsIS>
				<signalIS id="sig01" isSwitchable="false">
					<name name="68N2" language="en"/>
					<spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
						<linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig02" isSwitchable="false">
					<name name="68N1" language="en"/>
					<spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
						<linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig03" isSwitchable="false">
					<name name="68F" language="en"/>
					<spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
						<linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig04" isSwitchable="true">
					<name name="69A" language="en"/>
					<spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig05" isSwitchable="true">
					<name name="69P2" language="en"/>
					<spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
					</spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig06" isSwitchable="true">
					<name name="69P1" language="en"/>
					<spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
					</spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig07" isSwitchable="true">
					<name name="69Va" language="en"/>
					<spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
						<linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig08" isSwitchable="true">
					<name name="69W04Y" language="en"/>
					<spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig09" isSwitchable="false">
					<spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
						<linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isSpeedSignal type="execution" trainRelation="headOfTrain">
						<refersToBeginOfSpeedSection ref="sps01"/>
					</isSpeedSignal>
				</signalIS>
				<signalIS id="sig10" isSwitchable="false">
					<spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
					</spotLocation>
					<isSpeedSignal type="execution" trainRelation="headOfTrain">
						<refersToBeginOfSpeedSection ref="sps02"/>
					</isSpeedSignal>
				</signalIS>
				<signalIS id="sig11" isSwitchable="false">
					<spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isSpeedSignal type="announcement" trainRelation="headOfTrain">
						<refersToBeginOfSpeedSection ref="sps03"/>
					</isSpeedSignal>
				</signalIS>
				<signalIS id="sig12" isSwitchable="false">
					<spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isSpeedSignal type="execution" trainRelation="headOfTrain">
						<refersToBeginOfSpeedSection ref="sps03"/>
					</isSpeedSignal>
				</signalIS>
				<signalIS id="sig13" isSwitchable="false">
					<spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isSpeedSignal type="execution" trainRelation="endOfTrain">
						<refersToEndOfSpeedSection ref="sps03"/>
					</isSpeedSignal>
				</signalIS>
			</signalsIS>
			<speeds>
				<speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
					<linearLocation id="sps01_lloc01" applicationDirection="normal">
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
						</associatedNetElement>
					</linearLocation>
					<validForSpeedProfile ref="spp01"/>
				</speedSection>
				<speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
					<linearLocation id="sps02_lloc01" applicationDirection="reverse">
						<associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
						</associatedNetElement>
					</linearLocation>
				</speedSection>
				<speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
					<isValid from="2018-12-15" to="2018-12-22"/>
					<linearLocation id="sps03_lloc01" applicationDirection="normal">
						<associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
						</associatedNetElement>
					</linearLocation>
				</speedSection>
			</speeds>
			<switchesIS>
				<switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
					<name name="68W02" language="en"/>
					<spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
					<rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
				</switchIS>
				<switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
					<name name="69W03" language="en"/>
					<spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
					<rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
				</switchIS>
				<switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
					<name name="69W04" language="en"/>
					<spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
					<rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
				</switchIS>
			</switchesIS>
			<tracks>
				<track id="trc01" type="mainTrack">
					<name name="2" language="en"/>
					<linearLocation id="trc01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="bus01"/>
					<trackEnd ref="swi01"/>
					<length value="500.0" type="physical"/>
				</track>
				<track id="trc02" type="secondaryTrack">
					<name name="1" language="en"/>
					<linearLocation id="trc02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="bus02"/>
					<trackEnd ref="swi01"/>
					<length value="500.0" type="physical"/>
				</track>
				<track id="trc03" type="mainTrack">
					<linearLocation id="trc03_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
						<associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
						<associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi01"/>
					<trackEnd ref="swi02"/>
					<length value="4000.0" type="physical"/>
				</track>
				<track id="trc04" type="mainTrack">
					<name name="2" language="en"/>
					<linearLocation id="trc04_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi02"/>
					<trackEnd ref="bus03"/>
					<length type="physical" value="500.0"/>
				</track>
				<track id="trc05" type="secondaryTrack">
					<name name="1" language="en"/>
					<linearLocation id="trc05_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi03"/>
					<trackEnd ref="bus04"/>
					<length value="450.0" type="physical"/>
				</track>
				<track id="trc06" type="sidingTrack">
					<linearLocation id="trc06_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="bus05"/>
					<trackEnd ref="swi03"/>
					<length value="200.0" type="physical"/>
				</track>
				<track id="trc07" type="connectingTrack">
					<linearLocation id="trc07_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi02"/>
					<trackEnd ref="swi03"/>
					<length value="50.0" type="physical"/>
				</track>
			</tracks>
			<trainDetectionElements>
				<trainDetectionElement id="tde01" type="axleCounter">
					<spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde02" type="axleCounter">
					<spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde03" type="axleCounter">
					<spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde04" type="axleCounter">
					<spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde05" type="axleCounter">
					<spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde06" type="insulatedRailJoint">
					<spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde07" type="insulatedRailJoint">
					<spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde08" type="insulatedRailJoint">
					<spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde09" type="insulatedRailJoint">
					<spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde10" type="insulatedRailJoint">
					<spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
					<spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde12" type="axleCounter">
					<spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
					</spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde13" type="axleCounter">
					<spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
					</spotLocation>
				</trainDetectionElement>
			</trainDetectionElements>
		</functionalInfrastructure>
		<infrastructureStates>
			<infrastructureState id="iss01" value="operational">
				<name name="operational infrastructure 2018" language="en"/>
				<elementState id="ess01" refersToElement="lcr01" value="operational">
					<name name="levelCrossing in operation" language="en"/>
					<validityTime>
						<periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
							<periodRule>
								<period from="06:00:00" to="22:00:00"/>
							</periodRule>
						</periodBitmask>
					</validityTime>
				</elementState>
			</infrastructureState>
		</infrastructureStates>
	</infrastructure>
	<interlocking>
		<assetsForInterlockings>
			<assetsForInterlocking id="ass_simpex_v0.9">
				<tracksIL>
					<trackIL id="trc01il">
						<refersTo ref="trc01"/>
					</trackIL>
					<trackIL id="trc02il">
						<refersTo ref="trc02"/>
					</trackIL>
				</tracksIL>
				<tvdSections>
					<tvdSection isBerthingTrack="true" id="A02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau A02"/>
						<hasDemarcatingBufferstop ref="bus02"/>
						<hasExitSignal ref="mb_sig01"/>
						<hasDemarcatingTraindetector ref="tde02"/>
						<hasResetStrategy ref="rst_swr_noconf" />
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="A68W02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau pt68W02"/>
						<hasDemarcatingTraindetector ref="tde01"/>
						<hasDemarcatingTraindetector ref="tde02"/>
						<hasDemarcatingTraindetector ref="tde03"/>
						<hasResetStrategy ref="rst_swr_noconf" />
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="A03T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau A03"/>
						<hasDemarcatingTraindetector ref="tde03"/>
						<hasDemarcatingTraindetector ref="tde04"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="X01T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau X01"/>
						<hasDemarcatingTraindetector ref="tde04"/>
						<hasDemarcatingTraindetector ref="tde12"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="LX2.5T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="openline LX2.5"/>
						<hasDemarcatingTraindetector ref="tde12"/>
						<hasDemarcatingTraindetector ref="tde13"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="X02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="openline X02"/>
						<hasDemarcatingTraindetector ref="tde13"/>
						<hasDemarcatingTraindetector ref="tde05"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="B03T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="entry B03"/>
						<hasDemarcatingTraindetector ref="tde06"/>
						<hasDemarcatingTraindetector ref="tde07"/>
						<hasResetStrategy ref="rst_cd"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="B69W03T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="Cstadt 69W03"/>
						<hasDemarcatingTraindetector ref="tde07"/>
						<hasDemarcatingTraindetector ref="tde08"/>
						<hasDemarcatingTraindetector ref="tde09"/>
						<hasResetStrategy ref="rst_cd"/>
					</tvdSection>
					<tvdSection isBerthingTrack="true" id="B01T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="Cstadt B01"/>
						<hasDemarcatingBufferstop ref="bus03"/>
						<hasExitSignal ref="ls_sig04"/>
						<hasDemarcatingTraindetector ref="tde08"/>
						<hasResetStrategy ref="rst_uc"/>
					</tvdSection>
				</tvdSections>
				<switchesIL>
					<switchIL returnsToPreferredPosition="false" id="pt_swi01" isKeyLocked="false" maxThrowTime="PT10S" typicalThrowTime="PT6S"
						preferredPosition="right" numberOfBladeSwitchActuators="2" numberOfFrogSwitchActuators="0">
						<designator register="_SimpleRegister" entry="68W02" />
						<refersTo ref="swi01" />
						<connectedToPowerSupply ref="ups01" />
						<branchLeft ref="trc01il" />
						<branchRight ref="trc02il" />
					</switchIL>
					<switchIL returnsToPreferredPosition="true" id="pt_swi02" isKeyLocked="false" maxThrowTime="PT10S" typicalThrowTime="PT6S"
						 numberOfBladeSwitchActuators="1" numberOfFrogSwitchActuators="0">
						<designator register="_SimpleRegister" entry="69W03"/>
						<refersTo ref="swi02" />
						<connectedToPowerSupply ref="ups01"/>
						<branchLeft ref="trc04" />
						<branchRight ref="trc07" />
					</switchIL>
				</switchesIL>
				<signalsIL>
					<signalIL id="mb_sig01" isNotWired="true" releaseSpeed="0" malfunctionSpeed="0" approachSpeed="0" passingSpeed="0" releaseDelay="PT5S" function="exit">
						<designator register="_SimpleRegister" entry="Arnau 68N2"/>
						<refersTo ref="sig01" />
					</signalIL>
					<signalIL id="mb_sig02" isNotWired="true" releaseSpeed="20" malfunctionSpeed="20" approachSpeed="20" passingSpeed="40" releaseDelay="PT5S" function="exit">
						<designator register="_SimpleRegister" entry="Arnau 68N1"/>
						<refersTo ref="sig02" />
					</signalIL>
					<signalIL id="ls_sig04" isNotWired="false" releaseSpeed="0" malfunctionSpeed="0" approachSpeed="0" passingSpeed="0" releaseDelay="PT5S" function="entry" callOnAspectTime="PT90S">
						<designator register="_SimpleRegister" entry="Cstadt 69A"/>
						<refersTo ref="sig04" />
					</signalIL>
				</signalsIL>
				<routeReleaseGroupsRear>
					<routeReleaseGroupRear delay="PT1S" id="prt02" typicalDelay="PT2S">
						<designator register="_SimpleRegister" entry="tm_A02T"/>
						<hasTvdSection ref="A02T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT10S" id="prt03" typicalDelay="PT7S" >
						<designator register="_SimpleRegister" entry="tm_A68W02T"/>
						<hasTvdSection ref="A68W02T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt04" typicalDelay="PT2S" >
						<designator register="_SimpleRegister" entry="tm_A03T"/>
						<hasTvdSection ref="A03T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt05" typicalDelay="PT2S" >
						<designator register="_SimpleRegister" entry="tm_X01T"/>
						<hasTvdSection ref="X01T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT20S" id="prt06" typicalDelay="PT15S">
						<designator register="_SimpleRegister" entry="tm_LX2.5T"/>
						<hasTvdSection ref="LX2.5T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt07" typicalDelay="PT2S">
						<designator register="_SimpleRegister" entry="tm_X02T"/>
						<hasTvdSection ref="X02T"/>
					</routeReleaseGroupRear>
				</routeReleaseGroupsRear>
				<routes>
					<route id="rt_sig02_sig04" locksAutomatically="false" processingDelay="PT1S" >
						<designator register="_SimpleRegister" entry="Route_68N1_69A"/>
						<handlesRouteType ref="rt_main"/>
						<routeActivationSection id="rt_act01" delayForLock="PT2S" automaticReleaseDelay="PT5S">
							<designator register="_SimpleRegister" entry="activation Route_68N1_69A"/>
							<activationSection ref="A02T"/>
						</routeActivationSection>
						<facingSwitchInPosition inPosition="left">
							<refersToSwitch ref="pt_swi01"/>
						</facingSwitchInPosition>
						<hasTvdSection ref="A68W02T"/>
						<hasTvdSection ref="A03T"/>
						<hasTvdSection ref="X01T"/>
						<hasTvdSection ref="LX2.5T"/>
						<hasTvdSection ref="X02T"/>
						<routeEntry id="rts_68N1">
							<designator register="_SimpleRegister" entry="Arnau 68N1"/>
							<refersTo ref="mb_sig02"/>
							<nonReplacement ref="A68W02T"/>
						</routeEntry>
						<hasReleaseGroup ref="prt02"/>
						<hasReleaseGroup ref="prt03"/>
						<hasReleaseGroup ref="prt04"/>
						<hasReleaseGroup ref="prt05"/>
						<hasReleaseGroup ref="prt06"/>
						<hasReleaseGroup ref="prt07"/>
						<routeExit id="rtd_69A">
							<designator register="_SimpleRegister" entry="Cstadt 69A"/>
							<refersTo ref="ls_sig04"/>
							<hasDangerPoint ref="dp01" />
							<hasOverlap ref="ov01" />
						</routeExit>
						<additionalRelation usage="inFlankProtection" ref="rtr01"/>
					</route>
				</routes>
				<routeRelations>
					<routeRelation id="rtr01">
						<requiredSectionState mustOrShould="must" proving="continuously">
							<relatedSectionAndVacancy inState="occupied">
								<refersToSection ref="A02T" />
							</relatedSectionAndVacancy>
						</requiredSectionState>
					</routeRelation>
				</routeRelations>
				<overlaps>
					<overlap id="ov01" overlapValidityTime="PT60S" overlapSpeed="0.0">
						<designator register="_SimpleRegister" entry="Overlap 69A-P2"/>
						<activeForApproachRoute ref="rt_sig02_sig04"/>
						<requiresSwitchInPosition mustOrShould="should" proving="oneOff">
							<relatedSwitchAndPosition inPosition="left">
								<refersToSwitch ref="pt_swi02" />
							</relatedSwitchAndPosition>
						</requiresSwitchInPosition>
						<hasTvdSection ref="B03T"/>
						<hasTvdSection ref="B69W03T"/>
						<isLimitedBy ref="tde07"/>
						<overlapRelease id="ov01_rl">
							<designator register="_SimpleRegister" entry="ov01 Release"/>
							<releaseTriggerSection ref="X02T"/>
							<overlapReleaseTimer timerValue="PT60S" overlapReleaseCondition="startTimerUponOccupation" />
						</overlapRelease>
					</overlap>
				</overlaps>
				<dangerPoints>
					<dangerPoint id="dp01" distance="300.0" releaseSpeed="0.0">
						<designator register="_SimpleRegister" entry="DPe69P2"/>
						<lastSupervisedSectionBeforeDangerPoint ref="B69W03T"/>
						<situatedAtTrackAsset ref="B01T"/>
					</dangerPoint>
				</dangerPoints>
				<powerSuppliesIL>
					<powerSupplyIL id="ups01" numberOfSimultaneousSwitchingActuators="2" signalVoltageMode="automatic">
						<designator register="_SimpleRegister" entry="UPS-ARN01"/>
					</powerSupplyIL>
				</powerSuppliesIL>
			</assetsForInterlocking>
		</assetsForInterlockings>
		<specificInfrastructureManagers>
			<specificInfrastructureManager id="ILIM01">
				<designator register="_SimpleRegister" entry="BaneNor (JBV)"/>
                <belongsToInfrastructureManager ref="im_01"/>
				<ownsSetsOfAssets ref="ass_simpex_v0.9"/>
				<usesTypes>
					<hasAspect id="sig_closed_20" genericAspect="closed">
						<designator register="_SimpleRegister" entry="Signal 20A/B «Stopp"/>
					</hasAspect>
					<hasAspect id="sig_reducproceed_21" genericAspect="limitedProceed">
						<designator register="_SimpleRegister" entry="Signal 21 «Kjør med redusert hastighet"/> 
					</hasAspect> 
					<hasAspect id="sig_fullproceed_22" genericAspect="proceed">
						<designator register="_SimpleRegister" entry="Signal 22 «Kjør"/> 
					</hasAspect> 
					<hasAspect id="sig_caution_23" genericAspect="caution">
						<designator register="_SimpleRegister" entry="Signal 23 «Forvent stopp"/> 
					</hasAspect> 
					<hasAspect id="sig_warning_24" genericAspect="warning" >
						<designator register="_SimpleRegister" entry="Signal 24 «Forvent kjør med redusert hastighet"/> 
					</hasAspect> 
					<hasAspect id="sig_warning_25" genericAspect="warning">
						<designator register="_SimpleRegister" entry="Signal 25 «Forvent kjør"/> 
					</hasAspect> 
					<hasAspect id="isp80" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed80"/> 
					</hasAspect> 
					<hasAspect id="isp60" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed60"/> 
					</hasAspect> 
					<hasAspect id="isp50" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed50"/> 
					</hasAspect> 
					<hasAspect id="idirL" genericAspect="informative">
						<designator register="_SimpleRegister" entry="directionL"/> 
					</hasAspect> 
					<hasAspect id="idirN" genericAspect="informative">
						<designator register="_SimpleRegister" entry="directionN"/> 
					</hasAspect> 
					<hasTVDresetStrategy id="rst_uc" resetStrategy="unconditionalReset">
						<designator register="_SimpleRegister" entry="unconditional reset"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_cd" resetStrategy="conditionalReset">
						<designator register="_SimpleRegister" entry="conditional reset"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_swr_noconf" resetStrategy="sweepRunWithoutConfirmation">
						<designator register="_SimpleRegister" entry="sweeprun without confirmation"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_swr_conf" resetStrategy="sweepRunWithConfirmation">
						<designator register="_SimpleRegister" entry="sweeprun with confirmation"/> 
					</hasTVDresetStrategy> 
					<hasRouteType id="rt_main" genericRouteType="normal">
						<designator register="_SimpleRegister" entry="normal main route for trains"/> 
					</hasRouteType> 
				</usesTypes>
			</specificInfrastructureManager>
		</specificInfrastructureManagers>
	</interlocking>
</railML>

Splitting

When extracting (reading) Arnau software interface also reads the rt_sig02_sig04 and its flanks and overlaps.

This means e.g. signal 69A and partially station Cstadt are also extracted (read) when extracting (reading) station Arnau.

Arnau
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml="http://www.opengis.net/gml/3.2/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd" version="3.2">
	<metadata>
		<dc:format>3.2</dc:format>
		<dc:identifier>3</dc:identifier>
		<dc:source>railML.org</dc:source>
		<dc:title xml:lang="en">Simple Example v12 railML 3.2</dc:title>
		<dc:language>en</dc:language>
		<dc:creator xml:lang="de">railML.org</dc:creator>
		<dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
		<dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
		<dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.2 Simple Example</dc:rights>
	</metadata>
	<common id="co_01">
		<organizationalUnits>
			<organizationalUnit id="im_01" code="SZDC"/>
		</organizationalUnits>
		<speedProfiles>
			<speedProfile id="spp01" influence="increasing"/>
		</speedProfiles>
		<positioning>
			<geometricPositioningSystems>
				<geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
					<name name="WGS84" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</geometricPositioningSystem>
				<geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
					<name name="ETRS89_UTMzone32N" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</geometricPositioningSystem>
			</geometricPositioningSystems>
			<linearPositioningSystems>
				<linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
					<name name="railway line 6869 mileage" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</linearPositioningSystem>
			</linearPositioningSystems>
			<screenPositioningSystems>
				<screenPositioningSystem pxX="1024" pxY="768" id="scs01">
					<name name="screen visualization coordinate system" language="en"/>
					<isValid from="2018-01-01" to="2018-12-31"/>
				</screenPositioningSystem>
			</screenPositioningSystems>
		</positioning>
	</common>
	<infrastructure id="is_01">
		<topology>
			<netElements>
				<netElement id="ne_a01" length="500.0">
					<relation ref="nr_a01a02"/>
					<relation ref="nr_a01a03"/>
					<associatedPositioningSystem id="ne_a01_aps01">
						<intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a02" length="500.0">
					<relation ref="nr_a01a02"/>
					<relation ref="nr_a02a03"/>
					<associatedPositioningSystem id="ne_a02_aps01">
						<intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a03" length="200.0">
					<relation ref="nr_a01a03"/>
					<relation ref="nr_a02a03"/>
					<relation ref="nr_a03x01"/>
					<associatedPositioningSystem id="ne_a03_aps01">
						<intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because route rt_sig02_sig04 begins at Arnau and refers to overlap ov01 and danger point dp01 which refer to B69W03T and B01T 
				which refer to tde08 which is located at ne_b01 -->
				<netElement id="ne_b01" length="500.0">
					<relation ref="nr_b01b03"/>
					<relation ref="nr_b01b04"/>
					<associatedPositioningSystem id="ne_b01_aps01">
						<intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because switches are not divided into parts -->
				<netElement id="ne_b02" length="450.0">
					<relation ref="nr_b02b04"/>
					<relation ref="nr_b02b05"/>
					<associatedPositioningSystem id="ne_b02_aps01">
						<intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because route rt_sig02_sig04 begins at Arnau and refers to tvd section X02T which refers to tde05 which is located at ne_b03 -->
				<netElement id="ne_b03" length="200.0">
					<relation ref="nr_b01b03"/>
					<relation ref="nr_b03b04"/>
					<relation ref="nr_x01b03"/>
					<associatedPositioningSystem id="ne_b03_aps01">
						<intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because route rt_sig02_sig04 begins at Arnau and refers to overlap ov01 and danger point dp01 which refer to B69W03T and B01T 
				which refer to tde09 which is located at ne_b04 -->
				<netElement id="ne_b04" length="50.0">
					<relation ref="nr_b01b04"/>
					<relation ref="nr_b02b04"/>
					<relation ref="nr_b03b04"/>
					<relation ref="nr_b04b05"/>
					<associatedPositioningSystem id="ne_b04_aps01">
						<intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because switches are not divided into parts -->
				<netElement id="ne_b05" length="200.0">
					<relation ref="nr_b02b05"/>
					<relation ref="nr_b04b05"/>
					<associatedPositioningSystem id="ne_b05_aps01">
						<intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
						<intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because route rt_sig02_sig04 begins at Arnau and refers to tvd section X01T which refers to tde12 which is located at ne_x01 -->
				<netElement id="ne_x01" length="3600.0">
					<relation ref="nr_a03x01"/>
					<relation ref="nr_x01b03"/>
					<associatedPositioningSystem id="ne_x01_aps01">
						<intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_a11">
					<relation ref="nr_a11x11"/>
					<elementCollectionUnordered id="ne_a11_ecu01">
						<elementPart ref="ne_a01"/>
						<elementPart ref="ne_a02"/>
						<elementPart ref="ne_a03"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne_a11_aps01">
						<intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
							<linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because aggregates microscopic net elements which are locations of functional IS referred from route rt_sig02_sig04 -->
				<netElement id="ne_b11">
					<relation ref="nr_x11b11"/>
					<elementCollectionUnordered id="ne_b11_ecu01">
						<elementPart ref="ne_b01"/>
						<elementPart ref="ne_b02"/>
						<elementPart ref="ne_b03"/>
						<elementPart ref="ne_b04"/>
						<elementPart ref="ne_b05"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne_b11_aps01">
						<intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
							<linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
				<!-- exported because aggregates microscopic net elements which are locations of functional IS referred from route rt_sig02_sig04 -->
				<netElement id="ne_x11">
					<relation ref="nr_a11x11"/>
					<relation ref="nr_x11b11"/>
					<elementCollectionOrdered id="ne_x11_ecu01">
						<elementPart ref="ne_x01"/>
					</elementCollectionOrdered>
					<associatedPositioningSystem id="ne_x11_aps01">
						<intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<isValid from="2018-01-01" to="2018-12-31"/>
					</associatedPositioningSystem>
				</netElement>
			</netElements>
			<netRelations>
				<netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
					<elementA ref="ne_a01"/>
					<elementB ref="ne_a02"/>
				</netRelation>
				<netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a01"/>
					<elementB ref="ne_a03"/>
				</netRelation>
				<netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a02"/>
					<elementB ref="ne_a03"/>
				</netRelation>
				<netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b01"/>
					<elementB ref="ne_b03"/>
				</netRelation>
				<netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
					<elementA ref="ne_b01"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b02"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_b02"/>
					<elementB ref="ne_b05"/>
				</netRelation>
				<netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_b03"/>
					<elementB ref="ne_b04"/>
				</netRelation>
				<netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
					<elementA ref="ne_b04"/>
					<elementB ref="ne_b05"/>
				</netRelation>
				<netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_a03"/>
					<elementB ref="ne_x01"/>
				</netRelation>
				<netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_x01"/>
					<elementB ref="ne_b03"/>
				</netRelation>
				<netRelation id="nr_a11x11" positionOnA="0" positionOnB="0" navigability="Both">
					<elementA ref="ne_a11"/>
					<elementB ref="ne_x11"/>
				</netRelation>
				<netRelation id="nr_x11b11" positionOnA="1" positionOnB="0" navigability="Both">
					<elementA ref="ne_x11"/>
					<elementB ref="ne_b11"/>
				</netRelation>
			</netRelations>
			<networks>
				<network id="nw01">
					<level id="lv0" descriptionLevel="Micro">
						<networkResource ref="ne_a01"/>
						<networkResource ref="ne_a02"/>
						<networkResource ref="ne_a03"/>
						<networkResource ref="ne_b01"/>
						<networkResource ref="ne_b02"/>
						<networkResource ref="ne_b03"/>
						<networkResource ref="ne_b04"/>
						<networkResource ref="ne_b05"/>
						<networkResource ref="ne_x01"/>
						<networkResource ref="nr_a01a02"/>
						<networkResource ref="nr_a01a03"/>
						<networkResource ref="nr_a02a03"/>
						<networkResource ref="nr_b01b03"/>
						<networkResource ref="nr_b01b04"/>
						<networkResource ref="nr_b02b04"/>
						<networkResource ref="nr_b02b05"/>
						<networkResource ref="nr_b03b04"/>
						<networkResource ref="nr_b04b05"/>
						<networkResource ref="nr_a03x01"/>
						<networkResource ref="nr_x01b03"/>
					</level>
					<level id="lv1" descriptionLevel="Meso">
						<networkResource ref="ne_a11"/>
						<networkResource ref="ne_b11"/>
						<networkResource ref="ne_x11"/>
						<networkResource ref="nr_a11x11"/>
						<networkResource ref="nr_x11b11"/>
					</level>
				</network>
			</networks>
		</topology>
		<geometry>
    </geometry>
		<functionalInfrastructure>
			<bufferStops>
				<bufferStop id="bus01" type="fixedBufferStop">
					<spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
					</spotLocation>
				</bufferStop>
				<bufferStop id="bus02" type="fixedBufferStop">
					<spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
					</spotLocation>
				</bufferStop>
				<!-- exported because route rt_sig02_sig04 begins at Arnau and refers to denager point dp01 which refers to tvd section B01T which refers to bus03 -->
				<bufferStop id="bus03" type="fixedBufferStop">
					<spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
						<linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
					</spotLocation>
				</bufferStop>
			</bufferStops>
			<lines>
				<line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<name name="Malý příklad železniční tratě" language="cz"/>
					<name name="Kleine Beispielstrecke" language="de"/>
					<name name="Simple Example railway line" language="en"/>
					<name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
					<name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
					<name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
					<name name="Lille eksempelbanen" language="no"/>
					<name name="Lilla Exempellinjen" language="se"/>
					<linearLocation id="lin01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
						</associatedNetElement>
					</linearLocation>
					<beginsInOP ref="opp01"/>
					<endsInOP ref="opp02"/>
					<lineLayout numberOfTracks="single"/>
					<linePerformance usablePlatformLength="200" maxSpeed="80">
						<allowedLoadingGauge ref="log01"/>
					</linePerformance>
				</line>
			</lines>
			<loadingGauges>
				<loadingGauge id="log01" code="GA"/>
			</loadingGauges>
			<operationalPoints>
				<operationalPoint id="opp01">
					<name name="Bf Arnau" language="de"/>
					<name name="Adamov" language="cz"/>
					<spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
					</spotLocation>
					<designator register="_SimpleRegister" entry="OAR"/>
					<infrastructureManagerRef ref="im_01"/>
					<opEquipment>
						<ownsPlatform ref="plf01"/>
						<ownsSignal ref="sig01"/>
						<ownsSignal ref="sig02"/>
						<ownsSignal ref="sig03"/>
					</opEquipment>
					<opOperations>
						<opOperation operationalType="station" trafficType="passenger"/>
					</opOperations>
				</operationalPoint>
				<operationalPoint id="opp02">
					<name name="Bf Cstadt" language="de"/>
					<name name="Bouzov" language="cz"/>
					<spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
					</spotLocation>
					<designator register="_SimpleRegister" entry="OCS"/>
					<infrastructureManagerRef ref="im_01"/>
					<opEquipment>
						<ownsSignal ref="sig04"/>
					</opEquipment>
				</operationalPoint>
			</operationalPoints>
			<platforms>
				<platform id="plf01">
					<spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
						<linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
					</spotLocation>
					<ownsPlatformEdge ref="ple01"/>
					<ownsPlatformEdge ref="ple02"/>
				</platform>
			</platforms>
			<platformEdges>
				<platformEdge id="ple01" height="550">
					<name name="Gleis 3" language="de"/>
					<linearLocation id="ple01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
							<linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
							<linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="200.00" validForDirection="both"/>
				</platformEdge>
				<platformEdge id="ple02" height="550">
					<name name="Gleis 2" language="de"/>
					<linearLocation id="ple02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
							<linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
							<linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
						</associatedNetElement>
					</linearLocation>
					<length type="physical" value="200.00" validForDirection="both"/>
				</platformEdge>
			</platformEdges>
			<signalsIS>
				<signalIS id="sig01" isSwitchable="false">
					<name name="68N2" language="en"/>
					<spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
						<linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig02" isSwitchable="false">
					<name name="68N1" language="en"/>
					<spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
						<linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig03" isSwitchable="false">
					<name name="68F" language="en"/>
					<spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
						<linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
					</spotLocation>
					<isEtcsSignal/>
					<isTrainMovementSignal/>
				</signalIS>
				<signalIS id="sig04" isSwitchable="true">
					<name name="69A" language="en"/>
					<spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
					</spotLocation>
					<isTrainMovementSignal/>
				</signalIS>
			</signalsIS>
			<speeds>
				<speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
					<linearLocation id="sps01_lloc01" applicationDirection="normal">
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
						</associatedNetElement>
					</linearLocation>
					<validForSpeedProfile ref="spp01"/>
				</speedSection>
				<speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
					<linearLocation id="sps02_lloc01" applicationDirection="reverse">
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
							<linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
						</associatedNetElement>
					</linearLocation>
				</speedSection>
			</speeds>
			<switchesIS>
				<switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
					<name name="68W02" language="en"/>
					<spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
					<rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
				</switchIS>
				<switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
					<name name="69W03" language="en"/>
					<spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
					<rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
				</switchIS>
				<!-- exported because trc07 refers to it -->
				<switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
					<name name="69W04" language="en"/>
					<spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
						<linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
					</spotLocation>
					<leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
					<rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
				</switchIS>
			</switchesIS>
			<tracks>
				<track id="trc01" type="mainTrack">
					<name name="2" language="en"/>
					<linearLocation id="trc01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="bus01"/>
					<trackEnd ref="swi01"/>
					<length value="500.0" type="physical"/>
				</track>
				<track id="trc02" type="secondaryTrack">
					<name name="1" language="en"/>
					<linearLocation id="trc02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="bus02"/>
					<trackEnd ref="swi01"/>
					<length value="500.0" type="physical"/>
				</track>
				<track id="trc03" type="mainTrack">
					<linearLocation id="trc03_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
						<associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
						<associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi01"/>
					<trackEnd ref="swi02"/>
					<length value="4000.0" type="physical"/>
				</track>
				<track id="trc04" type="mainTrack">
				<!-- exported because switch pt_swi02 refers to it from left branch -->
					<name name="2" language="en"/>
					<linearLocation id="trc04_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi02"/>
					<trackEnd ref="bus03"/>
					<length type="physical" value="500.0"/>
				</track>
				<track id="trc07" type="connectingTrack">
				<!-- exported because switch pt_swi02 refers to it from right branch -->
					<linearLocation id="trc07_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
					</linearLocation>
					<trackBegin ref="swi02"/>
					<trackEnd ref="swi03"/>
					<length value="50.0" type="physical"/>
				</track>
			</tracks>
			<trainDetectionElements>
				<trainDetectionElement id="tde01" type="axleCounter">
					<spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde02" type="axleCounter">
					<spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde03" type="axleCounter">
					<spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde04" type="axleCounter">
					<spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde05" type="axleCounter">
					<spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde06" type="insulatedRailJoint">
					<spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde07" type="insulatedRailJoint">
					<spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde08" type="insulatedRailJoint">
					<spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde09" type="insulatedRailJoint">
					<spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde12" type="axleCounter">
					<spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
						<linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
					</spotLocation>
				</trainDetectionElement>
				<trainDetectionElement id="tde13" type="axleCounter">
					<spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
					</spotLocation>
				</trainDetectionElement>
			</trainDetectionElements>
		</functionalInfrastructure>
	</infrastructure>
	<interlocking>
		<assetsForInterlockings>
			<assetsForInterlocking id="ass_simpex_v0.9">
				<tracksIL>
					<trackIL id="trc01il">
						<refersTo ref="trc01"/>
					</trackIL>
					<trackIL id="trc02il">
						<refersTo ref="trc02"/>
					</trackIL>
					<trackIL id="trc04il">
						<refersTo ref="trc04"/>
					</trackIL>
					<trackIL id="trc07il">
						<refersTo ref="trc07"/>
					</trackIL>
				</tracksIL>
				<tvdSections>
					<tvdSection isBerthingTrack="true" id="A02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau A02"/>
						<hasDemarcatingBufferstop ref="bus02"/>
						<hasExitSignal ref="mb_sig01"/>
						<hasDemarcatingTraindetector ref="tde02"/>
						<hasResetStrategy ref="rst_swr_noconf" />
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="A68W02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau pt68W02"/>
						<hasDemarcatingTraindetector ref="tde01"/>
						<hasDemarcatingTraindetector ref="tde02"/>
						<hasDemarcatingTraindetector ref="tde03"/>
						<hasResetStrategy ref="rst_swr_noconf" />
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="A03T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau A03"/>
						<hasDemarcatingTraindetector ref="tde03"/>
						<hasDemarcatingTraindetector ref="tde04"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="X01T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="Arnau X01"/>
						<hasDemarcatingTraindetector ref="tde04"/>
						<hasDemarcatingTraindetector ref="tde12"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="LX2.5T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="openline LX2.5"/>
						<hasDemarcatingTraindetector ref="tde12"/>
						<hasDemarcatingTraindetector ref="tde13"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="X02T" partialRouteReleaseDelay="PT1S" residualRouteCancellationDelay="PT90S" technology="axleCounter">
						<designator register="_SimpleRegister" entry="openline X02"/>
						<hasDemarcatingTraindetector ref="tde13"/>
						<hasDemarcatingTraindetector ref="tde05"/>
						<hasResetStrategy ref="rst_swr_conf"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="B03T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="entry B03"/>
						<hasDemarcatingTraindetector ref="tde06"/>
						<hasDemarcatingTraindetector ref="tde07"/>
						<hasResetStrategy ref="rst_cd"/>
					</tvdSection>
					<tvdSection isBerthingTrack="false" id="B69W03T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="Cstadt 69W03"/>
						<hasDemarcatingTraindetector ref="tde07"/>
						<hasDemarcatingTraindetector ref="tde08"/>
						<hasDemarcatingTraindetector ref="tde09"/>
						<hasResetStrategy ref="rst_cd"/>
					</tvdSection>
					<tvdSection isBerthingTrack="true" id="B01T" partialRouteReleaseDelay="PT4S" residualRouteCancellationDelay="PT90S" technology="trackCircuit">
						<designator register="_SimpleRegister" entry="Cstadt B01"/>
						<hasDemarcatingBufferstop ref="bus03"/>
						<hasExitSignal ref="ls_sig04"/>
						<hasDemarcatingTraindetector ref="tde08"/>
						<hasResetStrategy ref="rst_uc"/>
					</tvdSection>
				</tvdSections>
				<switchesIL>
					<switchIL returnsToPreferredPosition="false" id="pt_swi01" isKeyLocked="false" maxThrowTime="PT10S" typicalThrowTime="PT6S"
						preferredPosition="right" numberOfBladeSwitchActuators="2" numberOfFrogSwitchActuators="0">
						<designator register="_SimpleRegister" entry="68W02" />
						<refersTo ref="swi01" />
						<connectedToPowerSupply ref="ups01" />
						<branchLeft ref="trc01il" />
						<branchRight ref="trc02il" />
					</switchIL>
					<switchIL returnsToPreferredPosition="true" id="pt_swi02" isKeyLocked="false" maxThrowTime="PT10S" typicalThrowTime="PT6S"
						 numberOfBladeSwitchActuators="1" numberOfFrogSwitchActuators="0">
						<designator register="_SimpleRegister" entry="69W03"/>
						<refersTo ref="swi02" />
						<connectedToPowerSupply ref="ups01"/>
						<branchLeft ref="trc04il" />
						<branchRight ref="trc07il" />
					</switchIL>
				</switchesIL>
				<signalsIL>
					<signalIL id="mb_sig01" isNotWired="true" releaseSpeed="0" malfunctionSpeed="0" approachSpeed="0" passingSpeed="0" releaseDelay="PT5S" function="exit">
						<designator register="_SimpleRegister" entry="Arnau 68N2"/>
						<refersTo ref="sig01" />
					</signalIL>
					<signalIL id="mb_sig02" isNotWired="true" releaseSpeed="20" malfunctionSpeed="20" approachSpeed="20" passingSpeed="40" releaseDelay="PT5S" function="exit">
						<designator register="_SimpleRegister" entry="Arnau 68N1"/>
						<refersTo ref="sig02" />
					</signalIL>
					<signalIL id="ls_sig04" isNotWired="false" releaseSpeed="0" malfunctionSpeed="0" approachSpeed="0" passingSpeed="0" releaseDelay="PT5S" function="entry" callOnAspectTime="PT90S">
						<designator register="_SimpleRegister" entry="Cstadt 69A"/>
						<refersTo ref="sig04" />
					</signalIL>
				</signalsIL>
				<routeReleaseGroupsRear>
					<routeReleaseGroupRear delay="PT1S" id="prt02" typicalDelay="PT2S">
						<designator register="_SimpleRegister" entry="tm_A02T"/>
						<hasTvdSection ref="A02T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT10S" id="prt03" typicalDelay="PT7S" >
						<designator register="_SimpleRegister" entry="tm_A68W02T"/>
						<hasTvdSection ref="A68W02T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt04" typicalDelay="PT2S" >
						<designator register="_SimpleRegister" entry="tm_A03T"/>
						<hasTvdSection ref="A03T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt05" typicalDelay="PT2S" >
						<designator register="_SimpleRegister" entry="tm_X01T"/>
						<hasTvdSection ref="X01T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT20S" id="prt06" typicalDelay="PT15S">
						<designator register="_SimpleRegister" entry="tm_LX2.5T"/>
						<hasTvdSection ref="LX2.5T"/>
					</routeReleaseGroupRear>
					<routeReleaseGroupRear delay="PT1S" id="prt07" typicalDelay="PT2S">
						<designator register="_SimpleRegister" entry="tm_X02T"/>
						<hasTvdSection ref="X02T"/>
					</routeReleaseGroupRear>
				</routeReleaseGroupsRear>
				<routes>
					<route id="rt_sig02_sig04" locksAutomatically="false" processingDelay="PT1S" >
						<designator register="_SimpleRegister" entry="Route_68N1_69A"/>
						<handlesRouteType ref="rt_main"/>
						<routeActivationSection id="rt_act01" delayForLock="PT2S" automaticReleaseDelay="PT5S">
							<designator register="_SimpleRegister" entry="activation Route_68N1_69A"/>
							<activationSection ref="A02T"/>
						</routeActivationSection>
						<facingSwitchInPosition inPosition="left">
							<refersToSwitch ref="pt_swi01"/>
						</facingSwitchInPosition>
						<hasTvdSection ref="A68W02T"/>
						<hasTvdSection ref="A03T"/>
						<hasTvdSection ref="X01T"/>
						<hasTvdSection ref="LX2.5T"/>
						<hasTvdSection ref="X02T"/>
						<routeEntry id="rts_68N1">
							<designator register="_SimpleRegister" entry="Arnau 68N1"/>
							<refersTo ref="mb_sig02"/>
							<nonReplacement ref="A68W02T"/>
						</routeEntry>
						<hasReleaseGroup ref="prt02"/>
						<hasReleaseGroup ref="prt03"/>
						<hasReleaseGroup ref="prt04"/>
						<hasReleaseGroup ref="prt05"/>
						<hasReleaseGroup ref="prt06"/>
						<hasReleaseGroup ref="prt07"/>
						<routeExit id="rtd_69A">
							<designator register="_SimpleRegister" entry="Cstadt 69A"/>
							<refersTo ref="ls_sig04"/>
							<hasDangerPoint ref="dp01" />
							<hasOverlap ref="ov01" />
						</routeExit>
						<additionalRelation usage="inFlankProtection" ref="rtr01"/>
					</route>
				</routes>
				<routeRelations>
					<routeRelation id="rtr01">
						<requiredSectionState mustOrShould="must" proving="continuously">
							<relatedSectionAndVacancy inState="occupied">
								<refersToSection ref="A02T" />
							</relatedSectionAndVacancy>
						</requiredSectionState>
					</routeRelation>
				</routeRelations>
				<overlaps>
					<overlap id="ov01" overlapValidityTime="PT60S" overlapSpeed="0.0">
						<designator register="_SimpleRegister" entry="Overlap 69A-P2"/>
						<activeForApproachRoute ref="rt_sig02_sig04"/>
						<requiresSwitchInPosition mustOrShould="should" proving="oneOff">
							<relatedSwitchAndPosition inPosition="left">
								<refersToSwitch ref="pt_swi02" />
							</relatedSwitchAndPosition>
						</requiresSwitchInPosition>
						<hasTvdSection ref="B03T"/>
						<hasTvdSection ref="B69W03T"/>
						<isLimitedBy ref="tde07"/>
						<overlapRelease id="ov01_rl">
							<designator register="_SimpleRegister" entry="ov01 Release"/>
							<releaseTriggerSection ref="X02T"/>
							<overlapReleaseTimer timerValue="PT60S" overlapReleaseCondition="startTimerUponOccupation" />
						</overlapRelease>
					</overlap>
				</overlaps>
				<dangerPoints>
					<dangerPoint id="dp01" distance="300.0" releaseSpeed="0.0">
						<designator register="_SimpleRegister" entry="DPe69P2"/>
						<lastSupervisedSectionBeforeDangerPoint ref="B69W03T"/>
						<situatedAtTrackAsset ref="B01T"/>
					</dangerPoint>
				</dangerPoints>
				<powerSuppliesIL>
					<powerSupplyIL id="ups01" numberOfSimultaneousSwitchingActuators="2" signalVoltageMode="automatic">
						<designator register="_SimpleRegister" entry="UPS-ARN01"/>
					</powerSupplyIL>
				</powerSuppliesIL>
			</assetsForInterlocking>
		</assetsForInterlockings>
		<specificInfrastructureManagers>
			<specificInfrastructureManager id="ILIM01">
				<designator register="_SimpleRegister" entry="BaneNor (JBV)"/>
                <belongsToInfrastructureManager ref="im_01"/>
				<ownsSetsOfAssets ref="ass_simpex_v0.9"/>
				<usesTypes>
					<hasAspect id="sig_closed_20" genericAspect="closed">
						<designator register="_SimpleRegister" entry="Signal 20A/B «Stopp"/>
					</hasAspect>
					<hasAspect id="sig_reducproceed_21" genericAspect="limitedProceed">
						<designator register="_SimpleRegister" entry="Signal 21 «Kjør med redusert hastighet"/> 
					</hasAspect> 
					<hasAspect id="sig_fullproceed_22" genericAspect="proceed">
						<designator register="_SimpleRegister" entry="Signal 22 «Kjør"/> 
					</hasAspect> 
					<hasAspect id="sig_caution_23" genericAspect="caution">
						<designator register="_SimpleRegister" entry="Signal 23 «Forvent stopp"/> 
					</hasAspect> 
					<hasAspect id="sig_warning_24" genericAspect="warning" >
						<designator register="_SimpleRegister" entry="Signal 24 «Forvent kjør med redusert hastighet"/> 
					</hasAspect> 
					<hasAspect id="sig_warning_25" genericAspect="warning">
						<designator register="_SimpleRegister" entry="Signal 25 «Forvent kjør"/> 
					</hasAspect> 
					<hasAspect id="isp80" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed80"/> 
					</hasAspect> 
					<hasAspect id="isp60" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed60"/> 
					</hasAspect> 
					<hasAspect id="isp50" genericAspect="informative">
						<designator register="_SimpleRegister" entry="speed50"/> 
					</hasAspect> 
					<hasAspect id="idirL" genericAspect="informative">
						<designator register="_SimpleRegister" entry="directionL"/> 
					</hasAspect> 
					<hasAspect id="idirN" genericAspect="informative">
						<designator register="_SimpleRegister" entry="directionN"/> 
					</hasAspect> 
					<hasTVDresetStrategy id="rst_uc" resetStrategy="unconditionalReset">
						<designator register="_SimpleRegister" entry="unconditional reset"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_cd" resetStrategy="conditionalReset">
						<designator register="_SimpleRegister" entry="conditional reset"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_swr_noconf" resetStrategy="sweepRunWithoutConfirmation">
						<designator register="_SimpleRegister" entry="sweeprun without confirmation"/> 
					</hasTVDresetStrategy> 
					<hasTVDresetStrategy id="rst_swr_conf" resetStrategy="sweepRunWithConfirmation">
						<designator register="_SimpleRegister" entry="sweeprun with confirmation"/> 
					</hasTVDresetStrategy> 
					<hasRouteType id="rt_main" genericRouteType="normal">
						<designator register="_SimpleRegister" entry="normal main route for trains"/> 
					</hasRouteType> 
				</usesTypes>
			</specificInfrastructureManager>
		</specificInfrastructureManagers>
	</interlocking>
</railML>

Merging

Files are merged as in approach "split lines to line sections and stations" [6] .

Splitting one <netElement> into two <netElement>s

Example 4 - splitting track into parts

2024-09-09 railML splittingNetElementIntoParts.svg

Below is an example of splitting line section into two parts. Furthermore line section was already extracted in the previous step, therefore input file already includes connectors.

Input

The base for splitting of a track into pats is a line section between Arnau and Cstadt of the Simple Example – result of splitting the Simple example into stations and line sections.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- Bf Arnau covers net element a11 and Bf Cstadt covers b11. a11 and b11 are both linked to x11. Thus in this file x11 
and all the topology aggregated into x11 and all the functional IS referring to 
x11 and aggregated topology are extracted from Simple example -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01" length="3600.0">
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne_x01connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_x11">
          <relation ref="nr_ne_x11connector2"/>
          <relation ref="nr_connector4ne_x11"/>
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne_x11connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="connector1"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01"/>
        </netRelation>				
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="connector2"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_x01"/>
            <networkResource ref="connector1"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_ne_x01connector1"/>
            <networkResource ref="nr_connector3ne_x01"/>

						
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne_x11"/>
            <networkResource ref="connector2"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_x11connector2"/>
            <networkResource ref="nr_connector4ne_x11"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      

      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- associated net elements referring to a11 b11 are not extracted because are not aggregated into a11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <signalsIS>

        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">

<!-- associated net elements referring to a03, b03 and b01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- associated net elements referring to a03, b03 and a01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>

          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">

            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
<!-- associated net elements referring to a01 b03 are not extracted because are not aggregated into x11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Splitting

In the Simple example (link to the railML® website) there is only one <netElement> corresponding to the line section between Arnau and Cstadt. This means that net element should be split and replaced by two net elements.

In between of two split net elements a connector <netElement> should be inserted.

If splitting at linear coordinate 2500 then:

- every functional IS with coordinate ≤ 2500 should be extracted to file1;

- every functional IS with coordinate > 2500 should be extracted to file2;

- netElement1 beginning at milage 700 end ending at mileage 2500 should be added in file1;

- netElement2 beginning at milage 2500 end ending at mileage 4300 should be added in file2;

- connector2 should be inserted in the end of netElement1 in file1;

- connector2 should be inserted in the beginning of netElement1 in file2.

Initial net element will be lost.

Part at mileage 700-2500
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- track between Arnau and Cstadt in Simple example is a result of splitting line into stations and line sections.
In this example track will be split at linear coordinate 2500, therefore in this file all the functional IS with coordinate
more or equal than 700 and less or equal 2500 is extracted. In the second file functional IS with coordinates 
more thant 2500 and less than or aqual 4300 is extracted. -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01_part1" length="1800.0">
          <relation ref="nr_ne_x01_part1connector1"/>
          <relation ref="nr_connector5ne_x01_part1"/>
          <associatedPositioningSystem id="ne_x01_part1_aps01">
            <intrinsicCoordinate id="ne_x01_part1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_part1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="2500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of microscopic level-->
        <!-- Leftover connector after splitting line into line sections and stations. -->
        <netElement id="connector1">
          <relation ref="nr_ne_x01_part1connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- new connector needed for splitting track into parts -->
        <netElement id="connector5">
          <relation ref="nr_connector5ne_x01_part1"/>
          <associatedPositioningSystem id="connector5_aps01">
            <intrinsicCoordinate id="connector5_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_x11_part1">
          <relation ref="nr_ne_x11_part1connector2"/>
          <relation ref="nr_connector6ne_x11_part1"/>
          <elementCollectionOrdered id="ne_x11_part1_ecu01">
            <elementPart ref="ne_x01_part1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_part1_aps01">
            <intrinsicCoordinate id="ne_x11_part1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_part1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="2500.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
				<!-- Leftover connector after splitting line into line sections and stations. -->
        <netElement id="connector2">
          <relation ref="nr_ne_x11_part1connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				<!-- new connector neede for splitting track into parts -->
        <netElement id="connector6">
          <relation ref="nr_connector6ne_x11_part1"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector6_ecu01">
            <elementPart ref="connector5"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector6_aps01">
            <intrinsicCoordinate id="connector6_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
			</netElements>
      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01_part1connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01_part1"/>
          <elementB ref="connector1"/>
        </netRelation>
        <netRelation id="nr_connector5ne_x01_part1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector5"/>
          <elementB ref="ne_x01_part1"/>
        </netRelation>				
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11_part1connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11_part1"/>
          <elementB ref="connector2"/>
        </netRelation>
        <netRelation id="nr_connector6ne_x11_part1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector6"/>
          <elementB ref="ne_x11_part1"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_x01_part1"/>
            <networkResource ref="connector1"/>
            <networkResource ref="connector5"/>
						
            <networkResource ref="nr_ne_x01_part1connector1"/>
            <networkResource ref="nr_connector5ne_x01_part1"/>

						
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne_x11_part1"/>
            <networkResource ref="connector2"/>
            <networkResource ref="connector6"/>

            <networkResource ref="nr_ne_x11_part1connector2"/>
            <networkResource ref="nr_connector6ne_x11_part1"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      

      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01_part1" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part1 -->
            <associatedNetElement netElementRef="ne_x11_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>

          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <signalsIS>


        <signalIS id="sig11" isSwitchable="false">
					<!-- referred net element is changed to ne_x01_part1 -->
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01_part1" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
					<!-- referred net element is changed to ne_x01_part1 -->
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01_part1" applicationDirection="normal" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>

      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>

          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1. 
Management strategy for sequence attribute to be done. -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true" posBegin="0.0" posEnd="1800.0">
            </associatedNetElement>

          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde12" type="axleCounter">
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01_part1" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>

      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>
Part at mileage 2500-4300
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- track between Arnau and Cstadt in Simple example is a result of splitting line into stations and line sections.
In this example track will be split at linear coordinate 2500, therefore in this file all the functional IS with coordinate
more thant 2500 and less than or aqual 4300 is extracted. In the first file functional IS with coordinates 
more or equal than 700 and less or equal 2500 is extracted. -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01_part2" length="1800.0">
          <relation ref="nr_ne_x01_part2connector5"/>
          <relation ref="nr_connector3ne_x01_part2"/>
          <associatedPositioningSystem id="ne_x01_part2_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="2500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_part2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of microscopic level-->
        <!-- new connector neede for splitting track into parts -->
        <netElement id="connector5">
          <relation ref="nr_ne_x01_part2connector5"/>
          <associatedPositioningSystem id="connector5_aps01">
            <intrinsicCoordinate id="connector5_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- Leftover connector after splitting line into line sections and stations. -->
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01_part2"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_x11_part2">
          <relation ref="nr_ne_x11_part2connector6"/>
          <relation ref="nr_connector4ne_x11_part2"/>
          <elementCollectionOrdered id="ne_x11_part2_ecu01">
            <elementPart ref="ne_x01_part2"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_part2_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="2500.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_part2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
				<!-- new connector needed for splitting track into parts -->
        <netElement id="connector6">
          <relation ref="nr_ne_x11_part2connector6"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector6_ecu01">
            <elementPart ref="connector5"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector6_aps01">
            <intrinsicCoordinate id="connector6_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				<!-- Leftover connector after splitting line into line sections and stations. -->
        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11_part2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01_part2connector5" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01_part2"/>
          <elementB ref="connector5"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01_part2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01_part2"/>
        </netRelation>				
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11_part2connector6" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11_part2"/>
          <elementB ref="connector6"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11_part2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11_part2"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_x01_part2"/>
            <networkResource ref="connector5"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_ne_x01_part2connector5"/>
            <networkResource ref="nr_connector3ne_x01_part2"/>

						
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne_x11_part2"/>
            <networkResource ref="connector6"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_x11_part2connector6"/>
            <networkResource ref="nr_connector4ne_x11_part2"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->

            <associatedNetElement netElementRef="ne_x11_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <signalsIS>

        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
					<!-- referred net element is changed to ne_x11_part2 -->
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01_part2" applicationDirection="normal" pos="1100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig13" isSwitchable="false">
          <!-- referred net element is changed to ne_x11_part2 -->
					<spotLocation id="sig13_sloc01" netElementRef="ne_x01_part2" applicationDirection="normal" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">

<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->

            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->

            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>

          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 
Management strategy for sequence attribute to be done. -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true" posBegin="0.0" posEnd="1800.0">
            </associatedNetElement>

          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde13" type="axleCounter">
          <!-- referred net element is changed to ne_x11_part2 -->
					<spotLocation id="tde13_sloc01" netElementRef="ne_x01_part2" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>
    
  </infrastructure>
  

</railML>

Merging

Merged file is different from input in that it includes connectors as artefacts after splitting, partial net elements.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- this is result of merging two parts of track back together -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01_part1" length="1800.0">
          <relation ref="nr_ne_x01_part1connector1"/>
          <relation ref="nr_connector5ne_x01_part1"/>
          <associatedPositioningSystem id="ne_x01_part1_aps01">
            <intrinsicCoordinate id="ne_x01_part1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_part1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="2500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x01_part2" length="1800.0">
          <relation ref="nr_ne_x01_part2connector5"/>
          <relation ref="nr_connector3ne_x01_part2"/>
          <associatedPositioningSystem id="ne_x01_part2_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="2500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_part2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- connector net elements of microscopic level-->
        <!-- Leftover connectors after splitting line into line sections and stations. -->
        <netElement id="connector1">
          <relation ref="nr_ne_x01_part1connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01_part2"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <!-- new connector needed for splitting track into parts -->
        <netElement id="connector5">
          <relation ref="nr_connector5ne_x01_part1"/>
          <relation ref="nr_ne_x01_part2connector5"/>
          <associatedPositioningSystem id="connector5_aps01">
            <intrinsicCoordinate id="connector5_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="ne_x11_part1">
          <relation ref="nr_ne_x11_part1connector2"/>
          <relation ref="nr_connector6ne_x11_part1"/>
          <elementCollectionOrdered id="ne_x11_part1_ecu01">
            <elementPart ref="ne_x01_part1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_part1_aps01">
            <intrinsicCoordinate id="ne_x11_part1_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_part1_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="2500.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x11_part2">
          <relation ref="nr_ne_x11_part2connector6"/>
          <relation ref="nr_connector4ne_x11_part2"/>
          <elementCollectionOrdered id="ne_x11_part2_ecu01">
            <elementPart ref="ne_x01_part2"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_part2_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="2500.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_part2_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
				<!-- Leftover connectors after splitting line into line sections and stations. -->
        <netElement id="connector2">
          <relation ref="nr_ne_x11_part1connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11_part2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				<!-- new connector needed for splitting track into parts -->
        <netElement id="connector6">
          <relation ref="nr_connector6ne_x11_part1"/>
          <relation ref="nr_ne_x11_part2connector6"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector6_ecu01">
            <elementPart ref="connector5"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector6_aps01">
            <intrinsicCoordinate id="connector6_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01_part1connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01_part1"/>
          <elementB ref="connector1"/>
        </netRelation>
        <netRelation id="nr_connector5ne_x01_part1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector5"/>
          <elementB ref="ne_x01_part1"/>
        </netRelation>	
        <netRelation id="nr_ne_x01_part2connector5" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01_part2"/>
          <elementB ref="connector5"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01_part2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01_part2"/>
        </netRelation>	
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11_part1connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11_part1"/>
          <elementB ref="connector2"/>
        </netRelation>
        <netRelation id="nr_connector6ne_x11_part1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector6"/>
          <elementB ref="ne_x11_part1"/>
        </netRelation>
        <netRelation id="nr_ne_x11_part2connector6" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11_part2"/>
          <elementB ref="connector6"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11_part2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11_part2"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_x01_part1"/>
            <networkResource ref="ne_x01_part2"/>						
            <networkResource ref="connector1"/>
            <networkResource ref="connector5"/>
            <networkResource ref="connector3"/>						
            <networkResource ref="nr_ne_x01_part1connector1"/>
            <networkResource ref="nr_connector5ne_x01_part1"/>
            <networkResource ref="nr_ne_x01_part2connector5"/>
            <networkResource ref="nr_connector3ne_x01_part2"/>
						
          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_x11_part1"/>
            <networkResource ref="ne_x11_part2"/>						
            <networkResource ref="connector2"/>
            <networkResource ref="connector6"/>
            <networkResource ref="connector4"/>
            <networkResource ref="nr_ne_x11_part1connector2"/>
            <networkResource ref="nr_connector6ne_x11_part1"/>
            <networkResource ref="nr_ne_x11_part2connector6"/>
            <networkResource ref="nr_connector4ne_x11_part2"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01_part1" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
						<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part1 -->
            <associatedNetElement netElementRef="ne_x11_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>
						<!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector6" keepsOrientation="true">
            </associatedNetElement>
						<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->
            <associatedNetElement netElementRef="ne_x11_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <signalsIS>

        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
					<!-- referred net element is changed to ne_x11_part2 -->
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01_part2" applicationDirection="normal" pos="1100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig11" isSwitchable="false">
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01_part1" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01_part1" applicationDirection="normal" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
				
        <signalIS id="sig13" isSwitchable="false">
          <!-- referred net element is changed to ne_x11_part2 -->
					<spotLocation id="sig13_sloc01" netElementRef="ne_x01_part2" applicationDirection="normal" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>
						<!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector5" keepsOrientation="true">
            </associatedNetElement>
<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
				
				
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
						<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
						<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
						<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1 -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2500.0"/>
            </associatedNetElement>
						<!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector5" keepsOrientation="true">
            </associatedNetElement>
						<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
						<!-- new associated net element is inserted referring to newly inserted net element ne_x01_part1. 
						Management strategy for sequence attribute to be done. -->
            <associatedNetElement netElementRef="ne_x01_part1" keepsOrientation="true" posBegin="0.0" posEnd="1800.0">
            </associatedNetElement>
						<!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector5" keepsOrientation="true">
            </associatedNetElement>
						<!-- new associated net element is inserted referring to newly inserted net element ne_x11_part2 
						Management strategy for sequence attribute to be done. -->
            <associatedNetElement netElementRef="ne_x01_part2" keepsOrientation="true" posBegin="0.0" posEnd="1800.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde12" type="axleCounter">
					<!-- referred net element is changed to ne_x11_part1 -->
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01_part1" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <!-- referred net element is changed to ne_x11_part2 -->
					<spotLocation id="tde13_sloc01" netElementRef="ne_x01_part2" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Splitting functional infrastructure entities with <linearLocation> or <areaLocation>

Example 5 - splitting railway network into railway lines (lines overlap within a station)

Railway lines border each other within the railway station. Two railway lines cover disjoint sets of net elements only at the microscopic level.

2024-09-09 railML splittingNetwork (1).svg

Input

Railway lines meet each other at the railway station.

Thus, railway station should have two linear coordinates referring to both linear positioning systems of both lines.

Mesoscopic net element ne2 aggregates all the net elements belonging to the station, i.e. ne5, ne6 … ne_x.

From them ne5 to ne_x belongs to the line2. This is determined by linear locations of line, tracks and net elements referring to the same linear positioning system lps2.

It is not possible to determine that tracks or net elements belong to one line or other by means of aggregation because ne2 aggregates net elements covered by line1 and line2.

ne1 is covered by line2.

ne3 is covered by line1.

ne1 aggregates ne4.

ne3 aggregates ne7.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml4rail3="https://www.railml.org/schemas/3.2/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd">
  <common id="co_01">
    <positioning>
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01"
                                 startMeasure="0.0"
                                 endMeasure="50000.0">
          <name name="railway line1 mileage"
                language="en"/>
        </linearPositioningSystem>
        <linearPositioningSystem id="lps02"
                                 startMeasure="0.0"
                                 endMeasure="50000.0">
          <name name="railway line2 mileage"
                language="en"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
    </positioning>
  </common>
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne5"
                    length="500.0">
          <relation ref="nr_ne5ne_x"/>
          <relation ref="nr_ne6ne5"/>
          <associatedPositioningSystem id="ne5_aps01">
            <intrinsicCoordinate id="ne5_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="0.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne5_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="500.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x"
                    length="500.0">
          <relation ref="nr_ne5ne_x"/>
          <relation ref="nr_ne_xne4"/>
          <associatedPositioningSystem id="ne_x_aps01">
            <intrinsicCoordinate id="ne_x_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="500.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="1000.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne4"
                    length="500.0">
          <relation ref="nr_ne_xne4"/>
          <associatedPositioningSystem id="ne4_aps01">
            <intrinsicCoordinate id="ne4_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="1000.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne4_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps02"
                                measure="1500.0"/>
              <!--refers to the same positioning system as line 2-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne6"
                    length="500.0">
          <relation ref="nr_ne6ne5"/>
          <relation ref="nr_ne_yne6"/>
          <associatedPositioningSystem id="ne6_aps01">
            <intrinsicCoordinate id="ne6_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="4800.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne6_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="5300.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_y"
                    length="500.0">
          <relation ref="nr_ne7ne_y"/>
          <!-- approximation -->
          <relation ref="nr_ne_yne6"/>
          <associatedPositioningSystem id="ne_y_aps01">
            <intrinsicCoordinate id="ne_y_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="5300.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_y_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="5800.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne7"
                    length="500.0">
          <relation ref="nr_ne7ne_y"/>
          <!-- approximation -->
          <associatedPositioningSystem id="ne7_aps01">
            <intrinsicCoordinate id="ne7_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="5800.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne7_aps01_ic02"
                                 intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01"
                                measure="6300.0"/>
              <!--refers to the same positioning system as line 1-->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne1">
          <relation ref="nr_ne2ne1"/>
          <elementCollectionUnordered id="ne_ne1_ecu01">
            <elementPart ref="ne4"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne1_aps01">
            <intrinsicCoordinate id="ne1_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate measure="1000.0"
                                positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne1_aps01_ic01"
                                 intrinsicCoord="1">
              <linearCoordinate measure="1500.0"
                                positioningSystemRef="lps02"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne2">
          <relation ref="nr_ne2ne1"/>
          <relation ref="nr_ne3ne2"/>
          <elementCollectionUnordered id="ne_ne2_ecu01">
            <elementPart ref="ne_x"/>
            <!-- covered by line 2 -->
            <elementPart ref="ne5"/>
            <!-- covered by line 2 -->
            <elementPart ref="ne6"/>
            <!-- covered by line 1 -->
            <elementPart ref="ne_y"/>
            <!-- covered by line 1 -->
            <!-- thus is covered by two lines -->
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne2_aps01">
            <intrinsicCoordinate id="ne1_aps01_ic01"
                                 intrinsicCoord="0.5">
              <linearCoordinate measure="0.0"
                                positioningSystemRef="lps01"/>
              <!-- refers to the same positioning system as line 1 -->
              <linearCoordinate measure="4800.0"
                                positioningSystemRef="lps02"/>
              <!-- refers to the same positioning system as line 2 -->
              <!-- thus is covered by two lines -->
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne3">
          <relation ref="nr_ne3ne2"/>
          <elementCollectionUnordered id="ne_ne3_ecu01">
            <elementPart ref="ne7"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne3_aps01">
            <intrinsicCoordinate id="ne3_aps01_ic01"
                                 intrinsicCoord="0">
              <linearCoordinate measure="5800.0"
                                positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne3_aps01_ic01"
                                 intrinsicCoord="1">
              <linearCoordinate measure="6300.0"
                                positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
      </netElements>
      <netRelations>
        <netRelation id="nr_ne_xne4"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne_x"/>
          <elementB ref="ne4"/>
        </netRelation>
        <netRelation id="nr_ne5ne_x"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne5"/>
          <elementB ref="ne_x"/>
        </netRelation>
        <netRelation id="nr_ne6ne5"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne6"/>
          <elementB ref="ne5"/>
        </netRelation>
        <netRelation id="nr_ne_yne6"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne_y"/>
          <elementB ref="ne6"/>
        </netRelation>
        <netRelation id="nr_ne7ne_y"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne7"/>
          <elementB ref="ne_y"/>
        </netRelation>
        <netRelation id="nr_ne2ne1"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne2"/>
          <elementB ref="ne1"/>
        </netRelation>
        <netRelation id="nr_ne3ne2"
                     positionOnA="0"
                     positionOnB="1"
                     navigability="Both">
          <elementA ref="ne3"/>
          <elementB ref="ne2"/>
        </netRelation>
      </netRelations>
      <networks>
        <network id="nw01">
          <level id="lv0"
                 descriptionLevel="Micro">
            <networkResource ref="ne4"/>
            <networkResource ref="ne_x"/>
            <networkResource ref="ne5"/>
            <networkResource ref="ne6"/>
            <networkResource ref="ne_y"/>
            <networkResource ref="ne7"/>
            <networkResource ref="nr_ne_xne4"/>
            <networkResource ref="nr_ne5ne_x"/>
            <networkResource ref="nr_ne6ne5"/>
            <networkResource ref="nr_ne_yne6"/>
            <networkResource ref="nr_ne7ne_y"/>
          </level>
          <level id="lv1"
                 descriptionLevel="Meso">
            <networkResource ref="ne1"/>
            <networkResource ref="ne2"/>
            <networkResource ref="ne3"/>
            <networkResource ref="nr_ne3ne2"/>
            <networkResource ref="nr_ne2ne1"/>
          </level>
        </network>
      </networks>
    </topology>
    <functionalInfrastructure>
      <lines>
        <line id="lin01"
              lineCategory="other:CE"
              lineType="mainLine"
              infrastructureManagerRef="im_01">
          <linearLocation id="lin01_lloc01"
                          applicationDirection="both">
            <associatedNetElement netElementRef="ne3"
                                  keepsOrientation="true">
              <!-- lps01 is associated to lin01 -->
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="5800.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="6300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne2"
                                  keepsOrientation="true">
              <!-- ne2 is covered by both lin01 and lin02 -->
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="4800.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="5800.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
        <line id="lin02"
              lineCategory="other:CE"
              lineType="mainLine"
              infrastructureManagerRef="im_01">
          <linearLocation id="lin02_lloc01"
                          applicationDirection="both">
            <associatedNetElement netElementRef="ne1"
                                  keepsOrientation="true">
              <!-- lps02 is associated to lin02 -->
              <linearCoordinateBegin positioningSystemRef="lps02"
                                     measure="1000.0"/>
              <linearCoordinateEnd positioningSystemRef="lps02"
                                   measure="1500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne2"
                                  keepsOrientation="true">
              <!-- ne2 is covered by both lin01 and lin02 -->
              <linearCoordinateBegin positioningSystemRef="lps02"
                                     measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps02"
                                   measure="1000.0"/>
            </associatedNetElement>
          </linearLocation>
        </line>
      </lines>
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Cranz"
                language="de"/>
          <spotLocation id="opp01_sloc01"
                        netElementRef="ne2"
                        applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01"
                              measure="4800.0"/>
            <!-- refers to the same positioning system as line 1 -->
            <linearCoordinate positioningSystemRef="lps02"
                              measure="0.0"/>
            <!-- refers to the same positioning system as line 2 -->
            <!-- thus is covered by two lines -->
          </spotLocation>
          <connectedToLine ref="lin01"/>
          <connectedToLine ref="lin02"/>
          <!-- all the lines connected to a station should be listed -->
        </operationalPoint>
      </operationalPoints>
    </functionalInfrastructure>
  </infrastructure>
</railML>

Splitting

At the functional level railway station x and all its children, except for linear coordinate referring to another line, should be present in both split files. At the functional level railway station x serves as connector.

All the lines connected to the station are present in both files but only desired one has elaboration.

At the mesoscopic level aggregated net element ne2 should be present in both split files. At the mesoscopic level ne2 serves as connector of mesoscopic level, aggregates connector of microscopic level.

At the microscopic level connector net element should be inserted where lines meet each other, i.e. between ne5 and ne6.

Line 1
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml4rail3="https://www.railml.org/schemas/3.2/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd">
	<common id="co_01">
		<positioning>
			<linearPositioningSystems>
				<linearPositioningSystem id="lps01" startMeasure="0.0" endMeasure="50000.0">
					<name name="railway line1 mileage" language="en"/>
				</linearPositioningSystem>
			</linearPositioningSystems>
		</positioning>
	</common>
	<infrastructure id="is_01">
		<topology>
			<netElements>
				<!-- connector net element of microscopic level-->
				<netElement id="connector">
					<relation ref="nr_ne6connector"/>
					<associatedPositioningSystem id="connector_aps01">
						<intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne6" length="500.0">
					<relation ref="nr_ne_yne6"/>
					<relation ref="nr_ne6connector"/>
					<associatedPositioningSystem id="ne6_aps01">
						<intrinsicCoordinate id="ne6_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne6_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_y" length="500.0">
					<relation ref="nr_ne7ne_y"/>
					<!-- approximation -->
					<relation ref="nr_ne_yne6"/>
					<associatedPositioningSystem id="ne_y_aps01">
						<intrinsicCoordinate id="ne_y_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="5300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_y_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne7" length="500.0">
					<relation ref="nr_ne7ne_y"/>
					<!-- approximation -->
					<associatedPositioningSystem id="ne7_aps01">
						<intrinsicCoordinate id="ne7_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="5800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne7_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="6300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- connector net element of mesoscopic level -->
				<netElement id="ne2">
					<relation ref="nr_ne3ne2"/>
					<elementCollectionUnordered id="ne_ne2_ecu01">
						<!-- covered by line 1 -->
						<elementPart ref="ne6"/>
						<!-- covered by line 1 -->
						<elementPart ref="ne_y"/>
						<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
						<elementPart ref="connector"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne2_aps01">
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0.5">
							<linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
							<!-- refers to the same positioning system as line 1 -->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne3">
					<relation ref="nr_ne3ne2"/>
					<elementCollectionUnordered id="ne_ne3_ecu01">
						<elementPart ref="ne7"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne3_aps01">
						<intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="5800.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="1">
							<linearCoordinate measure="6300.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
			</netElements>
			<netRelations>
				<!-- connector net relation of microscopic level-->
				<netRelation id="nr_ne6connector" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne6"/>
					<elementB ref="connector"/>
				</netRelation>
				<netRelation id="nr_ne_yne6" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_y"/>
					<elementB ref="ne6"/>
				</netRelation>
				<netRelation id="nr_ne7ne_y" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne7"/>
					<elementB ref="ne_y"/>
				</netRelation>
				<netRelation id="nr_ne3ne2" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne3"/>
					<elementB ref="ne2"/>
				</netRelation>
			</netRelations>
			<networks>
				<network id="nw01">
					<level id="lv0" descriptionLevel="Micro">
						<networkResource ref="ne6"/>
						<networkResource ref="ne_y"/>
						<networkResource ref="ne7"/>
						<networkResource ref="nr_ne_yne6"/>
						<networkResource ref="nr_ne7ne_y"/>
					</level>
					<level id="lv1" descriptionLevel="Meso">
						<networkResource ref="ne2"/>
						<networkResource ref="ne3"/>
						<networkResource ref="nr_ne3ne2"/>
					</level>
				</network>
			</networks>
		</topology>
		<functionalInfrastructure>
			<lines>
				<line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<linearLocation id="lin01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne3" keepsOrientation="true">
							<!-- lps01 is associated to lin01 -->
							<linearCoordinateBegin positioningSystemRef="lps01" measure="5800.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="6300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne2" keepsOrientation="true">
							<!-- ne2 is covered by both lin01 and lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4800.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="5800.0"/>
						</associatedNetElement>
					</linearLocation>
				</line>
				<line id="lin02"/>
				<!-- this means that description of lin02 is present in other file -->
			</lines>
			<!-- connector entity of the functional level -->
			<operationalPoints>
				<operationalPoint id="opp01">
					<name name="Bf Cranz" language="de"/>
					<spotLocation id="opp01_sloc01" netElementRef="ne2" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="4800.0"/>
						<!-- refers to the same positioning system as line 1 -->
					</spotLocation>
					<connectedToLine ref="lin01"/>
					<connectedToLine ref="lin02"/>
				</operationalPoint>
			</operationalPoints>
		</functionalInfrastructure>
	</infrastructure>
</railML>
Line 2
<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml4rail3="https://www.railml.org/schemas/3.2/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd">
	<common id="co_01">
		<positioning>
			<linearPositioningSystems>
				<linearPositioningSystem id="lps02" startMeasure="0.0" endMeasure="50000.0">
					<name name="railway line2 mileage" language="en"/>
				</linearPositioningSystem>
			</linearPositioningSystems>
		</positioning>
	</common>
	<infrastructure id="is_01">
		<topology>
			<netElements>
				<!-- connector net element of microscopic level-->
				<netElement id="connector">
					<relation ref="nr_connectorne5"/>
					<associatedPositioningSystem id="connector_aps01">
						<intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne5" length="500.0">
					<relation ref="nr_ne5ne_x"/>
					<relation ref="nr_connectorne5"/>
					<associatedPositioningSystem id="ne5_aps01">
						<intrinsicCoordinate id="ne5_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne5_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_x" length="500.0">
					<relation ref="nr_ne5ne_x"/>
					<relation ref="nr_ne_xne4"/>
					<associatedPositioningSystem id="ne_x_aps01">
						<intrinsicCoordinate id="ne_x_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne4" length="500.0">
					<relation ref="nr_ne_xne4"/>
					<associatedPositioningSystem id="ne4_aps01">
						<intrinsicCoordinate id="ne4_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne4_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="1500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne1">
					<relation ref="nr_ne2ne1"/>
					<elementCollectionUnordered id="ne_ne1_ecu01">
						<elementPart ref="ne4"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne1_aps01">
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="1000.0" positioningSystemRef="lps02"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="1">
							<linearCoordinate measure="1500.0" positioningSystemRef="lps02"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- connector net element of mesoscopic level -->
				<netElement id="ne2">
					<relation ref="nr_ne2ne1"/>
					<relation ref="nr_ne3ne2"/>
					<elementCollectionUnordered id="ne_ne2_ecu01">
						<!-- covered by line 2 -->
						<elementPart ref="ne_x"/>
						<!-- covered by line 2 -->
						<elementPart ref="ne5"/>
						<!-- connector net element of mesoscopic level aggegates the one of microscopic level -->
						<elementPart ref="connector"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne2_aps01">
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0.5">
							<linearCoordinate measure="4800.0" positioningSystemRef="lps02"/>
							<!-- refers to the same positioning system as line 2 -->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
			</netElements>
			<netRelations>
				<netRelation id="nr_ne_xne4" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_x"/>
					<elementB ref="ne4"/>
				</netRelation>
				<netRelation id="nr_ne5ne_x" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne5"/>
					<elementB ref="ne_x"/>
				</netRelation>
				<!-- connector net relation of microscopic level-->
				<netRelation id="nr_connectorne5" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="connector"/>
					<elementB ref="ne5"/>
				</netRelation>
				<netRelation id="nr_ne2ne1" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne2"/>
					<elementB ref="ne1"/>
				</netRelation>
			</netRelations>
			<networks>
				<network id="nw01">
					<level id="lv0" descriptionLevel="Micro">
						<networkResource ref="ne4"/>
						<networkResource ref="ne_x"/>
						<networkResource ref="ne5"/>
						<networkResource ref="nr_ne_xne4"/>
						<networkResource ref="nr_ne5ne_x"/>
					</level>
					<level id="lv1" descriptionLevel="Meso">
						<networkResource ref="ne1"/>
						<networkResource ref="ne2"/>
						<networkResource ref="nr_ne2ne1"/>
					</level>
				</network>
			</networks>
		</topology>
		<functionalInfrastructure>
			<lines>
				<line id="lin02" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<linearLocation id="lin02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne1" keepsOrientation="true">
							<!-- lps02 is associated to lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps02" measure="1000.0"/>
							<linearCoordinateEnd positioningSystemRef="lps02" measure="1500.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne2" keepsOrientation="true">
							<!-- ne2 is covered by both lin01 and lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps02" measure="0.0"/>
							<linearCoordinateEnd positioningSystemRef="lps02" measure="1000.0"/>
						</associatedNetElement>
					</linearLocation>
				</line>
				<line id="lin01"/>
				<!-- this means that description of lin01 is present in other file -->
			</lines>
			<operationalPoints>
				<operationalPoint id="opp01">
					<name name="Bf Cranz" language="de"/>
					<spotLocation id="opp01_sloc01" netElementRef="ne2" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
						<!-- refers to the same positioning system as line 2 -->
					</spotLocation>
					<connectedToLine ref="lin01"/>
					<connectedToLine ref="lin02"/>
					<!-- all the lines connected to a station should be listed -->
				</operationalPoint>
			</operationalPoints>
		</functionalInfrastructure>
	</infrastructure>
</railML>

Merging

Merging follows the "general approach"[1] for splitting at the microscopic level. At the functional and mesoscopic levels files are merged with ne2 and railway station x present in both files.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.2" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:gml4rail3="https://www.railml.org/schemas/3.2/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2" xsi:schemaLocation="https://www.railml.org/schemas/3.2 https://www.railml.org/schemas/3.2/railml3.xsd">
	<common id="co_01">
		<positioning>
			<linearPositioningSystems>
				<linearPositioningSystem id="lps01" startMeasure="0.0" endMeasure="50000.0">
					<name name="railway line1 mileage" language="en"/>
				</linearPositioningSystem>
				<linearPositioningSystem id="lps02" startMeasure="0.0" endMeasure="50000.0">
					<name name="railway line2 mileage" language="en"/>
				</linearPositioningSystem>
			</linearPositioningSystems>
		</positioning>
	</common>
	<infrastructure id="is_01">
		<topology>
			<netElements>
				<netElement id="ne5" length="500.0">
					<relation ref="nr_ne5ne_x"/>
					<relation ref="nr_connectorne5"/>
					<associatedPositioningSystem id="ne5_aps01">
						<intrinsicCoordinate id="ne5_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne5_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_x" length="500.0">
					<relation ref="nr_ne5ne_x"/>
					<relation ref="nr_ne_xne4"/>
					<associatedPositioningSystem id="ne_x_aps01">
						<intrinsicCoordinate id="ne_x_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_x_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne4" length="500.0">
					<relation ref="nr_ne_xne4"/>
					<associatedPositioningSystem id="ne4_aps01">
						<intrinsicCoordinate id="ne4_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps02" measure="1000.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne4_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps02" measure="1500.0"/>
							<!--refers to the same positioning system as line 2-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- connector net element of microscopic level-->
				<netElement id="connector">
					<relation ref="nr_ne6connector"/>
					<relation ref="nr_connectorne5"/>
					<associatedPositioningSystem id="connector_aps01">
						<intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne6" length="500.0">
					<relation ref="nr_ne6connector"/>
					<relation ref="nr_ne_yne6"/>
					<associatedPositioningSystem id="ne6_aps01">
						<intrinsicCoordinate id="ne6_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="4800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne6_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne_y" length="500.0">
					<relation ref="nr_ne7ne_y"/>
					<!-- approximation -->
					<relation ref="nr_ne_yne6"/>
					<associatedPositioningSystem id="ne_y_aps01">
						<intrinsicCoordinate id="ne_y_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="5300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne_y_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="5800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne7" length="500.0">
					<relation ref="nr_ne7ne_y"/>
					<!-- approximation -->
					<associatedPositioningSystem id="ne7_aps01">
						<intrinsicCoordinate id="ne7_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate positioningSystemRef="lps01" measure="5800.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne7_aps01_ic02" intrinsicCoord="1">
							<linearCoordinate positioningSystemRef="lps01" measure="6300.0"/>
							<!--refers to the same positioning system as line 1-->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne1">
					<relation ref="nr_ne2ne1"/>
					<elementCollectionUnordered id="ne_ne1_ecu01">
						<elementPart ref="ne4"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne1_aps01">
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="1000.0" positioningSystemRef="lps02"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="1">
							<linearCoordinate measure="1500.0" positioningSystemRef="lps02"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<!-- connector net element of mesoscopic level -->
				<netElement id="ne2">
					<relation ref="nr_ne2ne1"/>
					<relation ref="nr_ne3ne2"/>
					<elementCollectionUnordered id="ne_ne2_ecu01">
						<!-- covered by line 2 -->
						<elementPart ref="ne_x"/>
						<!-- covered by line 2 -->
						<elementPart ref="ne5"/>
						<!-- covered by line 1 -->
						<elementPart ref="ne6"/>
						<!-- covered by line 1 -->
						<elementPart ref="ne_y"/>
						<!-- thus is covered by two lines -->
						<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
						<elementPart ref="connector"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne2_aps01">
						<intrinsicCoordinate id="ne1_aps01_ic01" intrinsicCoord="0.5">
							<linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
							<!-- refers to the same positioning system as line 1 -->
							<linearCoordinate measure="4800.0" positioningSystemRef="lps02"/>
							<!-- refers to the same positioning system as line 2 -->
							<!-- thus is covered by two lines -->
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
				<netElement id="ne3">
					<relation ref="nr_ne3ne2"/>
					<elementCollectionUnordered id="ne_ne3_ecu01">
						<elementPart ref="ne7"/>
					</elementCollectionUnordered>
					<associatedPositioningSystem id="ne3_aps01">
						<intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="0">
							<linearCoordinate measure="5800.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
						<intrinsicCoordinate id="ne3_aps01_ic01" intrinsicCoord="1">
							<linearCoordinate measure="6300.0" positioningSystemRef="lps01"/>
						</intrinsicCoordinate>
					</associatedPositioningSystem>
				</netElement>
			</netElements>
			<netRelations>
				<netRelation id="nr_ne_xne4" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_x"/>
					<elementB ref="ne4"/>
				</netRelation>
				<netRelation id="nr_ne5ne_x" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne5"/>
					<elementB ref="ne_x"/>
				</netRelation>
				<!-- connector net relation of microscopic level-->
				<netRelation id="nr_ne6connector" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne6"/>
					<elementB ref="connector"/>
				</netRelation>
				<!-- connector net relation of microscopic level-->
				<netRelation id="nr_connectorne5" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="connector"/>
					<elementB ref="ne5"/>
				</netRelation>
				<netRelation id="nr_ne_yne6" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne_y"/>
					<elementB ref="ne6"/>
				</netRelation>
				<netRelation id="nr_ne7ne_y" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne7"/>
					<elementB ref="ne_y"/>
				</netRelation>
				<netRelation id="nr_ne2ne1" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne2"/>
					<elementB ref="ne1"/>
				</netRelation>
				<netRelation id="nr_ne3ne2" positionOnA="0" positionOnB="1" navigability="Both">
					<elementA ref="ne3"/>
					<elementB ref="ne2"/>
				</netRelation>
			</netRelations>
			<networks>
				<network id="nw01">
					<level id="lv0" descriptionLevel="Micro">
						<networkResource ref="ne4"/>
						<networkResource ref="ne_x"/>
						<networkResource ref="ne5"/>
						<networkResource ref="ne6"/>
						<networkResource ref="ne_y"/>
						<networkResource ref="ne7"/>
						<networkResource ref="nr_ne_xne4"/>
						<networkResource ref="nr_ne5ne_x"/>
						<networkResource ref="nr_ne6ne5"/>
						<networkResource ref="nr_ne_yne6"/>
						<networkResource ref="nr_ne7ne_y"/>
					</level>
					<level id="lv1" descriptionLevel="Meso">
						<networkResource ref="ne1"/>
						<networkResource ref="ne2"/>
						<networkResource ref="ne3"/>
						<networkResource ref="nr_ne3ne2"/>
						<networkResource ref="nr_ne2ne1"/>
					</level>
				</network>
			</networks>
		</topology>
		<functionalInfrastructure>
			<lines>
				<line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<linearLocation id="lin01_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne3" keepsOrientation="true">
							<!-- lps01 is associated to lin01 -->
							<linearCoordinateBegin positioningSystemRef="lps01" measure="5800.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="6300.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne2" keepsOrientation="true">
							<!-- ne2 is covered by both lin01 and lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps01" measure="4800.0"/>
							<linearCoordinateEnd positioningSystemRef="lps01" measure="5800.0"/>
						</associatedNetElement>
					</linearLocation>
				</line>
				<line id="lin02" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
					<linearLocation id="lin02_lloc01" applicationDirection="both">
						<associatedNetElement netElementRef="ne1" keepsOrientation="true">
							<!-- lps02 is associated to lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps02" measure="1000.0"/>
							<linearCoordinateEnd positioningSystemRef="lps02" measure="1500.0"/>
						</associatedNetElement>
						<associatedNetElement netElementRef="ne2" keepsOrientation="true">
							<!-- ne2 is covered by both lin01 and lin02 -->
							<linearCoordinateBegin positioningSystemRef="lps02" measure="0.0"/>
							<linearCoordinateEnd positioningSystemRef="lps02" measure="1000.0"/>
						</associatedNetElement>
					</linearLocation>
				</line>
			</lines>
			<operationalPoints>
				<operationalPoint id="opp01">
					<name name="Bf Cranz" language="de"/>
					<spotLocation id="opp01_sloc01" netElementRef="ne2" applicationDirection="both">
						<linearCoordinate positioningSystemRef="lps01" measure="4800.0"/>
						<!-- refers to the same positioning system as line 1 -->
						<linearCoordinate positioningSystemRef="lps02" measure="0.0"/>
						<!-- refers to the same positioning system as line 2 -->
						<!-- thus is covered by two lines -->
					</spotLocation>
					<connectedToLine ref="lin01"/>
					<connectedToLine ref="lin02"/>
					<!-- all the lines connected to a station should be listed -->
				</operationalPoint>
			</operationalPoints>
		</functionalInfrastructure>
	</infrastructure>
</railML>

Example 6 - splitting line into line sections and stations (station is completely inside a tunnel)

2024-09-11 railML splittingTunnel.png

Input

Input to splitting into stations and line sections is Simple example (link to the railML® website).

Stations and line sections do not overlap topologically, i.e. no mesoscopic net element is covered by both station and line section.

Tunnel ends after station ends. Tunnel completely covers station.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
  
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
      <geometricPositioningSystems>
        <geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
          <name name="WGS84" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
        <geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
          <name name="ETRS89_UTMzone32N" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
      </geometricPositioningSystems>
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
      <screenPositioningSystems>
        <screenPositioningSystem pxX="1024" pxY="768" id="scs01">
          <name name="screen visualization coordinate system" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </screenPositioningSystem>
      </screenPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
          <relation ref="nr_a03x01"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_x01b03"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x01" length="3600.0">
          <relation ref="nr_a03x01"/>
          <relation ref="nr_x01b03"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a11">
          <relation ref="nr_a11x11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b11">
          <relation ref="nr_x11b11"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x11">
          <relation ref="nr_a11x11"/>
          <relation ref="nr_x11b11"/>
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a03"/>
          <elementB ref="ne_x01"/>
        </netRelation>
        <netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_a11x11" positionOnA="0" positionOnB="0" navigability="Both">
          <elementA ref="ne_a11"/>
          <elementB ref="ne_x11"/>
        </netRelation>
        <netRelation id="nr_x11b11" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="ne_b11"/>
        </netRelation>
      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="ne_x01"/>
            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>
            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
            <networkResource ref="nr_a03x01"/>
            <networkResource ref="nr_x01b03"/>
          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
            <networkResource ref="ne_b11"/>
            <networkResource ref="ne_x11"/>
            <networkResource ref="nr_a11x11"/>
            <networkResource ref="nr_x11b11"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
          <name name="Malý příklad železniční tratě" language="cz"/>
          <name name="Kleine Beispielstrecke" language="de"/>
          <name name="Simple Example railway line" language="en"/>
          <name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
          <name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
          <name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
          <name name="Lille eksempelbanen" language="no"/>
          <name name="Lilla Exempellinjen" language="se"/>
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <overCrossings>
        <overCrossing constructionType="tunnel" id="tun01">
          <linearLocation applicationDirection="both" id="tun01_lloc01">
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a01">
              <linearCoordinateBegin measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="500.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a03">
              <linearCoordinateBegin measure="500.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="700.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
            <associatedNetElement keepsOrientation="true" netElementRef="ne_x01">
              <linearCoordinateBegin measure="700.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="800.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
      </overCrossings>
			
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>
        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>
        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Splitting

<line>s are split into stations and line sections using "general approach"[1] when modelled according to the official methodology [2][3].

Stations Arnau and Cstadt and line section between them is extracted into three files.

For <speedSection> and <line>, i.e. functional IS entities with <linearLocation> spreading on stations AND line sections approach "lines overlap within a station" [4] is used, i.e. entities are fully extracted except for the associated <netElement>s not aggregated into extracted station/line section.

When station is extracted, there is no way to see where tunnel ends. Complete info on where tunnel ends, is present only in input and merged files.

Arnau

Bf Arnau covers <netElement> a11 on the mesoscopic level of aggregation. In this file a11 and all the topology aggregated into a11 and all the functional IS referring to a11 and aggregated topology are extracted from Simple example (link to the railML® website).

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
	
<!-- Bf Arnau covers net element a11 on the mesoscopic level of aggregation. In this file a11 and all the topology aggregated into a11 and
all the functional IS referring to a11 and aggregated topology are extracted from Simple example-->

  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
		
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_a11">
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="connecto2_ecu01">
						<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
            <elementPart ref="connector1"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>

        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_connector1ne_a03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_connector2ne_a11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne_a11"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="connector1"/>

            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>

            <networkResource ref="nr_connector1ne_a03"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
            <networkResource ref="connector2"/>

            <networkResource ref="nr_connector2ne_a11"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>

      </bufferStops>

      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x11 b11 are not extracted because are not aggregated into a11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>

<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>

<!-- opp02 is extracted because line from endsInOp refers to it -->

        <operationalPoint id="opp02">
        </operationalPoint>

      </operationalPoints>
      
      <overCrossings>
        <overCrossing constructionType="tunnel" id="tun01">
          <linearLocation applicationDirection="both" id="tun01_lloc01">
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a01">
              <linearCoordinateBegin measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="500.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a03">
              <linearCoordinateBegin measure="500.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="700.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
<!-- associated net element referring to x01 is not extracted because is not aggregated into a11. 
Thus tunnel and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
        </overCrossing>
      </overCrossings>
			
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>

        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>

      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>

      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x01 b03 and b01 are not extracted because are not aggregated into a11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- associated net elements referring to x01 b03 are not extracted because are not aggregated into a11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>

      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <!-- switch with incomplete data is extracted because trc03 refers to it from trackEnd -->
        <switchIS id="swi02"/>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
<!-- associated net elements referring to x01 b03 are not extracted because are not aggregated into a11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>

      </trainDetectionElements>
    </functionalInfrastructure>
    
  </infrastructure>
  

</railML>
Cstadt

Bf Cstadt covers <netElement> b11 on the mesoscopic level of aggregation. In this file b11 and all the topology aggregated into b11 and all the functional IS referring to b11 and aggregated topology are extracted from Simple example (link to the railML® website).

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- Bf Cstadt covers net element b11 on the mesoscopic level of aggregation. In this file b11 and all the topology aggregated into b11 and
all the functional IS referring to b11 and aggregated topology are extracted from Simple example-->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>

      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of microscopic level-->
        <netElement id="connector3">
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_b11">
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net element of mesoscopic level-->
        <netElement id="connector4">
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

      </netElements>

      <netRelations>

        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>

        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne_b03connector3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="connector3"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne_b11connector4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b11"/>
          <elementB ref="connector4"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="connector3"/>


            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
            <networkResource ref="nr_ne_b03connector3"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_b11"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_b11connector4"/>

          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>

        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- associated net elements referring to x11 a11 are not extracted because are not aggregated into b11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
			
      <operationalPoints>
        <operationalPoint id="opp01">
<!-- opp02 is extracted because line from beginsInOp refers to it -->

        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <platforms>

        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>

        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>

      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
<!-- associated net elements referring to x01 a03 are not extracted because are not aggregated into b11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
<!-- associated net elements referring to x01 a03 and a01 are not extracted because are not aggregated into b11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
        </speedSection>

      </speeds>
      
      <switchesIS>
          <!-- switch with incomplete data is extracted because trc03 refers to it from trackBegin -->
        <switchIS id="swi01"/>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
<!-- associated net elements referring to x01 a03 are not extracted because are not aggregated into b11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>

      </trainDetectionElements>
    </functionalInfrastructure>
    
  </infrastructure>
  

</railML>
Line section

Bf Arnau covers <netElement> a11 and Bf Cstadt covers b11. a11 and b11 are both linked to x11. Thus in this file x11 and all the topology aggregated into x11 and all the functional IS referring to x11 and aggregated topology are extracted from Simple example (link to the railML® website).

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- Bf Arnau covers net element a11 and Bf Cstadt covers b11. a11 and b11 are both linked to x11. Thus in this file x11 
and all the topology aggregated into x11 and all the functional IS referring to 
x11 and aggregated topology are extracted from Simple example -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
<!-- linear positioning system should have UUID and be consistent with semantic constraint IS 016 -->
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>

    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>

        <netElement id="ne_x01" length="3600.0">
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne_x01connector1"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>

        <netElement id="ne_x11">
          <relation ref="nr_ne_x11connector2"/>
          <relation ref="nr_connector4ne_x11"/>
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <!-- connector net elements of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne_x11connector2"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
      </netElements>

      <netRelations>
        <!-- connector net relations of microscopic level-->
        <netRelation id="nr_ne_x01connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="connector1"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01"/>
        </netRelation>				
        <!-- connector net relations of mesoscopic level-->
        <netRelation id="nr_ne_x11connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="connector2"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11"/>
        </netRelation>
			</netRelations>

      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">

            <networkResource ref="ne_x01"/>
            <networkResource ref="connector1"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_ne_x01connector1"/>
            <networkResource ref="nr_connector3ne_x01"/>

						
          </level>
          <level id="lv1" descriptionLevel="Meso">

            <networkResource ref="ne_x11"/>
            <networkResource ref="connector2"/>
            <networkResource ref="connector4"/>

            <networkResource ref="nr_ne_x11connector2"/>
            <networkResource ref="nr_connector4ne_x11"/>
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>

      

      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">

          <linearLocation id="lin01_lloc01" applicationDirection="both">
<!-- associated net elements referring to a11 b11 are not extracted because are not aggregated into a11. 
Thus line and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
<!-- loading gauge is extracted because line refers to it -->
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
<!-- opp01 and opp02 are extracted because line from beginsInOp and endsInOp refers to it. Thus should have UUIDs -->

      <operationalPoints>
        <operationalPoint id="opp01">
        </operationalPoint>
        <operationalPoint id="opp02">
        </operationalPoint>
      </operationalPoints>
      
      <overCrossings>
        <overCrossing constructionType="tunnel" id="tun01">
          <linearLocation applicationDirection="both" id="tun01_lloc01">
<!-- associated net elements referring to a01, a3 are not extracted because are not aggregated into x11. 
Thus tunnel and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement keepsOrientation="true" netElementRef="ne_x01">
              <linearCoordinateBegin measure="700.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="800.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
      </overCrossings>
			
      <signalsIS>

        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>

        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">

<!-- associated net elements referring to a03, b03 and b01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>

          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
<!-- associated net elements referring to a03, b03 and a01 are not extracted because are not aggregated into x11. 
Thus speed section and all the children should have UUIDs or keys for successful merge -->
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>

          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
<!-- swi01 and swi02 are extracted because track from trackBegin and trackEnd refers to it. Thus should have UUIDs -->
      <switchesIS>
        <switchIS id="swi01">
        </switchIS>
        <switchIS id="swi02">
        </switchIS>

      </switchesIS>
      
      <tracks>

        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">

            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
<!-- associated net elements referring to a01 b03 are not extracted because are not aggregated into x11. 
Thus track and all the children should have UUIDs or keys for successful merge -->
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>

      </tracks>
      
      <trainDetectionElements>

        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

Merging

After merging files back, list of <associatedNetElement>s of <linearLocation>s of split functional IS includes also connector <netElement>s.

<?xml version="1.0" encoding="UTF-8"?>
<railML xmlns="https://www.railml.org/schemas/3.1" 
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:gml="http://www.opengis.net/gml/3.2/"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="https://www.railml.org/schemas/3.1 https://www.railml.org/schemas/3.1/railml3.xsd"
        version="3.1">
  <metadata>
    <dc:format>3.1</dc:format>
    <dc:identifier>3</dc:identifier>
    <dc:source>railML.org</dc:source>
    <dc:title xml:lang="en">Simple Example v12 railML 3.1</dc:title>
    <dc:language>en</dc:language>
    <dc:creator xml:lang="de">railML.org</dc:creator>
    <dc:creator xml:lang="de">Dr. Jörg von Lingen</dc:creator>
    <dc:description>This example file has been coded manually and therefore may not be free of errors.</dc:description>
    <dc:rights>Copyright (c) railML.org e.V. Dresden/Germany; All Rights Reserved.
      This work is licensed under the restricted CreativeCommons Attribution-NonCommercial-NoDerivatives 4.0 International License with additional license conditions of railML.org.
      For further information see: https://www.railml.org/licence
      Content of this file: railML 3.1 Simple Example</dc:rights>
  </metadata>
<!-- this is result of merging a line section and two stations back together -->
  <common id="co_01">
    <organizationalUnits>
      <infrastructureManager id="im_01" code="SZDC"/>
    </organizationalUnits>
    <speedProfiles>
      <speedProfile id="spp01" influence="increasing"></speedProfile>
    </speedProfiles>
    <positioning>
      <geometricPositioningSystems>
        <geometricPositioningSystem id="gps01" crsDefinition="epsg:4326">
          <name name="WGS84" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
        <geometricPositioningSystem id="gps02" crsDefinition="epsg:25832">
          <name name="ETRS89_UTMzone32N" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </geometricPositioningSystem>
      </geometricPositioningSystems>
      <linearPositioningSystems>
        <linearPositioningSystem id="lps01" units="m" startMeasure="0.0" endMeasure="5000.0" linearReferencingMethod="absolute">
          <name name="railway line 6869 mileage" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </linearPositioningSystem>
      </linearPositioningSystems>
      <screenPositioningSystems>
        <screenPositioningSystem pxX="1024" pxY="768" id="scs01">
          <name name="screen visualization coordinate system" language="en"/>
          <isValid from="2018-01-01" to="2018-12-31"/>
        </screenPositioningSystem>
      </screenPositioningSystems>
    </positioning>
  </common>
  
  <infrastructure id="is_01">
    <topology>
      <netElements>
        <netElement id="ne_a01" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a01a03"/>
          <associatedPositioningSystem id="ne_a01_aps01">
            <intrinsicCoordinate id="ne_a01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a02" length="500.0">
          <relation ref="nr_a01a02"/>
          <relation ref="nr_a02a03"/>
          <associatedPositioningSystem id="ne_a02_aps01">
            <intrinsicCoordinate id="ne_a02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_a03" length="200.0">
          <relation ref="nr_a01a03"/>
          <relation ref="nr_a02a03"/>
<!-- <relation ref="nr_a03x01"/> is replaced by connector netRelation-->
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="ne_a03_aps01">
            <intrinsicCoordinate id="ne_a03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_a03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b01" length="500.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b01b04"/>
          <associatedPositioningSystem id="ne_b01_aps01">
            <intrinsicCoordinate id="ne_b01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b02" length="450.0">
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b02b05"/>
          <associatedPositioningSystem id="ne_b02_aps01">
            <intrinsicCoordinate id="ne_b02_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b02_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b03" length="200.0">
          <relation ref="nr_b01b03"/>
          <relation ref="nr_b03b04"/>
<!-- <relation ref="nr_x01b03"/> is replaced by connector net relation -->
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="ne_b03_aps01">
            <intrinsicCoordinate id="ne_b03_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b03_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b04" length="50.0">
          <relation ref="nr_b01b04"/>
          <relation ref="nr_b02b04"/>
          <relation ref="nr_b03b04"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b04_aps01">
            <intrinsicCoordinate id="ne_b04_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="4500.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b04_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4550.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b05" length="200.0">
          <relation ref="nr_b02b05"/>
          <relation ref="nr_b04b05"/>
          <associatedPositioningSystem id="ne_b05_aps01">
            <intrinsicCoordinate id="ne_b05_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_b05_aps01_ic02" intrinsicCoord="1">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x01" length="3600.0">
<!--      <relation ref="nr_a03x01"/> and
          <relation ref="nr_x01b03"/> are replaced by connector net relations -->
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector3ne_x01"/>
          <associatedPositioningSystem id="ne_x01_aps01">
            <intrinsicCoordinate id="ne_x01_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate positioningSystemRef="lps01" measure="700.0"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x01_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate positioningSystemRef="lps01" measure="4300.0"/>
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <!-- connector net elements of microscopic level-->
        <netElement id="connector1">
          <relation ref="nr_ne_x01connector1"/>
          <relation ref="nr_connector1ne_a03"/>
          <associatedPositioningSystem id="connector1_aps01">
            <intrinsicCoordinate id="connector1_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>
				
        <netElement id="connector3">
          <relation ref="nr_connector3ne_x01"/>
          <relation ref="nr_ne_b03connector3"/>
          <associatedPositioningSystem id="connector3_aps01">
            <intrinsicCoordinate id="connector3_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
          </associatedPositioningSystem>
        </netElement>				
				
				
        <netElement id="ne_a11">
<!-- <relation ref="nr_a11x11"/> is replaced by connector net relation -->
          <relation ref="nr_connector2ne_a11"/>
          <elementCollectionUnordered id="ne_a11_ecu01">
            <elementPart ref="ne_a01"/>
            <elementPart ref="ne_a02"/>
            <elementPart ref="ne_a03"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_a11_aps01">
            <intrinsicCoordinate id="ne_a11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_b11">
<!-- <relation ref="nr_x11b11"/> is replaced by connector net relation -->
          <relation ref="nr_ne_b11connector4"/>
          <elementCollectionUnordered id="ne_b11_ecu01">
            <elementPart ref="ne_b01"/>
            <elementPart ref="ne_b02"/>
            <elementPart ref="ne_b03"/>
            <elementPart ref="ne_b04"/>
            <elementPart ref="ne_b05"/>
          </elementCollectionUnordered>
          <associatedPositioningSystem id="ne_b11_aps01">
            <intrinsicCoordinate id="ne_b11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
              <linearCoordinate measure="5000.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
        <netElement id="ne_x11">
<!--      <relation ref="nr_a11x11"/> and
          <relation ref="nr_x11b11"/> are replaced by connector net relations -->
          <elementCollectionOrdered id="ne_x11_ecu01">
            <elementPart ref="ne_x01"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="ne_x11_aps01">
            <intrinsicCoordinate id="ne_x11_aps01_ic01" intrinsicCoord="0">
              <linearCoordinate measure="700.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <intrinsicCoordinate id="ne_x11_aps01_ic02" intrinsicCoord="1">
              <linearCoordinate measure="4300.0" positioningSystemRef="lps01"/>
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				
        <!-- connector net elements of mesoscopic level-->
        <netElement id="connector2">
          <relation ref="nr_ne_x11connector2"/>
          <relation ref="nr_connector2ne_a11"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector2_ecu01">
            <elementPart ref="connector1"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector2_aps01">
            <intrinsicCoordinate id="connector2_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>

        <netElement id="connector4">
          <relation ref="nr_connector4ne_x11"/>
          <relation ref="nr_ne_b11connector4"/>
					<!-- connector net element of mesoscopic level aggregates the one of microscopic level -->
          <elementCollectionOrdered id="connector4_ecu01">
            <elementPart ref="connector3"/>
          </elementCollectionOrdered>
          <associatedPositioningSystem id="connector4_aps01">
            <intrinsicCoordinate id="connector4_aps01_ic01" intrinsicCoord="0">
            </intrinsicCoordinate>
            <isValid from="2018-01-01" to="2018-12-31" />
          </associatedPositioningSystem>
        </netElement>
				
      </netElements>

      <netRelations>
        <netRelation id="nr_a01a02" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a02"/>
        </netRelation>
        <netRelation id="nr_a01a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a01"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_a02a03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a02"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_b01b03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b03"/>
        </netRelation>
        <netRelation id="nr_b01b04" positionOnA="0" positionOnB="0" navigability="None">
          <elementA ref="ne_b01"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b04" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b02b05" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b02"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_b03b04" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="ne_b04"/>
        </netRelation>
        <netRelation id="nr_b04b05" positionOnA="1" positionOnB="1" navigability="None">
          <elementA ref="ne_b04"/>
          <elementB ref="ne_b05"/>
        </netRelation>
        <netRelation id="nr_a03x01" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_a03"/>
          <elementB ref="ne_x01"/>
        </netRelation>
        <netRelation id="nr_x01b03" positionOnA="1" positionOnB="0" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="ne_b03"/>
        </netRelation>

				
        <!-- connector net relation of microscopic level-->
        <netRelation id="nr_ne_b03connector3" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b03"/>
          <elementB ref="connector3"/>
        </netRelation>
        <netRelation id="nr_connector3ne_x01" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector3"/>
          <elementB ref="ne_x01"/>
        </netRelation>		
        <netRelation id="nr_connector1ne_a03" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector1"/>
          <elementB ref="ne_a03"/>
        </netRelation>
        <netRelation id="nr_ne_x01connector1" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x01"/>
          <elementB ref="connector1"/>
        </netRelation>
        <!-- connector net relation of mesoscopic level-->
        <netRelation id="nr_ne_b11connector4" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_b11"/>
          <elementB ref="connector4"/>
        </netRelation>
        <netRelation id="nr_connector4ne_x11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector4"/>
          <elementB ref="ne_x11"/>
        </netRelation>
        <netRelation id="nr_connector2ne_a11" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="connector2"/>
          <elementB ref="ne_a11"/>
        </netRelation>
        <netRelation id="nr_ne_x11connector2" positionOnA="0" positionOnB="1" navigability="Both">
          <elementA ref="ne_x11"/>
          <elementB ref="connector2"/>
        </netRelation>

      </netRelations>
   
      <networks>
        <network id="nw01">
          <level id="lv0" descriptionLevel="Micro">
            <networkResource ref="ne_a01"/>
            <networkResource ref="ne_a02"/>
            <networkResource ref="ne_a03"/>
            <networkResource ref="ne_b01"/>
            <networkResource ref="ne_b02"/>
            <networkResource ref="ne_b03"/>
            <networkResource ref="ne_b04"/>
            <networkResource ref="ne_b05"/>
            <networkResource ref="ne_x01"/>
						
            <networkResource ref="connector1"/>
            <networkResource ref="connector3"/>
						
            <networkResource ref="nr_a01a02"/>
            <networkResource ref="nr_a01a03"/>
            <networkResource ref="nr_a02a03"/>
            <networkResource ref="nr_b01b03"/>
            <networkResource ref="nr_b01b04"/>
            <networkResource ref="nr_b02b04"/>
            <networkResource ref="nr_b02b05"/>
            <networkResource ref="nr_b03b04"/>
            <networkResource ref="nr_b04b05"/>
						
            <networkResource ref="nr_ne_x01connector1"/>
            <networkResource ref="nr_connector1ne_a03"/>

            <networkResource ref="nr_connector3ne_x01"/>
            <networkResource ref="nr_ne_b03connector3"/>

          </level>
          <level id="lv1" descriptionLevel="Meso">
            <networkResource ref="ne_a11"/>
						
            <networkResource ref="connector2"/>
            <networkResource ref="connector4"/>
						
            <networkResource ref="ne_b11"/>
            <networkResource ref="ne_x11"/>

            <networkResource ref="nr_ne_x11connector2"/>
            <networkResource ref="nr_connector2ne_a11"/>

            <networkResource ref="nr_connector4ne_x11"/>
            <networkResource ref="nr_ne_b11connector4"/>

						
          </level>
        </network>
      </networks>
    </topology>
    
    <geometry>
    </geometry>
    
    <functionalInfrastructure>
      <bufferStops>
        <bufferStop id="bus01" type="fixedBufferStop">
          <spotLocation id="bus01_sloc01" netElementRef="ne_a01" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus02" type="fixedBufferStop">
          <spotLocation id="bus02_sloc01" netElementRef="ne_a02" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="0.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus03" type="fixedBufferStop">
          <spotLocation id="bus03_sloc01" netElementRef="ne_b01" applicationDirection="normal" pos="500.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus04" type="fixedBufferStop">
          <spotLocation id="bus04_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="5000.0"/>
          </spotLocation>
        </bufferStop>
        <bufferStop id="bus05" type="sleeperCross">
          <spotLocation id="bus05_sloc01" netElementRef="ne_b05" applicationDirection="reverse" pos="0.0">
          </spotLocation>
        </bufferStop>
      </bufferStops>
      
      <derailersIS>
        <derailerIS id="der01" derailSide="right">
          <spotLocation id="der01_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="150.0">
          </spotLocation>
        </derailerIS>
      </derailersIS>
      
      <levelCrossingsIS>
        <levelCrossingIS id="lcr01" activation="infrastructureAutomatic">
          <name name="LX Arnau Cstadt" language="en"/>
          <spotLocation id="lcr01_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1800.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2500.00"/>
          </spotLocation>
          <protection barriers="singleHalfBarrier" lights="none" acoustic="none"/>
        </levelCrossingIS>
      </levelCrossingsIS>
      
      <lines>
        <line id="lin01" lineCategory="other:CE" lineType="mainLine" infrastructureManagerRef="im_01">
          <name name="Malý příklad železniční tratě" language="cz"/>
          <name name="Kleine Beispielstrecke" language="de"/>
          <name name="Simple Example railway line" language="en"/>
          <name name="Ejemplo Simple de Linea Ferroviaria" language="es"/>
          <name name="Petit Exemple Ligne Ferroviaire" language="fr"/>
          <name name="Semplice Esempio di Stazione/Linea Ferroviaria" language="it"/>
          <name name="Lille eksempelbanen" language="no"/>
          <name name="Lilla Exempellinjen" language="se"/>
          <linearLocation id="lin01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="0.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector2" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector4" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b11" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <beginsInOP ref="opp01"/>
          <endsInOP ref="opp02"/>
          <lineLayout numberOfTracks="single"/>
          <linePerformance usablePlatformLength="200" maxSpeed="80">
            <allowedLoadingGauge ref="log01"/>
          </linePerformance>
        </line>
      </lines>
      
      <loadingGauges>
        <loadingGauge id="log01" code="GA"/>
      </loadingGauges>
      
      <operationalPoints>
        <operationalPoint id="opp01">
          <name name="Bf Arnau" language="de"/>
          <name name="Adamov" language="cz"/>
          <spotLocation id="opp01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="300.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OAR"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf01"/>
            <ownsSignal ref="sig01"/>
            <ownsSignal ref="sig02"/>
            <ownsSignal ref="sig03"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
        <operationalPoint id="opp02">
          <name name="Bf Cstadt" language="de"/>
          <name name="Bouzov" language="cz"/>
          <spotLocation id="opp02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="4700.0"/>
          </spotLocation>
          <designator register="_SimpleRegister" entry="OCS"/>
          <infrastructureManagerRef ref="im_01"/>
          <opEquipment>
            <ownsPlatform ref="plf02"/>
            <ownsPlatform ref="plf03"/>
            <ownsSignal ref="sig04"/>
            <ownsSignal ref="sig05"/>
            <ownsSignal ref="sig06"/>
          </opEquipment>
          <opOperations>
            <opOperation operationalType="station" trafficType="passenger"/>
          </opOperations> 
        </operationalPoint>
      </operationalPoints>
      
      <overCrossings>
        <overCrossing constructionType="tunnel" id="tun01">
          <linearLocation applicationDirection="both" id="tun01_lloc01">
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a01">
              <linearCoordinateBegin measure="0.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="500.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
            <associatedNetElement keepsOrientation="true" netElementRef="ne_a03">
              <linearCoordinateBegin measure="500.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="700.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement keepsOrientation="true" netElementRef="ne_x01">
              <linearCoordinateBegin measure="700.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="800.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
      </overCrossings>
			
      <platforms>
        <platform id="plf01">
          <spotLocation id="plf01_sloc01" netElementRef="ne_a11" applicationDirection="both">
            <linearCoordinate measure="300.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple01"/>
          <ownsPlatformEdge ref="ple02"/>
        </platform>
        <platform id="plf02">
          <spotLocation id="plf02_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple03"/>
        </platform>
        <platform id="plf03">
          <spotLocation id="plf03_sloc01" netElementRef="ne_b11" applicationDirection="both">
            <linearCoordinate measure="4700.0" positioningSystemRef="lps01"/>
          </spotLocation>
          <ownsPlatformEdge ref="ple04"/>
        </platform>
        <platform id="ple01" height="550">
          <name name="Gleis 3" language="de"/>
          <linearLocation id="ple01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="right"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple02" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="200.0" posEnd="400.0">
              <linearCoordinateBegin measure="200.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
              <linearCoordinateEnd measure="400.0" positioningSystemRef="lps01" lateralDistance="1.7" lateralSide="left"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple03" height="550">
          <name name="Gleis 2" language="de"/>
          <linearLocation id="ple03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="150.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4850.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="200.00" validForDirection="both"/>
        </platform>
        <platform id="ple04" height="380">
          <name name="Gleis 1" language="de"/>
          <linearLocation id="ple04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="100.0" posEnd="350.0">
              <linearCoordinateBegin measure="4650.0" positioningSystemRef="lps01"/>
              <linearCoordinateEnd measure="4900.0" positioningSystemRef="lps01"/>
            </associatedNetElement>
          </linearLocation>
          <length type="physical" value="250.00" validForDirection="both"/>
        </platform>
      </platforms>
      
      <signalsIS>
        <signalIS id="sig01" isSwitchable="false">
          <name name="68N2" language="en"/>
          <spotLocation id="sig01_sloc01" netElementRef="ne_a01" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig02" isSwitchable="false">
          <name name="68N1" language="en"/>
          <spotLocation id="sig02_sloc01" netElementRef="ne_a02" applicationDirection="normal" pos="450.0">
            <linearCoordinate positioningSystemRef="lps01" measure="450.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig03" isSwitchable="false">
          <name name="68F" language="en"/>
          <spotLocation id="sig03_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="700.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isEtcsSignal/>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig04" isSwitchable="true">
          <name name="69A" language="en"/>
          <spotLocation id="sig04_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4300.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig05" isSwitchable="true">
          <name name="69P2" language="en"/>
          <spotLocation id="sig05_sloc01" netElementRef="ne_b01" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig06" isSwitchable="true">
          <name name="69P1" language="en"/>
          <spotLocation id="sig06_sloc01" netElementRef="ne_b02" applicationDirection="reverse" pos="50.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4600.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig07" isSwitchable="true">
          <name name="69Va" language="en"/>
          <spotLocation id="sig07_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="2900.0">
            <linearCoordinate positioningSystemRef="lps01" measure="3600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig08" isSwitchable="true">
          <name name="69W04Y" language="en"/>
          <spotLocation id="sig08_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
          <isTrainMovementSignal/>
        </signalIS>
        <signalIS id="sig09" isSwitchable="false">
          <spotLocation id="sig09_sloc01" netElementRef="ne_a03" applicationDirection="normal" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="600.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps01"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig10" isSwitchable="false">
          <spotLocation id="sig10_sloc01" netElementRef="ne_b03" applicationDirection="reverse" pos="100.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4400.0" lateralDistance="2.2" lateralSide="left"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps02"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig11" isSwitchable="false">
          <spotLocation id="sig11_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1300.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2000.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="announcement" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig12" isSwitchable="false">
          <spotLocation id="sig12_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="headOfTrain">
            <refersToBeginOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
        <signalIS id="sig13" isSwitchable="false">
          <spotLocation id="sig13_sloc01" netElementRef="ne_x01" applicationDirection="normal" pos="1850.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralDistance="2.2" lateralSide="right"/>
          </spotLocation>
          <isSpeedSignal type="execution" trainRelation="endOfTrain">
            <refersToEndOfSpeedSection ref="sps03"/>
          </isSpeedSignal>
        </signalIS>
      </signalsIS>
      
      <speeds>
        <speedSection id="sps01" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps01_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="600.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="5000.0"/>
            </associatedNetElement>
          </linearLocation>
          <validForSpeedProfile ref="spp01"/>
        </speedSection>
        <speedSection id="sps02" maxSpeed="80" isTemporary="false" isSignalized="true">
          <linearLocation id="sps02_lloc01" applicationDirection="reverse">
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="4300.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="4300.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="700.0"/>
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="700.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="500.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="500.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="0.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
        <speedSection id="sps03" maxSpeed="20" isTemporary="true" isSignalized="true">
          <isValid from="2018-12-15" to="2018-12-22"/>
          <linearLocation id="sps03_lloc01" applicationDirection="normal">
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="2400.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="2550.0"/>
            </associatedNetElement>
          </linearLocation>
        </speedSection>
      </speeds>
      
      <switchesIS>
        <switchIS id="swi01" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="68W02" language="en"/>
          <spotLocation id="swi01_sloc01" netElementRef="ne_a03" applicationDirection="reverse" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="500.0"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_a02a03" branchingSpeed="60" joiningSpeed="60" radius="-500"/>
          <rightBranch netRelationRef="nr_a01a03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
        </switchIS>
        <switchIS id="swi02" continueCourse="left" branchCourse="right" type="ordinarySwitch">
          <name name="69W03" language="en"/>
          <spotLocation id="swi02_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="200.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.500"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b01b03" branchingSpeed="80" joiningSpeed="80" radius="0"/>
          <rightBranch netRelationRef="nr_b03b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
        <switchIS id="swi03" continueCourse="right" branchCourse="left" type="ordinarySwitch">
          <name name="69W04" language="en"/>
          <spotLocation id="swi03_sloc01" netElementRef="ne_b02" applicationDirection="normal" pos="0.0">
            <linearCoordinate positioningSystemRef="lps01" measure="4.550"/>
          </spotLocation>
          <leftBranch netRelationRef="nr_b02b05" branchingSpeed="60" joiningSpeed="60" radius="0"/>
          <rightBranch netRelationRef="nr_b02b04" branchingSpeed="40" joiningSpeed="40" radius="300"/>
        </switchIS>
      </switchesIS>
      
      <tracks>
        <track id="trc01" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus01"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc02" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc02_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a02" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus02"/>
          <trackEnd ref="swi01"/>
          <length value="500.0" type="physical"/>
        </track>
        <track id="trc03" type="mainTrack">
          <linearLocation id="trc03_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_a03" keepsOrientation="true" sequence="1" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector1" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_x01" keepsOrientation="true" sequence="2" posBegin="0.0" posEnd="3600.0">
            </associatedNetElement>
        <!-- linear location probably should not have any gaps. Therefore after merging covers also connectors -->
            <associatedNetElement netElementRef="connector3" keepsOrientation="true">
            </associatedNetElement>
            <associatedNetElement netElementRef="ne_b03" keepsOrientation="true" sequence="3" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi01"/>
          <trackEnd ref="swi02"/>
          <length value="4000.0" type="physical"/>
        </track>
        <track id="trc04" type="mainTrack">
          <name name="2" language="en"/>
          <linearLocation id="trc04_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b01" keepsOrientation="true" posBegin="0.0" posEnd="500.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="bus03"/>
          <length type="physical" value="500.0"/>
        </track>
        <track id="trc05" type="secondaryTrack">
          <name name="1" language="en"/>
          <linearLocation id="trc05_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b02" keepsOrientation="true" posBegin="0.0" posEnd="450.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi03"/>
          <trackEnd ref="bus04"/>
          <length value="450.0" type="physical"/>
        </track>
        <track id="trc06" type="sidingTrack">
          <linearLocation id="trc06_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b05" keepsOrientation="true" posBegin="0.0" posEnd="200.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="bus05"/>
          <trackEnd ref="swi03"/>
          <length value="200.0" type="physical"/>
        </track>
        <track id="trc07" type="connectingTrack">
          <linearLocation id="trc07_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="ne_b04" keepsOrientation="true" posBegin="0.0" posEnd="50.0">
            </associatedNetElement>
          </linearLocation>
          <trackBegin ref="swi02"/>
          <trackEnd ref="swi03"/>
          <length value="50.0" type="physical"/>
        </track>
      </tracks>
      
      <trainDetectionElements>
        <trainDetectionElement id="tde01" type="axleCounter">
          <spotLocation id="tde01_sloc01" netElementRef="ne_a01" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde02" type="axleCounter">
          <spotLocation id="tde02_sloc01" netElementRef="ne_a02" applicationDirection="both" pos="475.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde03" type="axleCounter">
          <spotLocation id="tde03_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde04" type="axleCounter">
          <spotLocation id="tde04_sloc01" netElementRef="ne_a03" applicationDirection="both" pos="200.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde05" type="axleCounter">
          <spotLocation id="tde05_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde06" type="insulatedRailJoint">
          <spotLocation id="tde06_sloc01" netElementRef="ne_b03" applicationDirection="normal" pos="0.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde07" type="insulatedRailJoint">
          <spotLocation id="tde07_sloc01" netElementRef="ne_b03" applicationDirection="both" pos="150.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde08" type="insulatedRailJoint">
          <spotLocation id="tde08_sloc01" netElementRef="ne_b01" applicationDirection="both" pos="75.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde09" type="insulatedRailJoint">
          <spotLocation id="tde09_sloc01" netElementRef="ne_b04" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde10" type="insulatedRailJoint">
          <spotLocation id="tde10_sloc01" netElementRef="ne_b02" applicationDirection="both" pos="25.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde11" type="insulatedRailJoint" detectedObject="axle">
          <spotLocation id="tde11_sloc01" netElementRef="ne_b05" applicationDirection="normal" pos="100.0">
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde12" type="axleCounter">
          <spotLocation id="tde12_sloc01" netElementRef="ne_x01" applicationDirection="both" pos="1700.0">
            <linearCoordinate positioningSystemRef="lps01" measure="2400.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
        <trainDetectionElement id="tde13" type="axleCounter">
          <spotLocation id="tde13_sloc01" netElementRef="ne_x01" applicationDirection="both">
            <linearCoordinate positioningSystemRef="lps01" measure="2550.0" lateralSide="left"/>
          </spotLocation>
        </trainDetectionElement>
      </trainDetectionElements>
    </functionalInfrastructure>

    <infrastructureStates>
      <infrastructureState id="iss01" value="operational">
        <name name="operational infrastructure 2018" language="en"/>
        <elementState id="ess01" refersToElement="lcr01" value="operational">
          <name name="levelCrossing in operation" language="en"/>
          <validityTime>
            <periodBitmask fromDate="2018-01-01" bitmask="1111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100">
              <periodRule>
                <period from="06:00:00" to="22:00:00"/>
              </periodRule>
            </periodBitmask>
          </validityTime>
        </elementState>
      </infrastructureState>
    </infrastructureStates>
    
  </infrastructure>
  

</railML>

References