NeTEx-CEN / NeTEx

NeTEx is a CEN Technical Standard for exchanging Public Transport schedules and related data.
http://netex-cen.eu
GNU General Public License v3.0
80 stars 39 forks source link

Describe a structured way to handle a strictContainmentAggregationStructure #591

Open skinkie opened 9 months ago

skinkie commented 9 months ago

First appearing recently in #588

Going through NeTEx the strictContainmentAggregationStructure is handled differently and certainly not consistently.

I think we want to assure:

  1. there is at minimum a single element in this containment structure, otherwise it must be invalid.
  2. I think this can be assured with a choice minOccurs=1 (the default) also on its sub elements.
skinkie commented 9 months ago

Have an in depth discussion with the group if we should restrict (certain) containment structures to a single type.

https://github.com/NeTEx-CEN/NeTEx/pull/588/files#r1425169764

For example: valididityConditions: [AvailabilityConditionRef] XOR [AvailabilityCondition] calls: [DatedCall] XOR [Call]

nick-knowles commented 9 months ago

There are some further check that could be made for consistence and correctness

1) check that strictContainmentAggregationStructureis used where it should be (and not onetoManyRelationshipStructure)

2) VersionedChild should generally be contained within a strictContainmentAggregationStructure

ue71603 commented 5 months ago

@skinkie do we do this in 2.0 or 2.1? May it affect "the interface".. Probably yes...

skinkie commented 5 months ago

2.0, and see what breaks.