F schema export references
-
Review changes -
-
Download -
Patches
-
Plain diff
Summary
For https://gitlab.indiscale.com/caosdb/customers/dimr/management/-/issues/38 Extends !80 (merged) by treatment of references and list of references.
(List of) References are translated int (arrays of) "oneOf"
properties: They include a subschema for the creation of new Records of the referenced types, and an enum with the existing Records. A special case are reference properties with the generic db.REFERENCE
datatype. Since here, we can't create a new Record (since we don't know a type), only the enum with all Records and Files is used.
Focus
RecordType treatment has been refactored s.th. it can be used recursively to create subschemas. Apart from this and the generation of the enum values, the existing property treatment was already enough.
Test Environment
Unit and integration tests should be sufficient but feel free to test with your favorite RT from a live system, too.
Check List for the Author
Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines
-
All automated tests pass -
Reference related issues -
Up-to-date CHANGELOG.md (or not necessary) -
Up-to-date JSON schema (or not necessary) -
Appropriate user and developer documentation (or not necessary) - How do I use the software? Assume "stupid" users.
- How do I develop or debug the software? Assume novice developers.
-
Annotations in code (Gitlab comments) - Intent of new code
- Problems with old code
- Why this implementation?
Check List for the Reviewer
-
I understand the intent of this MR -
All automated tests pass -
Up-to-date CHANGELOG.md (or not necessary) -
Appropriate user and developer documentation (or not necessary) -
The test environment setup works and the intended behavior is reproducible in the test environment -
In-code documentation and comments are up-to-date. -
Check: Are there specifications? Are they satisfied?
For further good practices have a look at our review guidelines.
Merge request reports
- version 1748548b0d
- version 16fcc99597
- version 158f9a8b62
- version 14a4e990c8
- version 1385e8549b
- version 12e990d6bc
- version 1122a8ea90
- version 103d93f7a0
- version 96007fc62
- version 897be7ef9
- version 7894c7637
- version 6318e033a
- version 545930bd3
- version 43fa0ec7b
- version 38f55d34c
- version 22393d33c
- version 1f5af30dc
- dev (base)
- latest version48548b0d25 commits,
- version 1748548b0d25 commits,
- version 16fcc9959724 commits,
- version 158f9a8b6223 commits,
- version 14a4e990c821 commits,
- version 1385e8549b19 commits,
- version 12e990d6bc18 commits,
- version 1122a8ea9017 commits,
- version 103d93f7a016 commits,
- version 96007fc6215 commits,
- version 897be7ef914 commits,
- version 7894c763713 commits,
- version 6318e033a12 commits,
- version 545930bd311 commits,
- version 43fa0ec7b10 commits,
- version 38f55d34c9 commits,
- version 22393d33c5 commits,
- version 1f5af30dc4 commits,
- Side-by-side
- Inline