Details
Assignee
Antranig BasmanAntranig BasmanReporter
Antranig BasmanAntranig BasmanComponents
Priority
Major
Details
Details
Assignee
Antranig Basman
Antranig BasmanReporter
Antranig Basman
Antranig BasmanComponents
Priority
Created June 2, 2017 at 4:39 PM
Updated July 22, 2024 at 1:15 PM
We have a number of use cases coming up where we require to employ JSON schema material to validate material, which may form Infusion component options or may be other material such as GPII preferences, preference sets, solution entries, etc.
http://the-t-in-rtf.github.io/drafts/infusion-and-json-schema-reuse.html contains a good exploration of the relationship between JSON schema and Infusion's model for reuse. These are not perfectly aligned in a number of respects, for example, the overriding model applied for complex directives such as anyOf, allOf, etc. applies an "all or nothing" approach whereby any merging value wholly replaces that in a base document. This makes for easily predictable results, but makes some reuse scenarios more complex as well as requiring special support for coordinating with Infusion's overriding rules.
In https://pad.gpii.net/p/pcp-api-7g124ngs , we have explored some options for aligning these schemes and their relationships, as well as exploring some further reuse problems, for example with respect to required fields.