CTS2-LE Building Blocks: Unterschied zwischen den Versionen
(→CTS2-LE Navigator) |
Billig (Diskussion | Beiträge) |
||
| (13 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== CTS2-LE Layered Architecture == | == CTS2-LE Layered Architecture == | ||
| − | [[Datei:CTS2-LE Layers.png|320px|right]] CTS2-LE | + | [[Datei:CTS2-LE Layers.png|320px|right]] CTS2-LE Terminology Server utilizes semantic technologies for representing, providing and processing artefacts. The main benefits of this approach are |
* the conceptual nearness to the nature of the artefacts to store, namely controlled vocabularies and its derivate artefacts, | * the conceptual nearness to the nature of the artefacts to store, namely controlled vocabularies and its derivate artefacts, | ||
* semantic processing and querying in a direct way, and | * semantic processing and querying in a direct way, and | ||
* to be able to manage a huge amount of linked medical data. | * to be able to manage a huge amount of linked medical data. | ||
| − | Concretely, | + | Concretely, the store is based on the Jena Framework plus additional components for searching and constraining the RDF base. The system components and its functionality are explained bottom to top with the help of the overall system architecture shown in the figure to the rigth. The persistence layer is split into two storage systems, namely a full text index for performant search (Lucene) and the RDF (quad )store (Jena-TDB) for holding all artefacts as RDF graphs. As the system backbone the Jena Framework is used, which offers rich functionality to process and maintain the RDF graphs on a basic level. |
The Jena Framework is enhanced by some components in order to comfortably handle the (possible huge amount of) artefacts. CTS2-LE | The Jena Framework is enhanced by some components in order to comfortably handle the (possible huge amount of) artefacts. CTS2-LE | ||
* explicitly partitions the whole RDF graph by means of the so-called named graphs feature, | * explicitly partitions the whole RDF graph by means of the so-called named graphs feature, | ||
* contains a lightweight SPARQL template mechanism and engine, and | * contains a lightweight SPARQL template mechanism and engine, and | ||
| − | * introduces a schema language for RDF graphs together with a validation component in order to ensure that all data is valid with respect to the CTS2 information model. | + | * introduces a schema language for RDF graphs together with a validation component in order to ensure that all data is valid with respect to the FHIR/CTS2 information model. |
| − | [[Datei:Sparql and rdf.png|200px|right]]The tier above Jena ( | + | [[Datei:Sparql and rdf.png|200px|right]]The tier above Jena (CTS2-LE-BL) contains all specific functionality and mainly uses SPARQL-Templates. At this tier customized vocabulary loaders are located which, for instance, transform ClaML-defined vocabularies such as ICD and OPS to RDF structures. Web-CTS2-LE is the component for handling REST calls aligned to the FHIR specification. CTS2-LE provides an so-called Navigator to browse and search vocabularies as well as retrieving similar concepts based on the vector space model of Lucene. |
The figure to the right shows some essential components. At the bottom the RDF graph is partitioned such that every vocabulary is represented by a named graph for better handling the exchange of vocabularies as a whole. Above that tier the main work is done by the Jena SPARQL engine for accessing and processing vocabularies and its corresponding artefacts such as value sets and mappings. | The figure to the right shows some essential components. At the bottom the RDF graph is partitioned such that every vocabulary is represented by a named graph for better handling the exchange of vocabularies as a whole. Above that tier the main work is done by the Jena SPARQL engine for accessing and processing vocabularies and its corresponding artefacts such as value sets and mappings. | ||
| − | So-called RDF signatures are used to define a constraining RDF schema according to the CTS2 information model. Moreover, this F-Logic oriented RDF schema definition | + | So-called RDF signatures are used to define a constraining RDF schema according to the FHIR/CTS2 information model. Moreover, this F-Logic oriented RDF schema definition is helpful in formulating SPARQL queries, since it directly reflects the RDF graph structure. Validating store content according to these schemata is mainly done by means of the SPARQL engine. Furthermore, lightweight SPARQL templates can be defined to support reuse of queries by parameterization. |
| − | + | As sketched above, CTS2-LE manages all terminology artifacts as FHIR/CTS2-compliant RDF graphs using a RDF (quad )store. By wrapping these data managing component with a powerful SPARQL engine, a generic and standards-based interface is provided that allows to place enhanced semantic data access and processing services on top of the core data managing engine. A complementary Lucene index is is utilized for gaining outstanding search performance. | |
| − | As sketched above, CTS2-LE manages all terminology artifacts as CTS2-compliant RDF graphs using a | + | |
| + | <!-- | ||
| + | This section introduces the set of services already provided as part of the standard CTS2-LE distribution. | ||
=== CTS2-LE REST API === | === CTS2-LE REST API === | ||
| − | + | The API recently consists of terminology access and processing services for: | |
* resolve and/or fetch an FHIR origined value set (or terminology) which is identified by it's URI ([[CTS2-LE REST API: Resolve Value Set|ResolveValueSet]]). This API can e.g. be used for populating web forms with value set contents at run time. | * resolve and/or fetch an FHIR origined value set (or terminology) which is identified by it's URI ([[CTS2-LE REST API: Resolve Value Set|ResolveValueSet]]). This API can e.g. be used for populating web forms with value set contents at run time. | ||
* fetching the details of a concept which is identified through a codesystem and code ([[CTS2-LE REST API: Requesting Concept Details|RequestConceptDetails]]). This API can e.g. be used for obtaining the full description of a coded value within a CDA document. | * fetching the details of a concept which is identified through a codesystem and code ([[CTS2-LE REST API: Requesting Concept Details|RequestConceptDetails]]). This API can e.g. be used for obtaining the full description of a coded value within a CDA document. | ||
| Zeile 29: | Zeile 31: | ||
=== CTS2-LE Navigator === | === CTS2-LE Navigator === | ||
| − | + | ||
| − | | | + | [[Datei:Navigator screenshot 1.jpg|360px|right]]The CTS2-LE Navigator provides a graphical user interface for searching and browsing terminologies. It provides interactive means for: |
| − | | The CTS2-LE Navigator provides a graphical user interface for searching and browsing terminologies. It provides interactive means for: | + | < !-- |
| − | * [[CTS2-LE Navigator: Managing Terminologies|Managing the lifecycle of terminologies | + | * [[CTS2-LE Navigator: Managing Terminologies|Managing the lifecycle of terminologies and value sets]] (loading, deleting, updating and versioning) |
| − | + | -- > | |
* [[CTS2-LE Navigator: Browsing through Terminologies|Browsing through terminologies]] | * [[CTS2-LE Navigator: Browsing through Terminologies|Browsing through terminologies]] | ||
* [[CTS2-LE Navigator: Searching for Concepts and Terms|Searching for concepts and terms]] (within single terminologies or even across multiple terminologies) | * [[CTS2-LE Navigator: Searching for Concepts and Terms|Searching for concepts and terms]] (within single terminologies or even across multiple terminologies) | ||
* [[CTS2-LE Navigator: Searching for Similar Concepts|Searching for Similar Concepts]] | * [[CTS2-LE Navigator: Searching for Similar Concepts|Searching for Similar Concepts]] | ||
* [[CTS2-LE Navigator: Resolving and Displaying Value Sets|Resolving and displaying value sets]] | * [[CTS2-LE Navigator: Resolving and Displaying Value Sets|Resolving and displaying value sets]] | ||
| + | < !-- | ||
* [[CTS2-LE Navigator: Semantic Full Text Classification|Semantic full text classification]] | * [[CTS2-LE Navigator: Semantic Full Text Classification|Semantic full text classification]] | ||
| − | + | -- > | |
| − | |||
=== Terminology Loaders === | === Terminology Loaders === | ||
| + | Besides the FHIR import interface described [[CTS2-LE REST API: Update Value Set|here]], there are specific Loaders that can be used to integrate common terminologies. For further information please visit [[CTS2-LE Loading Core Terminologies]]. | ||
| + | |||
| + | < !-- | ||
| + | == Third Party Tools == | ||
| + | Due to its open, standards-based interfaces CTS2-LE is perfectly suited for thrid-party tools to connect to CTS2-LE for providing added-value functionalities on top of CTS2 terminology artifacts. | ||
| + | |||
| + | === CTS2-LE Freeplane Plug-In === | ||
| + | [[Datei:Freeplane screenshot 1.png|right|300px]]Freeplane is an open source mind mapping and knowledge management software ([http://www.freeplane.org/wiki/index.php/Main_Page Freeplane Homepage]). Freeplane provides a powerful graphical user interface for editing and classifying mind maps in a very intuitive manner. The software provides a powerful mechanism to extend the core functionality through Add-Ons and scripting. | ||
| − | + | The CTS2-LE Freeplane Plugin is an Add-On to Freeplane which enables terminology editors to interactively define and edit terminologies and value sets as mind maps. The Add-On is seamlessly integrated with the Freeplane GUI and workflow. By connecting to a CTS2-LE server from within the freeplane modelling GUI, the Add-On can e.g. fetch candidate concepts for a value set from given text phrases (e.g. if one adds a node named "birk poll allergy" to a freeplane mind map in value set editing mode, the Add-On automatically fetches information about all concepts from CTS2-LE which may be suitable for representing that node. By selecting one of these candidate concepts, the freeplane node gets linked to that concept which semantically corresponds to adding the concept to the value set under construction). Newly created or modified termnologies and value sets can either be uploaded to a CTS2-LE server directly out of freeplane or saved to the filesystem in FHIR value set format. | |
| + | -- > | ||
| + | < !-- | ||
| + | For further information see the online documentation about: | ||
| + | * [[Freeplane CTS2-LE Plugin: Installation|Installation and Configuration of the CTS2-LE Freeeplane Plug-In]] | ||
| + | * [[Freeplane CTS2-LE Plugin: Editing Terminologies|Editing Terminologies using the CTS2-LE Freeeplane Plug-In]] | ||
| + | * [[Freeplane CTS2-LE Plugin: Editing Value Sets|Editing Value Sets using the CTS2-LE Freeeplane Plug-In]] | ||
| + | -- > | ||
| − | + | --> | |
Aktuelle Version vom 18. Januar 2022, 18:55 Uhr
CTS2-LE Layered Architecture
CTS2-LE Terminology Server utilizes semantic technologies for representing, providing and processing artefacts. The main benefits of this approach are
- the conceptual nearness to the nature of the artefacts to store, namely controlled vocabularies and its derivate artefacts,
- semantic processing and querying in a direct way, and
- to be able to manage a huge amount of linked medical data.
Concretely, the store is based on the Jena Framework plus additional components for searching and constraining the RDF base. The system components and its functionality are explained bottom to top with the help of the overall system architecture shown in the figure to the rigth. The persistence layer is split into two storage systems, namely a full text index for performant search (Lucene) and the RDF (quad )store (Jena-TDB) for holding all artefacts as RDF graphs. As the system backbone the Jena Framework is used, which offers rich functionality to process and maintain the RDF graphs on a basic level. The Jena Framework is enhanced by some components in order to comfortably handle the (possible huge amount of) artefacts. CTS2-LE
- explicitly partitions the whole RDF graph by means of the so-called named graphs feature,
- contains a lightweight SPARQL template mechanism and engine, and
- introduces a schema language for RDF graphs together with a validation component in order to ensure that all data is valid with respect to the FHIR/CTS2 information model.
The tier above Jena (CTS2-LE-BL) contains all specific functionality and mainly uses SPARQL-Templates. At this tier customized vocabulary loaders are located which, for instance, transform ClaML-defined vocabularies such as ICD and OPS to RDF structures. Web-CTS2-LE is the component for handling REST calls aligned to the FHIR specification. CTS2-LE provides an so-called Navigator to browse and search vocabularies as well as retrieving similar concepts based on the vector space model of Lucene.
The figure to the right shows some essential components. At the bottom the RDF graph is partitioned such that every vocabulary is represented by a named graph for better handling the exchange of vocabularies as a whole. Above that tier the main work is done by the Jena SPARQL engine for accessing and processing vocabularies and its corresponding artefacts such as value sets and mappings.
So-called RDF signatures are used to define a constraining RDF schema according to the FHIR/CTS2 information model. Moreover, this F-Logic oriented RDF schema definition is helpful in formulating SPARQL queries, since it directly reflects the RDF graph structure. Validating store content according to these schemata is mainly done by means of the SPARQL engine. Furthermore, lightweight SPARQL templates can be defined to support reuse of queries by parameterization.
As sketched above, CTS2-LE manages all terminology artifacts as FHIR/CTS2-compliant RDF graphs using a RDF (quad )store. By wrapping these data managing component with a powerful SPARQL engine, a generic and standards-based interface is provided that allows to place enhanced semantic data access and processing services on top of the core data managing engine. A complementary Lucene index is is utilized for gaining outstanding search performance.