Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend TypeOfFrame/ClassInFrameRef with ability to describe subelements that are minimally required #649

Closed
skinkie opened this issue Jan 25, 2024 · 4 comments
Assignees
Labels
enhancement non semantic enhacement: technical enhancement, etc.

Comments

@skinkie
Copy link
Contributor

skinkie commented Jan 25, 2024

In order to make a profile definition TypeOfFrame/ClassInFrameRef is an embedded way to describe a profile. What is currently lacking is the ability to describe the elements required in the profile.

If from this minimal definition a derived XML Schema (or Schematron) can be generated, every profile can be validated against an always up to date NeTEx upstream, without manual the manual labor of maintaining an extra XML Schema by hand (such as EPIP, Dutch, etc.)

@skinkie skinkie added the enhancement non semantic enhacement: technical enhancement, etc. label Jan 25, 2024
@Aurige
Copy link
Contributor

Aurige commented Jan 25, 2024

Datex 2 also worked in that direction, https://docs.datex2.eu/v3.0/profiling/index.html but in a different way (it looks to be a dedicated tool)

@ue71603
Copy link
Contributor

ue71603 commented Jan 25, 2024

you want a required="true" ?

@skinkie
Copy link
Contributor Author

skinkie commented Jan 25, 2024

you want a required="true" ?

Yes, but not on ClassInFrameRef, but on something like an Element under it. For example passingTimes are required er required in ServiceJourney for EPIP and Nordic profile. I would like to see something like:

<ClassInFrameRef ref="ServiceJourney">
  <ObjectInClassRef ref="Description" use="optional" /> <!-- minOccurs in root takes preference, hence this is redundant, but might be interesting to mention that the generic implementation would consider it -->
  <ObjectInClassRef ref="passingTimes" use="required" />
  <ObjectInClassRef ref="calls" use="prohibited" />
</ClassInFrameRef>

@ue71603
Copy link
Contributor

ue71603 commented Feb 2, 2024

fixed in #650

@ue71603 ue71603 closed this as completed Feb 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement non semantic enhacement: technical enhancement, etc.
Projects
None yet
Development

No branches or pull requests

6 participants