railML

Railway Markup Language
RailML headr.png
Logotyp för railML-filformat
Filnamnstillägg
.railml, .railmlx
Internet mediatyp application/xml, text/xml, application/zip
Utvecklad av railML.org; Dresden / Tyskland
Initial release 22 december 2005 ( 2005-12-22 )
Senaste släppningen

3.2 26 april 2022 ; 10 månader sedan ( 2022-04-26 )
Typ av format Järnvägsbytesformat
Förlängt från XML
Standard Industristandard
Öppna format ? Ja, CC BY-NC-ND
Hemsida www.railml.org

railML ( Rail way M arkup L anguage) är ett öppet , XML - baserat datautbyteformat för datakompatibilitet för järnvägsapplikationer .

Motivering

Fördelen med ett universellt utbytesformat

Det växande antalet datorapplikationer som modellerar olika aspekter av järnvägsverksamhet, med olika operatörer som utvecklar separata lösningar parallellt, hade en kronisk svårighet att koppla ihop olika järnvägs-IT-applikationer. Utbyte av data för driftkoncept, slothantering, simulering eller infrastrukturplanering etc. var möjligt antingen för hand eller med en mängd specialutvecklade gränssnitt med tidsförluster och kostnadsproblem för järnvägsföretagen. Om det finns n applikationer som ska utbyta data, med ett speciellt gränssnitt för varje programpar, gränssnitt krävs — endast ett, om n=2 , men 10, om n=5 — vilket ökar komplexiteten över genomsnittet.

Detta problem kan mildras med hjälp av Enterprise-applikationsintegration med ett enda, universellt utbytesformat som stöds av alla applikationer och möter behoven för alla typer av datautbyte inom järnvägsdrift: Antalet nödvändiga gränssnitt minskar till n — ett gränssnitt till utbytesformatet för respektive applikation. railML försöker ställa till förfogande ett öppet och gratis, enkelt och behändigt, självbeskrivande format nära befintliga standarder. Paradigmet är att möta kraven från järnvägs-, industri- och myndigheters datautbytesprocesser snarare än att beskriva hela järnvägssystemet.

Skissera

Historia

Utvecklingen av railML initierades i början av 2002 av Fraunhofer-IVI (Dresden, Tyskland) och ETH Zürich – IVT (Zürich, Schweiz) mot bakgrund av den kroniska svårigheten att koppla ihop olika järnvägs-IT-applikationer. railML ändras och anpassas till behoven hos järnvägsinfrastrukturförvaltare (IM) och järnvägsföretag (RU) inom diskussioner. Den första stabila versionen 1.0 släpptes 2005 för produktiv användning. Hittills versionerna 1.0; 1,1; 2.0 till 2.4 släpptes för nedladdning och produktiv användning. railMLs version 3 med en ny topologimodell baserad på RailTopoModel och andra evolutioner var under utveckling sedan mitten av 2015 för att släppas som beta i mitten av 2016 och slutligen släppas för produktiv användning i februari 2019. Under 2015 ett tittar- och valideringsprogram för railML-data med namnet railVIVID släpptes.

Arbetsprincip

railML (järnvägsmarkeringsspråk) är ett vanligt utbytesformat som använder sig av XML-systemets systematik för beskrivning av järnvägsspecifika data. railML möjliggör utbyte av järnvägsdata mellan interna och externa järnvägsapplikationer. railML är utvecklat inom det så kallade ”railML-konsortiet” från railML.org. Det är ett utbytesformat med öppen källkod under creative commons-licens (en gratis registrering på railML är obligatorisk för användning och nedladdning av railML-scheman). Modellspråket för railML är UML och dokumentationsspråket är engelska. Varje railML-utvecklare och -användare uppmanas att bidra med eller föreslå systemförlängningar.

Applikationer kan utbyta data via railML antingen genom att exportera respektive import av railML-filer eller som en direkt interprocesskommunikation via TCP/IP .

Licensiering och prissättning

Användningen av railML är möjlig utan kostnad för användarna och utvecklarna, endast konsultation och certifiering för professionell användning kan vara skyldig att betala kostnader för mjukvaruutvecklaren.

Versioner 0.x och 1.x licensierades under en egen licens, där version 0.x endast var avsedd för internt bruk och delades inom konsortiet.

Version 2.0 till 2.2 brukade vara licensierad med Creative Commons -licensen CC-BY-NC-SA fram till juni 2013. Sedan juli 2013 erbjöds alla versioner från 2.0 och framåt parallellt antingen med en kommersiellt användbar CC-BY-ND (V 3)-licens eller med en begränsad CC-BY-NC-ND (V 3)-licens. Restriktionerna tjänar kvalitetsmått, t.ex. genom att kräva att ansökningar ska certifieras för att beviljas för smidig interoperabilitet.

