In order to automatically understand the inferred relationships between SNOMED CT expressions and/or precoordinated concepts, the expressions should be classified using a semantic reasoner. A number of reasoners exist, such as Snorocket, ELK and FACT++, which can classify and reason over OWL 2 EL.
Before a SNOMED CT compositional grammar expression can be classified using one of these reasoners, it must first be parsed (as described in section 7.2), normalised and then translated into OWL 2 EL. The specific normalisation transformations that are required prior to translation into OWL include:
- Grouping all ungrouped attributes with a relationship type that is allowed to be grouped. For more information please refer to section 9.2.2 of the Terminology Services Guide; and
Transforming expressions to ensure that they conform to the concept model – in particular, where a laterality refinement has been applied to a focus concept that is not subsumed by 123037004 |Body structure| , apply this laterality to all lateralisable finding sites within the definition of this focus concept. For more information please refer to section 12.3.17 and section 12.4.15 of the Terminology Services Guide.
The translation into OWL can then be performed in a variety of programming languages, including Perl.
Please note that an alternative way to classify a set of expressions is to test each pair of expressions for equivalence and subsumption by performing a string-based comparison on their normal forms. For more information on this approach please refer to section 12.5 of the Terminology Services Guide.