Ontology services: Difference between revisions

From Endeavour Knowledge Base
Line 21: Line 21:


* Model viewer which enables a view of the ontology and/ or the data model and all artefacts created as part of the model
* Model viewer which enables a view of the ontology and/ or the data model and all artefacts created as part of the model
* Concept editor, which enables the creation of new concepts
* Concept expression editor, which enables the creation of new concepts and expressions and define their meaning
* Data model editor, which maintains one or more data models.
* Data model editor, which maintains one or more data models.
* Value set editor, which maintains any number of sets of concepts or value sets
* Value set editor, which maintains any number of sets of concepts or value sets

Revision as of 13:55, 1 July 2020


The Information model service is a set of services that enables the Discovery common information model to be created, updated, distributed and accessed.

The service includes a set of web applications and a set of APIs to an information model server and an information model distribution service

All components of the service are open source and available at the Discovery Endeavour githubs https://github.com/endeavourhealth and https://github.com/endeavourhealth-discovery

The following lists the functional groupings of the IM Service. Some of these use web applications , some use the information model server, and some use the information model distribution service components that maintain locally owned copies of the information model.

 

Information model Manager

The information model manager  provides viewing and authoring capabilities in order to maintain the content of the  Discovery common information model , which is the model of data that the information model services uses underpinned by a standards based modelling language.

The manager consists of a number of modules varying from a viewer through to the authoring of advanced ontological concepts. Modules include:

  • Model viewer which enables a view of the ontology and/ or the data model and all artefacts created as part of the model
  • Concept expression editor, which enables the creation of new concepts and expressions and define their meaning
  • Data model editor, which maintains one or more data models.
  • Value set editor, which maintains any number of sets of concepts or value sets
  • Data set editor, often used by the data sharing manager or data project manager to create data set definitions
  • Map maker, used to maintain maps between database schemas and the common model or maps to message types
  • Workflow manager, used to manage tasks associated with the above

Value and concept set services

The service supports the creation of, maintenance of, distribution of, and access to, value set definitions and value sets, sometimes referred to as reference sets or concept sets.

A value set definition is a definition of a collection of concept expressions that have been brought together for a particular business purpose.  A value set definition is different from a standard concept definition because the meaning of some members of a value set may not be subsumed by the implied meaning of the value set.  For example a value set for gender which consists of male, female, and other, is different from the concept of gender which may include many more specialised variations.

Value set definitions are described in more detail in the Discovery_Information_model_language specification. In summary:

A value set definition is a class that has member properties and the value of each member is a class expression i.e. a Value set has members who are concept expressions.

A Class expression may be a simple pre-coordinated concepts such as a term like  SN_1240751000000100 |Coronavirus disease 19 caused by severe acute respiratory syndrome coronavirus 2 (disorder)|or may be a complex class such as :

 Covid 19:  EquivalentTo: Disease
                               and (causative_agent some coronavirus-2)
                               and (has_pathological_process some infections_process)

Value sets themselves are the collections of concepts that are defined by the definition i.e. a list of concepts.

Value set editor

The value set editor enables people to create and maintain value set definitions which can then be downloaded, accessed via an API or distributed via the information model distribution service. 

Value set run time generator 

The value set generator returns a list of concepts that are defined by a value set definition for use in queries, thus supporting advanced subsumption_testing against health care records.

The value set generator API accepts the IRI of a value set either in full, or relative to a baseline IRI e.g.. http://DiscoveryDataService/InformationModel#VSET_Covid1 or simple VSET_Covid1, and returns a list of concepts to be used in the query. The API supports both core concepts and original codes that have been mapped to the core concepts, depending on whether the database uses Discovery concepts or actual original codes

 

Value set distributor

The value set distributor maintains tables of value sets for databases that use local instances of the Discovery information model. 

This is part of the information model distribution service that runs on an application server,  and is designed to detect changes to the content of the information model and regenerate the value sets from the value set definitions. The value sets are regenerated whenever a value set definition changes or whenever there is an update to the concepts within the information model.

Reasoners and classifiers

The information model services include the use of reasoners that operate on the semantic ontology subset of the information model. A subset of a reasoner is a classifier which uses subsumption testing on the ontological entities to generate inferred relationships which can then be used in run time query, or to generate transitive closure tables.

The purposes of the reasoners are :

  • Help to make sure that the ontologies are logically consistent. Whilst most of the problems with the ontology are as a result of faulty axioms authored by humans, reasoners help to make sure that axioms are logically consistent within an ontology.
  • To generate inferred relationships from stated axioms, in particular the generation of the "is a" relationships from subclass axioms, equivalent class axioms, as well mapped to, replaced by and replaced relationships between active and inactive concepts or legacy concepts.

Reasoners are accessed via the use of the java OWL API ,which itself supports a number of reasoners such as Hermit and Elk.

In addition a simple ontology classifier is used to generate inferred relationships from the stated axioms, so that subsumption testing of the kind used in standard query can operate easily

Mapping utilities

The information model server provides a number of APIs and utilities that support the mapping of original fields and values into the common information model.

The data mapping APIs article describes the use of the mapping server's mapping APIs to support inbound and outbound data transformation processes that involve a map between two data models. The map maker manager article describes the way that the map maker manager operates when authoring maps

For example there are a set of Mapping hint algorithms that are machine assisted approaches to improving the speed and accuracy of mapping.

UPRN and address matching

main article UPRN allocation and address matching service

Unique property reference numbers are special identifiers of properties.

Discovery information model supports the mapping of health related addresses to addresses provided by an authoritative organisation, those addresses being a gold standard for pointing to a UPRN.