Metamodel Schemas#
As Data Stewardship Wizard evolves, the internal structures may change during the time. To support migration under the hood, we use metamodel versioning for KM and templates.
KM Package (.km file)#
File for import and export of Knowledge Models is a JSON file that contains all KM packages (lists of change events with additional metadata). The structure of events is versioned using the KM metamodel version number and migrations in FAIR Wizard automatically update the KMs when needed. As said, files according to this schema can be exported from Knowledge Model List or Knowledge Model Detail and then used for Knowledge Model Import.
Metamodel Version |
Schema file |
Changes (brief) |
Since |
---|---|---|---|
14 |
Optional Integration fields |
4.1.0 |
|
13 |
New question value types |
3.12.0 |
|
12 |
Enhanced integration (e.g. widget type) |
3.10.0 |
|
11 |
Annotations and timestamps for events |
3.8.0 |
|
10 |
Integrations with item template |
3.6.0 |
|
9 |
Annotations |
3.5.0 |
|
8 |
Metrics and phases are part of KM |
3.2.0 |
|
7 |
KM name attribute removed |
2.13.0 |
|
6 |
Multi-choice question type added |
2.11.0 |
|
5 |
Move event |
2.0.0 |
|
4 |
Refactored KM, optional chapter text |
1.10.0 |
|
3 |
Changed integration question fields |
1.8.0 |
|
2 |
Changed phases representation |
1.7.0 |
|
1 |
Initial versioned metamodel |
1.6.0 |
Document Context#
Document Context is provided to the document templates by document worker. It contains all relevant data about project/questionnaire with replies, related knowledge model, author, and more. As KM evolves, the context may evolve as well. It is versioned using the Template metamodel version number. A document template must support the metamodel that is in the current FAIR Wizard version. It is needed to know how the document context looks like especially for Document Template Development.
Metamodel Version |
Schema file |
Changes (brief) |
Since |
---|---|---|---|
13 |
Removed states from templates |
4.1.0 |
|
12 |
Optional Integration fields |
4.1.0 |
|
11 |
Change template metadata |
3.20.0 |
|
10 |
New question value types |
3.12.0 |
|
9 |
Enhanced integration (e.g. widget type) |
3.10.0 |
|
8 |
Annotations change |
3.8.0 |
|
7 |
Project tags and description |
3.7.0 |
|
6 |
Integrations with item template |
3.6.0 |
|
5 |
Annotations |
3.5.0 |
|
4 |
Metrics and phases |
3.2.0 |
|
3 |
Project versions |
2.12.0 |
|
2 |
Reply provenance |
2.6.0 |
|
1 |
Initial versioned metamodel |
2.5.0 |
Template (.json file)#
Each template has its descriptor file template.json
which contains all the information about the template, its format(s) and steps how to produce the document(s). It is also versioned by the Template metamodel version number. This file also contains the actual number of the supported version… With local Document Template Development, we will need to manage the file according to the schema; however, when Document Template Editors are used, we will define it using forms directly in FAIR Wizard.
Note
Between versions 1 and 5, the structure of template.json
is still the same. Only the document context has been changed.
Metamodel Version |
Schema file |
Changes (brief) |
Since |
---|---|---|---|
13 |
Removed states from templates |
3.20.0 |
|
12 |
Optional Integration fields |
3.12.0 |
|
11 |
Change template metadata |
3.20.0 |
|
10 |
New question value types |
3.12.0 |
|
9 |
Enhanced integration (e.g. widget type) |
3.10.0 |
|
8 |
Annotations change |
3.8.0 |
|
7 |
Project tags and description |
3.7.0 |
|
6 |
Integrations with item template |
3.6.0 |
|
5 |
Annotations |
3.5.0 |
|
4 |
Metrics and phases |
3.2.0 |
|
3 |
Project versions |
2.12.0 |
|
2 |
Reply provenance |
2.6.0 |
|
1 |
Initial versioned metamodel |
2.5.0 |