Version 3.x är licensierad under samma Creative Commons-villkor, men i CC- version 4.0. Med detta anpassar railML.org förbättringarna som gjorts av CC och garanterar schemaanvändare samma användningsrättigheter som tidigare år och railML-versioner.

Logotypen och ordet railML är registrerade som varumärken av railML-konsortiet vid EUIPO .

Juridisk enhet

Juridisk person för det så kallade railML-konsortiet är railML.org eV , en registrerad ideell förening enligt tysk lag (registreringsnummer VR 5750 vid den lokala domstolen i Dresden /Tyskland) sedan den 23 april 2012.

railML-system

railML är baserat på XML och delområden använder andra befintliga XML-scheman som MathML och GML . Den är sammansatt av delsystem. Genom version 2.4 är tre undersystem i produktiv användning:

  • tidtabell för beskrivning av tidtabeller,
  • infrastruktur för den (prioriterade topologiska) beskrivningen av spår och signalutrustning och
  • rullande materiel för beskrivning av fordon.

Sedan railML version 3.1 infördes ett ytterligare undersystem på grund av efterfrågan från gemenskapen:

Ytterligare delsystem är stationsanläggningar ( biljettautomater , väntrum , varuautomater , etc.) eller bemanningslistor ( skiftplanering /listor och arbetstidshantering för konduktörer , etc.) är för närvarande på is, eftersom det inte finns någon efterfrågan från användare.

Tidtabell

Detta underschema tjänar till utbyte av detaljerade tidtabeller. Speciellt är schemat utformat för följande information:

  • Tågkörningstider (ankomster, avgångar och passeringstider)
  • Driftsperioder: de dagar då ett tåg körs
  • Tågdelar: schemaläggning och ruttinformation för genomgående bussar i tåg, t.ex. Orientexpressen på sträckan från Budapest till Beograd på måndagar.
  • Tåg: en samling tågdelar, som kompletterar det vardagliga perspektivet, t.ex. Orientexpressen.
  • Rostering: Cirkulationsplaner för rullande materiel, kopplade till tågdelar.

Infrastruktur

Fokus för detta delschema är järnvägsnätens infrastruktur. Viktiga aspekter är:

  • Nätverks topologi
  • Koordinater
  • Geometri: spårgeometri (gradient, kurvradie)
  • Järnvägsinfrastrukturelement: inventering som baliser och signaler
  • Ytterligare belägna element: abstrakta saker som inte kan röras men lokaliseras, som hastighetsbegränsningar och spårets skick

Rullande lager

Medan underschemat Infrastruktur är fokuserat på immobila tillgångar, beskriver Rullande materiel tillgångar som cirkulerar i nätverket.

  • Fordon
  • Formationer: kombinationen av fordon som ett tåg
  • Dragkraft av lok och motorenheter

Förregling

Kodexempel

Exempel på en tidtabell formulerad i railML


  
	 
		   
			
				   
				   
				     
				   
				   
				   
				   
				   
			
		
	
 <?xml version="1.0" encoding="UTF-8"?>  <railml  xmlns:xsi=  "http://www.w3.org/2000/10/XMLSchema-instance"  xsi:noNamespaceSchemaLocation=  "timetable.xsd "  >  <tidtabell  version=  "1.1"  >  <tåg  trainID=  "RX 100.2"  type=  "planerad"  source=  "opentrack"  >  <tidtabellentries>  <entry  posID=  "ZU"  departure=  "06:08:00"  type=  "begin"  />  <entry  posID=  "ZWI"  departure=  "06:10:30"  type=  "pass"  />  <entry  posID=  "ZOER"  ankomst=  "06:16:00"  departure=  "06:17 :00"  minStopTime=  "9"  type=  "stopp"  />  <entry  posID=  "WS"  departure=  "06:21:00"  type=  "pass"  />  <entry  posID=  "DUE"  departure=  "06: 23:00"  type=  "pass"  />  <entry  posID=  "SCW"  departure=  "06:27:00"  type=  "pass"  />  <entry  posID=  "NAE"  departure=  "06:29:00"  type=  "pass"  />  <entry  posID=  "UST"  arrival=  "06:34:30"  type=  "stop"  />  </timetableentries>  </train>  </timetable>  </railml> 

Rad 3 uttrycker att den använda railML-versionen är 1.1.

Linje 4 bär tågkoden.

Raderna 5 och 15 ramar in resplanen med, i det här fallet, 8 resplanposter.

Resplanen på rad 6 till 14 har argument som positions-ID (t.ex. en station), tid för avgång eller ankomst, och på rad 9 en skyldighet att stanna.

Versioner

