Grouping: Unterschied zwischen den Versionen

Aus CTS2-LE
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Resource grouping is required for structuring resources within the frontend. It is based on a loose coupling between resources (code systems and value sets) an…“)
 
Zeile 1: Zeile 1:
 
Resource grouping is required for structuring resources within the frontend. It is based on a loose coupling between resources (code systems and value sets) and the group hierarchy.
 
Resource grouping is required for structuring resources within the frontend. It is based on a loose coupling between resources (code systems and value sets) and the group hierarchy.
 +
 +
Loose coupling has the advantage that hierarchies and resources can be treated separately. The only link is the 'relGroup'-name where at resource this name is set at an uploading call (in case of CLAML) or within the resource (in case of FHIR). Note that the 'relGroup'-names for value sets and code systems have to be disjoint.
 +
 +
Another advantage of loose coupling is that arbitrary N to M relations between hierarchy nodes and resources can be built. E.g. ICD could occur at different places in the hierarchy that enables multiple views over the whole resource set.
  
 
== Structure ==
 
== Structure ==
Zeile 9: Zeile 13:
 
   "groups": [
 
   "groups": [
 
     {
 
     {
       // content hierarchy for code systems
+
       // root of group hierarchy for code systems
 
       "_id": "csvGroups",
 
       "_id": "csvGroups",
 
       "children": [
 
       "children": [
Zeile 18: Zeile 22:
 
             // children items
 
             // children items
 
             {
 
             {
               // name displayed in the frontend
+
               // group name displayed in the frontend
 
               "name": "Codesystems",
 
               "name": "Codesystems",
               // related resources by group
+
               // related resources by 'relGroup'-name or 'children'-property (recursively)
              // name to be displayed; these group names have
 
              // to be used when uploading
 
 
               "relGroup": [
 
               "relGroup": [
 
                 "EXA",
 
                 "EXA",
Zeile 33: Zeile 35:
 
     },
 
     },
 
     {
 
     {
       // content hierarchy for value sets
+
       // group hierarchy for value sets
 
       "_id": "vsGroups",
 
       "_id": "vsGroups",
 
       "children": [
 
       "children": [

Version vom 11. August 2021, 11:23 Uhr

Resource grouping is required for structuring resources within the frontend. It is based on a loose coupling between resources (code systems and value sets) and the group hierarchy.

Loose coupling has the advantage that hierarchies and resources can be treated separately. The only link is the 'relGroup'-name where at resource this name is set at an uploading call (in case of CLAML) or within the resource (in case of FHIR). Note that the 'relGroup'-names for value sets and code systems have to be disjoint.

Another advantage of loose coupling is that arbitrary N to M relations between hierarchy nodes and resources can be built. E.g. ICD could occur at different places in the hierarchy that enables multiple views over the whole resource set.

Structure

The content hierarchy is defined by the following json structure

 1 {
 2   "groups": [
 3     {
 4       // root of group hierarchy for code systems
 5       "_id": "csvGroups",
 6       "children": [
 7         {
 8           // top level items
 9           "name": "Example",
10           "children": [
11             // children items
12             {
13               // group name displayed in the frontend
14               "name": "Codesystems",
15               // related resources by 'relGroup'-name or 'children'-property (recursively)
16               "relGroup": [
17                 "EXA",
18                 "not-exists"
19               ]
20             }
21           ]
22         }
23       ]
24     },
25     {
26       // group hierarchy for value sets
27       "_id": "vsGroups",
28       "children": [
29        {
30           "name": "Example",
31           "relGroup": "EXA-vs"
32         }
33       ]
34     }
35   ]
36 }