Remove unique constraints, because we have xsd:key#998
Remove unique constraints, because we have xsd:key#998
Conversation
|
@skinkie, |
|
2.0.1 |
|
I had a first look locally today; the branch is not up-to-date anymore, so I'll push the "update from v2.0" from my machine. @TuThoThai in order for GitHub to detect that a branch is not up-to-date, we'll have to (re?)-enable "check status updates" first. |
For both files: * adding in the metadata the changes made most recently on ref / key constraints * changing status from 1.0 to 2.0
|
@skinkie, great work on this one! It definitly helped a lot with the validation speed, but also made the Schema much faster to load with tools like XMLSpy I made a tiny commit to:
|
There was a problem hiding this comment.
I did manual + automated (AI) reviews. The vast majority (> 97%) of the stuff seems right to me. I have questions on a few remaining cases.
Can someone with more historical or functional context comment on these? (@skinkie and others!).
Unsure at this point if these are false positives / issues with the review, or something that deserves actual changes possibly.
Potentially (???) missing xsd:key Replacements
- AlternativeName_UniqueBy_Id_Version_useForLanguage_ordered - Alternative names with language/order constraint
- AlternativeText_UniqueBy_Id_AttributeName_UseForLanguage_Version - Alternative text with 4-field uniqueness (
@id,@attributeName,@useForLanguage,@version) - Vehicle_UniqueRegistrationNumber - Vehicle registration number uniqueness constraint
- Call_UniqueBy_Id_Version_Order - Call element uniqueness with ordering
- DynamicDistanceMatrixElement_UniqueBy_Id_Version - Dynamic distance matrix element constraint
|
And a quick performance test. It looks on this specific test we're back to v1.3.1 performance level. Nice work @skinkie, thanks for tackling this out. |
You are right @thbar whenever there is a |
|
Ping @TuThoThai @skinkie @ue71603 regarding the potentially missing constraints (#998 (review)): for each of them, do you see the same issue as me? Do you consider we need to add a (I will try to look a bit closer as time permits, but your input will be definitely worthy). |
|
As of 13 March 2026:
|
NeTEx_publication.xsd: Roll-back for deletion of unique contraints that were not duplicated with key contraints
NeTEx_publication_timetable.xsd : roll-back on deletion of unique constraints when there is no key constraints
|
Heads-up @TuThoThai: I have identified (teaming up with 🤖 AI) a few cases that are not validated anymore hence regressions compared to I will provide failing examples, so that we can use the build status here as a signal. I am considering opening a sister-PR (either from |
|
@thbar you mention that things start to fail. How can something fail if something is removed. |
@skinkie we lack "failing examples" (things that are supposed to fail if we remove something essential, like a uniqueness constraint). I will present a PR that adds some checks that must fail for the PRs to pass, something that is not present in the repo at the moment if I read correctly. |
|
(not to say that we necessarily need to integrate that into the CI all the time, it could be kept as separate reproductions, but if removal of 8k lines introduces regressions, we need to find ways to spot them reliably) |
|
(will provide failing examples later) |
Fix #994
With unique constraints:
Without unique constraints: