Opened 2 years ago

Last modified 19 months ago

#230 new enhancement

Counting element appearance for certification (de: Zählen der Elementvorkommen für Zertifizierung)

Reported by: vasco.kolmorgen Owned by: birgit.jaekel
Priority: major Component: General and Main Views
Version: 1.2 Keywords: counting, semantic validation
Cc:

Description (last modified by vasco.kolmorgen)

railVIVID shall be able to count the number of different elements (element types) in the railML file. The focus of this counting shall be on the main elements of the railML schema.
How often an element will be used in the file (size of network/timetable) is not meant with this ticket (see #209).

The UI (section in programme, display) of the counting element shall be:

  • in the General / Allgemein window of the programme
  • in a separate tab of this window calles statistics
  • with the following results:
    • railML scheme: Z.z
    • timetable: XX of YY elements used
    • infrastructure: XX of YY elements used
    • interlocking: XX of YY elements used
    • rollingstock: XX of YY elements used
    • whereas
      • XX is the number of used elements from YY
      • YY is the number of usable elements from file "elementsForCertification_VZz.txt"
      • XX <= YY AND XX => 0
  • countings shall be done by opening the sub-window (or by a button?)
  • if counting takes longer than 5 seconds a hint "please wait" shall be displayed

For railML 2.3 infrastructure, this includes:

  • timetable
    • Timetable masterdata
      • category: timetable/categories/category
      • operatingPeriod: timetable/operatingPeriods/operatingPeriod
      • operatingDayDeviance: timetable/operatingPeriods/operatingPeriod/operatingDay/operatingDayDeviance
      • specialService: timetable/operatingPeriods/operatingPeriod/specialService
      • timetablePeriod: timetable/timetablePeriods/timetablePeriod
      • holiday: timetable/timetablePeriods/timetablePeriod/holidays/holiday
    • Train data
      • trainPart: timetable/trainParts/trainPart
      • passengerUsage: timetable/trainParts/trainPart/formationTT/passengerUsage
      • reservationInfo: timetable/trainParts/trainPart/formationTT/reservationInfo
      • ocpTT: timetable/trainParts/trainPart/ocpsTT/ocpTT
      • connection: timetable/trainParts/trainPart/ocpsTT/ocpTT/connections/connection
      • sectionTT: timetable/trainParts/trainPart/ocpsTT/ocpTT/sectionTT
      • stopDescription: timetable/trainParts/trainPart/ocpsTT/ocpTT/stopDescription
      • times: timetable/trainParts/trainPart/ocpsTT/ocpTT/times
      • organizationalUnitBinding: timetable/trainParts/trainPart/organizationalUnitBinding
      • formationTT: timetable/trainParts/trainPart/formationTT
      • equipmentUsage: timetable/trainParts/trainPart/formationTT/equipmentUsage
      • train: timetable/trains/train
      • trainPartSequence: timetable/trains/train/trainPartSequence
      • brakeUsage: timetable/trains/train/trainPartSequence/brakeUsage
      • speedProfileRef: timetable/trains/train/trainPartSequence/speedProfileRef
    • Train group data
      • trainGroup: timetable/trainGroups/trainGroup
      • trainRef: timetable/trainGroups/trainGroup/trainRef
    • Rostering
      • blockPart: timetable/rosterings/rostering/blockParts/blockPart
      • block: timetable/rosterings/rostering/blocks/block
      • blockPartSequence: timetable/rosterings/rostering/blocks/block/blockPartSequence
      • blockPartRef: timetable/rosterings/rostering/blocks/block/blockPartSequence/blockPartRef
      • circulation: timetable/rosterings/rostering/circulations/circulation
  • infrastructure
    • Main Infrastructure Elements
      • <infraAttributes>
      • <track>
      • <line>
      • <locallyControlledArea>
      • <ocp>
      • <controller>
      • <speedProfile>
    • Track Topology
      • <trackBegin>
      • <trackEnd>
      • <mileageChange>
      • <switch>
      • <crossing>
      • <crossSection>
      • <border>
    • Track Elements
      • <speedChange>
      • <gradientChange>
      • <radiusChange>
      • <tunnel>
      • <brigde> (misspelling in the scheme, correct name from railML 3 will be <bridge>)
      • <levelCrossing>
      • <ownerChange>
      • <operationModeChange>
      • <trainProtectionChange>
      • <electrificationChange>
      • <powerTransmissionChange>
      • <axleWeightChange>
      • <gaugeChange>
      • <clearanceGaugeChange>
      • <geoMapping>
      • <trackCondition>
      • <platformEdge>
      • <serviceSection>
    • Track OCS Elements
      • <signal>
      • <trainDetector>
      • <trackCircuitBorder>
      • <balise>
      • <trainProtectionElement>
      • <stopPost>
      • <derailer>
      • <trainRadioChange>
    • Further types of sub-elements are not considered, so that a railML file at maximum contains 40 different infrastructure elements.
  • rollingstock
    • formation
      • <trainOrder>
      • <trainBrakes>
      • <trainResistance>
    • vehicle
      • <classification>
        • <operator>
      • <engine>
        • <propulsion>
        • <monitoring>
          • <nationalSystem>
      • <wagon>
        • <passenger>
          • <places>
          • <service>
        • <goods>
          • <service>
      • <vehicleBrakes>
        • <vehicleBrake>
    • Further types of sub-elements are not considered, so that a railML file at maximum contains XX different rollingstock elements.
  • interlocking
    • ???
      • to be defined by scheme coordinator beginning from railML 3.1

Change History (12)

comment:1 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)
  • Summary changed from Counting elements in railML file (required for Certification Process) to Counting element appearance for certification (de: Zählen Elementvorkommen für Zertifizierung)
  • Version changed from 1.1 to 1.1.x

