NeTEx icon indicating copy to clipboard operation
NeTEx copied to clipboard

Why is ServiceFacilitySet, SiteFacilitySet, PassengerCapacity not a VersionedChild?

Open skinkie opened this issue 2 years ago • 14 comments

https://github.com/NeTEx-CEN/NeTEx/blob/master/xsd/netex_framework/netex_reusableComponents/netex_facility_version.xsd#L306

skinkie avatar Jan 09 '23 00:01 skinkie

You want to investigate: 'LineSection', 'ServiceAccessRight2', 'ActivatedEquipment', 'SimpleValidityCondition', 'TravelSpecification2', 'FareSection', 'GroupOfStopPlaces', 'ServiceFacilitySet', 'TimetabledPassingTimeView', 'EstimatedPassingTimeView', 'ComplexFeature', 'GeneralSection', 'SiteFacilitySet', 'OtherPlaceEquipment', 'CommonSection', 'TargetPassingTimeView', 'FareContractEntry', 'ObservedPassingTimeView', 'ServiceAccessRight1', 'SimpleFeature', 'PassengerCapacity'

These are not part of GeneralFrame. My guess is they are invalidly not VersionedChild.

skinkie avatar Jan 09 '23 00:01 skinkie

I think that it makes sense to complement them with a substitutionGroup="VersionedChild"

Aurige avatar Jan 10 '23 15:01 Aurige

@Aurige PassengerCapacity is also a really strange variant. It is an EntityInVersion with an optional id attribute... why make such exceptions?

skinkie avatar Jan 10 '23 17:01 skinkie

I can't see this: image

Aurige avatar Jan 11 '23 08:01 Aurige

@Aurige you can here: https://github.com/NeTEx-CEN/NeTEx/blob/master/xsd/netex_framework/netex_reusableComponents/netex_vehicleType_version.xsd#L613

skinkie avatar Jan 11 '23 11:01 skinkie

I have this, but this is not an additional Id, it is the specialisation of the Id to a type="PassengerCapacityIdType" (the original Id being inherited from ENTITY IN VERSION ...)

Aurige avatar Jan 11 '23 11:01 Aurige

Yes, but it now makes an entity in version with an optional id.

skinkie avatar Jan 11 '23 14:01 skinkie

Id is not always necessary when something is mainly embedded in the xml hierarchy, and not a standalone object... but ok, that's not best for database... also in such case there is one single use of the info (no reuse) so you can define the id you want

Aurige avatar Jan 11 '23 15:01 Aurige

I don't think we should promote inconsistent behavior.

skinkie avatar Jan 11 '23 20:01 skinkie

FacilitySets can be reused in many different places.
Just because something can be inlined doesnt make it a versioned child. Typically a versioned child has no independent existance, thus, if its parent is deleted so is it. Similalry the same capacity requirement might be specified on many different vehicle types.

nick-knowles avatar Dec 10 '23 03:12 nick-knowles

@skinkie Does Nick's anser satisfy you? Then we might close this issue.

ue71603 avatar Dec 12 '23 19:12 ue71603

Not really :-)

skinkie avatar Dec 12 '23 19:12 skinkie

There are some missing substitution groups ... to be fixed

Aurige avatar Dec 13 '23 15:12 Aurige

I do this for 2.1. I guess this is hygiene only.

ue71603 avatar Apr 19 '24 09:04 ue71603