Re: Delay Causes Representation in RailML [message #824 is a reply to message #822] |
Mon, 15 October 2012 16:47 |
Susanne Wunsch railML
Messages: 0 Registered: January 2020
|
|
|
|
Hi Dirk, Matteo and others,
(I just filed a Trac-ticket for this topic [1]).
Dirk Bräuer <dirkbraeuer(at)irfpde> writes:
>> I would presume there could be multiple causes to be defined for a
>> single delay. Am I right?
>
> Not basically. If you allow multiple reasons you should also create a
> possibility to note the basic (earliest) reason - the other's being
> caused by that one. Possibly a time-stamp per reason could be useful
> - time when the certain reason was added. The basic one is the one
> with the earliest time-stamp.
>
> I would suggest to allow multiple reasons in a kind they could easily
> be extended later (e. g. enumerable element).
It's a bit hard to find an lightweight way to define these interactions.
The delay cause could be defined very deep inside the railML tree:
timetable/trainParts/trainPart/ocpsTT/ocpTT/statistics/stati stic/...
...mean/@arrivalDelay ...mean/@departureDelay
...median/@arrivalDelay ...median/@departureDelay
...standardDeviation/@arrivalDelay ...standardDeviation/@departureDelay
I just realized that there is no position to define the
"real/actual/current" delays. Whereas the "real/actual/current" arrival and
departure times (and days) are categorized by 'scope="actual"'.
I would not recommend using the 'mean' element therefore, no matter that
the mean value of one value is the same as the value itself. ;-)
There is a similar situation for the "real/actual/current" stop time
timetable/trainParts/trainPart/ocpsTT/ocpTT/...
...stopDescription/stopTimes/@minimalTime
that is a clear planning value, not fitting the statistical point of
view.
How about extending the 'statistic' element by ...
...current/@arrivalDelay
...current/@departureDelay
...current/@stopTime
for the above discovered issues.
Coming back to the original purpose - proposing a position and structure
for several more or less interdependent delay causes.
* new element 'delayCauses' as a container and sub-element to the newly
proposed 'current' element
* one or more sub-elements 'delayCause' with basic railML attributes
(id, description...) and a 'date' and 'time' attribute for the
occurence history
* choice of the following sub-elements:
'infrastructureManagerResponsible', 'railwayUndertakingResponsible',
'otherResponsible' (following the code structure of UIC 450-2)
* depending on the '*Responsible' element there is a list of possible
sub-elements with according cause attributes (also following the code
structure of UIC 450-2 in an expandable matter)
The resulting structure may look like the following:
<current arrivalDelay="PT2M">
<delayCauses>
<delayCause id="dc1" time="17:12:00Z" date="2012-10-14"
description="Something really special happened">
<otherResponsible>
<external subject="outsideInfluence"/>
</otherResponsible>
</delayCause>
</delayCauses>
</current>
Further causes would be:
<infrastructureManagerResponsible>
<management
subject="timetableCompilation"/
"formationOfTrain"/
"mistakesInOperationalProcedures"/
"wrongApplicationOfPriorityRules"/
"staff"/
"other:foo"/>
<infrastructureInstallations
subject="signalling"/
"signallingAtLevelCrossings"/
"telecommunication"/
"powerSupplyEquipment"/
"track"/
"structures"/
"staff"/
"other:foo"/>
<civilEngineering
subject="plannedConstructionWork"/
"irregularitiesInExecutionOfConstructionWork"/
"speedRestrictionDueToDefectiveTrack"/
"other:foo"/>
<otherInfrastructureManager
subject="next"/
"previous"/>
</infrastructureManagerResponsible>
<railwayUndertakingResponsible>
<commercial
subject="exceedingTheStopTime"/
"requestOfTheRailwayUndertaking"/
"loadingOperations"/
"loadingIrregularities"/
"commercialPreparationOfTrain"/
"staff"/
"other:foo"/>
<rollingstock
subject="rostering"/
"formationOfTrainsByRailwayUndertaking"/
"problemsAffectingPassengerCoaches"/
"problemsAffectingFreightWagons"/
"problemsAffectingEngines"/
"staff"/
"other:foo"/>
<otherRailwayUndertaking
subject="next"/
"previous"/>
</railwayUndertakingResponsible>
<otherResponsible>
<external
subject="strike"/
"administrativeFormalities"/
"outsideInfluence"/
"weatherAndNaturalCauses"/
"nextNetwork"/
"other:foo"/>
<secondary
subject="emergencySituation"/
"trackOccupation"/
"turnAround"/>
"connection"/>
"furtherInvestigationNeeded"/
"other:foo"/>
</otherResponsible>
Sorry for this longish posting.
Kind regards...
Susanne
[1] https://trac.assembla.com/railML/ticket/170
--
Susanne Wunsch
Schema Coordinator: railML.common
|
|
|