Version Utgivningsdatum Stöds tills Licens Kommentar
Gammal version, underhålls inte längre: 0.x 2002–2005 december 2005 Nej (endast intern användning) tidtabell för betaversionen
Gammal version, underhålls inte längre: 1.0 december 2005 Juni 2013 Proprietär Första praktiska erfarenheten
Gammal version, underhålls inte längre: 1.1 november 2007 Juni 2013 Proprietär
Gammal version, underhålls inte längre: 2.0 november 2009 mars 2017 begränsad CC-BY-ND 2.0
Gammal version, underhålls inte längre: 2.1 juli 2011 mars 2017 begränsad CC-BY-ND 2.0 Nedåtkompatibel med V2.0
Gammal version, underhålls inte längre: 2.2 11 juni 2013 30 juni 2021 begränsad CC-BY-NC-ND 3.0 Nedåtkompatibel med V2.1-V2.0
Äldre version, men fortfarande underhållen: 2.3 10 mars 2016 begränsad CC-BY-NC-ND 3.0 Övervägande nedåtkompatibel med V2.2-V2.0
Äldre version, men fortfarande underhållen: 2.4 7 oktober 2018 begränsad CC-BY-NC-ND 3.0 Övervägande nedåtkompatibel med V2.3-V2.0
Aktuell stabil version: 2.5 1 september 2021 begränsad CC-BY-NC-ND 3.0
Övervägande nedåtkompatibel med V2.4-V2.0 kommer också att bli en ISO 4398:2022-norm [ behöver uppdateras ]
Gammal version, underhålls inte längre: 3.0 31 oktober 2017 19 februari 2019 Nej (endast intern användning) baserad på UIC :s RailTopoModel V1.1
Äldre version, men fortfarande underhållen: 3.1 19 februari 2019 begränsad CC-BY-NC-ND 4.0
Infrastruktur och signaleringsdata endast baserat på RailTopoModel V1.2
Aktuell stabil version: 3.2 26 april 2022 begränsad CC-BY-NC-ND 4.0
baserat på RailTopoModel V1.4 tillagt stöd för tidtabell och data om rullande materiel
Framtida release: 3.3 inte bestämt än begränsad CC-BY-NC-ND 4.0
Legend:
Gammal version
Äldre version, fortfarande underhållen
Senaste versionen
Senaste förhandsversionen
Framtida release

Användning av railML-data

I början var den mest använda användningen av railML-data tidtabellsdata för passagerarinformation, tjänstgöringsplanering för konduktörer och förare och tidtabellsimulering, efter användningen av railML-data för sammankopplande planering och infrastruktur som nätbeskrivningar för IM.

Datorprogram

Applikationer som använder railML version 2.x inkluderar många tidtabellsrelaterade program som OpenTrack (interaktiv järnvägssimulator), FBS (planeringsprogramvara för järnvägsdrift), Viriato (schemaläggningssystem) och OpenTimeTable (realtidsanalys av nätverksdriftsdata). Applikationer som använder railML version 3.x inkluderar dessutom BIM- relaterad programvara för infrastrukturplanering som VIS All 3D eller järnvägsmätningssystem som GPSinfradat.

En komplett lista över program med (certifierade) gränssnitt finns på railML:s webbplats för kompatibla applikationer .

railVIVID

railVIVID är ett gratisprogram med öppen källkod som tillhandahålls av UIC och railML.org för att validera railML-filer av version 2.x eller högre och för att visa innehållet i railML-filer i vissa speciella vyer. Detta ska ge även icke-IT-experter en enkel och behändig tillgång till railML-data. Därför kan vissa sevärdheter av järnvägsdata visas, kopieras och skrivas ut med railVIVID:

railVIVID är tillgängligt via railML:s hemsida gratis. Det finns binära versioner för Microsoft Windows och Java , även källkoden publicerades hösten 2015 under EUPL -licensen.

railML.org-initiativet

Utvecklingen av railML drivs av railML.org – Initiative, ett utvecklingspartnerskap mellan oberoende företag och organisationer och europeiska järnvägar. Deltagandet i utvecklings- och halvårskonferenserna för att utbyta erfarenheter och diskutera grunderna är öppet. Det kontinuerliga utvecklingsarbetet är huvudsakligen internetbaserat (tyska och engelska forum). Organisationen av diskussionerna sköts av så kallade railML Coordinators. (gratis) medlemskapet i railML.org Consortium är obligatoriskt för nedladdning och användning av railML-system. Att erhålla en kommersiell certifiering krävs innan kommersiell eller produktiv användning av mjukvarugränssnitt för formatet.

Medlemmar

Medlemmar av railML.org är för närvarande:

En fullständig och uppdaterad lista publiceras på railML.org- communityns webbplats.

Samarbeten

railML.org arbetar i ERIM-projektet (förkortning för European Rail Infrastructure Masterplan ) av International Union of Railways (UIC) för utvecklingen av RailTopoModel som en gemensam datamodell inom järnvägssektorn. Även railML.org samarbetar med Eurocontrol och European Union Agency for Railways .

externa länkar