Rationale
In some vehicles certain seats or spaces are designated to certain groups of people or accessories. The most common example is priority seating which targets persons with reduced mobility (PRM) to offer them an equal degree of access and comfort as other people. Priority seating as defined by EN 16585-2:2022 is not just about precedence. The seats are also designed to account for special needs of PRM similar to wheelchair spaces.
Sources:
Use cases
Knowing in advance which seats are priority seats or otherwise designated spaces helps all passengers. Those who rely on them can more easily find the seats while those who don't, have an increased awareness and can more easily avoid them.
- Automatic seat map generation from deck plan data with symbols that shows which seats are priority seats.
- Text or icon in travel information describing that the vehicle has priority seats. This could only be shown if the user is part of a prioritised group.
- Describing the location of priority seats to blind people.
The features are part of the German handbook of public transport accessibility from the DELFI association. (see DEFLI 3050 and DELFI 3051)
Status quo
There are multiple enumeration values and properties based on the term "special place" like specialSeating from AccommodationFacilityEnumeration and specialSpace from TypeOfLocatableSpotEnumeration. These values may describe priority seats as they are sometimes called seats for people with special needs, but it remains unclear due to the lack of documentation.
The documentation of SpecialPlaceCapacity from CapacityGroup states:
The number of special places on vehicles of the type, e.g. seats for the disabled. [...]
This sounds like it includes priority seats, but "seats for the disabled" only serves as an example here.
The documentation of SpecialPlacesOccupied from OccupancyValuesGroup states:
Total number of special places, e.g. seats for the disabled or lounge seats, [...]
It becomes more clear that "special places" seems to function more like an "other" keyword, describing multiple unrelated places.
There is also PublicUseEnumeration which contains disabledPublicOnly but it is only used in the context of PathLink and not for passenger spaces or seats.
Proposal
This proposal focuses on adding a way to model that certain spots are designated to certain people or accessories, especially wheelchair spaces and priority seats. The second part focuses specifically on the availability of priority seats.
Specific priority use
Add new priority enumeration
The name "PriorityUse" was chosen to be similar to "priority seating" while also being applicable for spaces that are prioritised for e.g. wheelchair users.
Since the same concept also applies to e.g. spaces for bicycles and prams, multiple values from the existing UserTypeEnumeration have been included to make the enumeration more reusable for other areas.
The order of the listed items does not describe any priority among the items.
<xsd:element name="PriorityUse" type="PriorityUseListOfEnumerations" default="none">
<xsd:annotation>
<xsd:documentation>Whether a place is designated for a certain group of people or accessories e.g. a priority seat for PRM or a compartment for wheelchair users and prams.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:simpleType name="PriorityUseListOfEnumerations">
<xsd:list itemType="PriorityUseEnumeration"/>
</xsd:simpleType>
<xsd:simpleType name="PriorityUseEnumeration">
<xsd:restriction base="xsd:NMTOKEN">
<!-- usually for seats: -->
<xsd:enumeration value="personWithReducedMobility">
<xsd:annotation>
<xsd:documentation>On a PASSENGER SPOT this depicts a priority seat as defined in EN 16585-2:2022.</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="senior"/>
<xsd:enumeration value="disabled"/>
<xsd:enumeration value="injured"/>
<xsd:enumeration value="pregnantWoman"/>
<xsd:enumeration value="infantCarryingPerson"/>
<xsd:enumeration value="child"/>
<xsd:enumeration value="woman"/>
<!-- usually for spaces: -->
<xsd:enumeration value="guideDog"/>
<xsd:enumeration value="wheelchairUser">
<xsd:annotation>
<xsd:documentation>On a PASSENGER SPOT this depicts a wheelchair space as defined in EN 16585-2:2022.</xsd:documentation>
</xsd:annotation>
</xsd:enumeration>
<xsd:enumeration value="walkingChair"/>
<xsd:enumeration value="pram"/>
<xsd:enumeration value="bicycle"/>
<!-- no prioritisation -->
<xsd:enumeration value="none"/>
</xsd:restriction>
</xsd:simpleType>
Add new property to PassengerSpot
Add the PriorityUse element to PassengerSpotGroup. We consider the property of similar relevance as PublicUse, FareClass or GenderLimitation wherefore it should be possible to model it directly via a specific property where most applicable (PassengerSpot).
A verbal location of the spot or other passenger relevant information can be put into the element's Description.
Alternative property names: "PrioritisedFor" or "DesignatedFor".
<xsd:group name="PassengerSpotGroup">
<xsd:sequence>
<xsd:element ref="PriorityUse" minOccurs="0"/>
[...]
</xsd:sequence>
</xsd:group>
Add as facility
Add PriorityUse to CommonFacilityGroup and AllFacilityGroup to allow using the concept in other parts of NeTEx. This is again similar to FareClasses and GenderLimitation.
Priority seating availability
Priority seating describes a seat that is specifically designed for PRMs, therefore it should be treated similar to wheelchair or pushchair spaces. This specifically targets priority seats as defined in EN 16585-2:2022.
New property for CapacityGroup
CapacityGroup can be used to model the number of possible wheelchair-, pram-, pushchair- and bicycle places inside a VehicleType. Adding another element called PrioritySeatingCapacity allows modeling the number of priority seats.
<xsd:group name="CapacityGroup">
<xsd:sequence>
[...]
<xsd:element name="PrioritySeatingCapacity" type="NumberOfPassengers" minOccurs="0"/>
</xsd:sequence>
</xsd:group>
New value for TypeOfLocatableSpotEnumeration
The TypeOfLocatableSpotEnumeration allows modeling the number of dedicated spots inside a PassengerSpace. Likewise to CapacityGroup a new value is added to the TypeOfLocatableSpotEnumeration.
<xsd:simpleType name="TypeOfLocatableSpotEnumeration">
<xsd:restriction base="xsd:normalizedString">
<xsd:enumeration value="seat"/>
<!-- NEW START -->
<xsd:enumeration value="prioritySeat"/>
<!-- NEW END -->
<xsd:enumeration value="bed"/>
<xsd:enumeration value="standingSpace"/>
<xsd:enumeration value="wheelchairSpace"/>
<xsd:enumeration value="pushchairSpace"/>
<xsd:enumeration value="luggageSpace"/>
<xsd:enumeration value="bicycleSpace"/>
<xsd:enumeration value="vehicleSpace"/>
<xsd:enumeration value="specialSpace"/>
</xsd:restriction>
</xsd:simpleType>
New value for AccommodationFacilityEnumeration
A new value to the AccommodationFacilityEnumeration is added. This allows adding the AccommodationFacility as a facility to depict whether a vehicle or compartment provides any priority seats.
<xsd:simpleType name="AccommodationFacilityEnumeration">
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="unknown"/>
<xsd:enumeration value="standing"/>
<xsd:enumeration value="seating"/>
<!-- NEW START -->
<xsd:enumeration value="prioritySeating"/>
<!-- NEW END -->
<xsd:enumeration value="sleeper"/>
<xsd:enumeration value="singleSleeper"/>
<xsd:enumeration value="doubleSleeper"/>
<xsd:enumeration value="specialSleeper"/>
<xsd:enumeration value="couchette"/>
<xsd:enumeration value="singleCouchette"/>
<xsd:enumeration value="doubleCouchette"/>
<xsd:enumeration value="specialSeating"/>
<xsd:enumeration value="recliningSeats"/>
<xsd:enumeration value="babyCompartment"/>
<xsd:enumeration value="familyCarriage"/>
<xsd:enumeration value="recreationArea"/>
<xsd:enumeration value="panoramaCoach"/>
<xsd:enumeration value="pullmanCoach"/>
<xsd:enumeration value="pushchair"/>
<xsd:enumeration value="wheelchair"/>
</xsd:restriction>
</xsd:simpleType>
Alternatively it might be added to the AccommodationAccessEnumeration.
Discarded ideas:
Add boolean property to PassengerSpot
Add a boolean property like PrioritySeat=true|false or SpecialNeed=true|false to PassengerSpot.
Rationale: There are different kinds of priority spots like an area that is prioritised for wheelchairs or a seat that is prioritised for PRM. The distinction between them cannot be described via a boolean.
Note
This proposal is part of a series of proposals focusing on accessibility around vehicle types. It is motivated by the development of a NeTEx based vehicle registry as well as the German handbook of accessible travel chains. We are happy to contribute the necessary XSD changes via a pull request on approval.
Rationale
In some vehicles certain seats or spaces are designated to certain groups of people or accessories. The most common example is priority seating which targets persons with reduced mobility (PRM) to offer them an equal degree of access and comfort as other people. Priority seating as defined by EN 16585-2:2022 is not just about precedence. The seats are also designed to account for special needs of PRM similar to wheelchair spaces.
Sources:
Use cases
Knowing in advance which seats are priority seats or otherwise designated spaces helps all passengers. Those who rely on them can more easily find the seats while those who don't, have an increased awareness and can more easily avoid them.
The features are part of the German handbook of public transport accessibility from the DELFI association. (see DEFLI 3050 and DELFI 3051)
Status quo
There are multiple enumeration values and properties based on the term "special place" like
specialSeatingfromAccommodationFacilityEnumerationandspecialSpacefromTypeOfLocatableSpotEnumeration. These values may describe priority seats as they are sometimes called seats for people with special needs, but it remains unclear due to the lack of documentation.The documentation of
SpecialPlaceCapacityfromCapacityGroupstates:This sounds like it includes priority seats, but "seats for the disabled" only serves as an example here.
The documentation of
SpecialPlacesOccupiedfromOccupancyValuesGroupstates:It becomes more clear that "special places" seems to function more like an "other" keyword, describing multiple unrelated places.
There is also
PublicUseEnumerationwhich containsdisabledPublicOnlybut it is only used in the context ofPathLinkand not for passenger spaces or seats.Proposal
This proposal focuses on adding a way to model that certain spots are designated to certain people or accessories, especially wheelchair spaces and priority seats. The second part focuses specifically on the availability of priority seats.
Specific priority use
Add new priority enumeration
The name "PriorityUse" was chosen to be similar to "priority seating" while also being applicable for spaces that are prioritised for e.g. wheelchair users.
Since the same concept also applies to e.g. spaces for bicycles and prams, multiple values from the existing
UserTypeEnumerationhave been included to make the enumeration more reusable for other areas.The order of the listed items does not describe any priority among the items.
Add new property to
PassengerSpotAdd the
PriorityUseelement toPassengerSpotGroup. We consider the property of similar relevance asPublicUse,FareClassorGenderLimitationwherefore it should be possible to model it directly via a specific property where most applicable (PassengerSpot).A verbal location of the spot or other passenger relevant information can be put into the element's
Description.Alternative property names: "PrioritisedFor" or "DesignatedFor".
Add as facility
Add
PriorityUsetoCommonFacilityGroupandAllFacilityGroupto allow using the concept in other parts of NeTEx. This is again similar toFareClassesandGenderLimitation.Priority seating availability
Priority seating describes a seat that is specifically designed for PRMs, therefore it should be treated similar to wheelchair or pushchair spaces. This specifically targets priority seats as defined in EN 16585-2:2022.
New property for
CapacityGroupCapacityGroupcan be used to model the number of possible wheelchair-, pram-, pushchair- and bicycle places inside aVehicleType. Adding another element calledPrioritySeatingCapacityallows modeling the number of priority seats.New value for
TypeOfLocatableSpotEnumerationThe
TypeOfLocatableSpotEnumerationallows modeling the number of dedicated spots inside aPassengerSpace. Likewise toCapacityGroupa new value is added to theTypeOfLocatableSpotEnumeration.New value for
AccommodationFacilityEnumerationA new value to the
AccommodationFacilityEnumerationis added. This allows adding theAccommodationFacilityas a facility to depict whether a vehicle or compartment provides any priority seats.Alternatively it might be added to the
AccommodationAccessEnumeration.Discarded ideas:
Add boolean property to
PassengerSpotAdd a boolean property like
PrioritySeat=true|falseorSpecialNeed=true|falsetoPassengerSpot.Rationale: There are different kinds of priority spots like an area that is prioritised for wheelchairs or a seat that is prioritised for PRM. The distinction between them cannot be described via a boolean.