translation of title added; arrangement improved and TT, RS, IL added

comment:2 Changed 2 years ago by birgit.jaekel

For the sake of automised searching for a list of elements also in further versions a list of xpaths should be provided for each railML version. The file should be named "elementsForCertification_Vxx.txt". xx has to be a two digit representation of the railML version starting with 1 digit for major version followed by 1 digit of minor version

e.g. file "elementsForCertification_V23.txt"
//infrastructure/tracks/track/trackElements/*/speedChange
//infrastructure/tracks/track/trackElements/*/gradientChange

See http://www.w3schools.com/xml/xpath_syntax.asp for xpath syntax.

For each XPath-Expression only the first found element will be counted, so the upper example will result in values lower or equal to 2.

Make sure to start each xpath with //subschema/ to enable the counting of number of elements defined in a subschema.

Last edited 2 years ago by birgit.jaekel (previous) (diff)

comment:3 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)
  • Summary changed from Counting element appearance for certification (de: Zählen Elementvorkommen für Zertifizierung) to Counting element appearance for certification (de: Zählen der Elementvorkommen für Zertifizierung)

comment:4 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)

Description of GUI and user prompting added

Last edited 2 years ago by vasco.kolmorgen (previous) (diff)

comment:5 Changed 2 years ago by vasco.kolmorgen

IS-Coord asked other railML-Coords to add their values too (Date: 28.11.2016; 16:11:31 CET)

  • TT-Coord: OK, but after December 6th, 2016 (Date: 28.11.2016; 17:23:58 CET)
  • RS-Coord: Done (Date: 08.12.2016; 13:46:47 CET)
Last edited 2 years ago by vasco.kolmorgen (previous) (diff)

comment:6 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)

Elements sent by RS-Coord (Date: 08.12.2016; 13:46:47 CET) added

comment:7 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)

Description of <axleWeightChange> corrected and description of <brigde> "corrected"

comment:8 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)

Description of <trainDetectionElement> removed and description of <trainDetector>
<trackCircuitBorder> added (Mail from IS coordinator; 23.12.2016, 11:29:32 CET)

comment:9 Changed 2 years ago by vasco.kolmorgen

  • Description modified (diff)

comment:10 Changed 23 months ago by vasco.kolmorgen

  • Priority changed from normal to major
  • Version changed from 1.1.x to 1.2

comment:11 Changed 19 months ago by vasco.kolmorgen

  • Description modified (diff)

TT-Elements added taking ito account the

comment:12 Changed 19 months ago by birgit.jaekel

In 745/railML-viewer:

see #230
added tt elements for element counting

Note: See TracTickets for help on using tickets.