Enhance <state> with further states
Description
Most infrastructure elements already have a child element , which allows to mark them as being not available for operation via the boolean attribute @disabled.
The task is to think about enhancement of this element to cover a wider variety of states regarding the availability of these infrastructure elements.
Background
Links
- Forum discussion:
- Christian Rahmig, 28.06.2018: [https://www.railml.org/forum/index.php?t=msg&th=591&start=0&]
- Trac ticket:
- Wiki documentation:
- IS:propOther: [https://wiki.railml.org/index.php?title=IS:propOther]
- IS:state: [https://wiki.railml.org/index.php?title=IS:state]
Proposed solution in railML 2.4
Fuse implementation of with already existing enumeration attribute @status, which provides the following states for the OCP:
- planned
- operational (default value)
- disabled
- closed
In parallel to adding the attribute @status, the existing boolean attribute @disabled need to be set, because it is a mandatory attribute. Therefore, @disabled cannot be marked DEPRECATED although it does not provide any additional information to what is expressed with the new attribute @status.
The following example describes a level crossing that is currently not available for operation:
<levelCrossing ...>
<states>
<state status="disabled" disabled="true"/>
</states>
</levelCrossing>
Further, the OCP status information is moved inside the new child element . In parallel, the existing attribute @status is marked DEPRECATED.
Example for the OCP:
<ocp ...>
<propOther ...>
<states>
<state status="planned"/>
</states>
</propOther>
</ocp>
Last, but not least, it was suggested to add another status enumeration value indicating that something is intended to be built, but not yet in a real planning status. In fact, a "concept" is described and therefore, it is suggested to name the new enumeration value "conceptual".