Fwd: RE: ACTION: Tony to try using fhir:code and fhir:coding.code in the ontology

Forwarding with Tony's permission.

-------- Forwarded Message --------
Subject: RE: ACTION: Tony to try using fhir:code and fhir:coding.code in 
the ontology
Date: Thu, 3 Mar 2016 16:56:25 +0000
From: Anthony Mallia <amallia@edmondsci.com>
To: David Booth <david@dbooth.org>

David,

I have the ontology working and it does not require the distinction 
between fhir:code and fhir:Coding.code so we can stick to fhir:code

Repeated the problem that Lloyd identified of upward propagation of the 
type to the actual entity e.g. AllergyIntolerance

Here is the general class axiom in the internal terminology bridge which 
enables inference of the type on the AllergyIntolerance.status code

[ rdf:type owl:Class ;
   rdfs:subClassOf 
<http://hl7.org/fhir/bridge/allergy-intolerance-status#confirmed> ;
   owl:intersectionOf ( fhirvs:allergy-intolerance-status
                        [ rdf:type owl:Restriction ;
                          owl:onProperty fhir:value ;
                          owl:hasValue "confirmed"
                        ]
                      )
] .

If the code is in the Valueset fhirvs:allergy-intolerance-status and has 
a value "confirmed"
then it is of Concept type allergy-intolerance-status#confirmed.

The way the reasoner finds that it is in the value set is from the 
object property range:

@prefix fhirvs: <http://hl7.org/fhir/ValueSet/> .
fhir:AllergyIntolerance.status rdf:type owl:ObjectProperty ;
                                fhir:binding.valueSetReference 
"http://hl7.org/fhir/ValueSet/allergy-intolerance-status"^^xsd:anyURI ;
                                fhir:isModifier "true"^^xsd:boolean ;
                                fhir:isSummary "true"^^xsd:boolean ;
                                rdfs:comment "Decision support would 
typically raise alerts for 'Unconfirmed', 'Confirmed', and 'Resolved' 
and ignore a 'Refuted' reaction. In particular, 'Refuted' may be useful 
for reconciliation  of the Adverse Reaction List. Some implementations 
may choose to make this field mandatory." ;
                                fhir:short "active | unconfirmed | 
confirmed | inactive | resolved | refuted | entered-in-error" ;
                                fhir:binding.description "Assertion 
about certainty associated with a propensity, or potential risk, of a 
reaction to the identified Substance." ;
                                fhir:concept_definition "Assertion about 
certainty associated with the propensity, or potential risk, of a 
reaction to the identified Substance." ;
                                fhir:binding.strength "required" ;
                                rdfs:domain fhir:AllergyIntolerance ;
                                rdfs:range fhir:code , 
fhirvs:allergy-intolerance-status .

This is asserted because the binding strength is "required"

The AllergyIntolerance.substance is a CodeableConcept with contained 
Codings which declares its Coding,system  so there is no need to go back 
to the
ObjectProperty.

The following declares that the CodeableConcept is of that type if it 
has any Codings of that type:

[ rdf:type owl:Restriction ;
   rdfs:subClassOf <http://snomed.info/id/373297006> ;
   owl:onProperty fhir:CodeableConcept.coding ;
   owl:someValuesFrom <http://snomed.info/id/373297006>
] .

The following declares that Coding is of that Concept type if it has 
snomed as the coding system and 373297006 as the code value"

[ rdf:type owl:Class ;
   rdfs:subClassOf <http://snomed.info/id/373297006> ;
   owl:intersectionOf ( [ rdf:type owl:Restriction ;
                          owl:onProperty fhir:Coding.code ;
                          owl:allValuesFrom [ rdf:type owl:Restriction ;
                                              owl:onProperty fhir:value ;
                                              owl:hasValue "373297006"
                                            ]
                        ]
                        [ rdf:type owl:Restriction ;
                          owl:onProperty fhir:Coding.system ;
                          owl:hasValue <http://snomed.info/sct>
                        ]
                      )
] .

Thus the SNOMED Bridge ontology can be built without knowing where the 
CodeableConcept is used.

Tony



-----Original Message-----
From: David Booth [mailto:david@dbooth.org]
Sent: Monday, February 29, 2016 10:17 AM
To: Anthony Mallia
Subject: ACTION: Tony to try using fhir:code and fhir:coding.code in the 
ontology

Hi Tony,

ACTION: Tony to try using fhir:code and fhir:coding.code in the ontology 
[recorded in http://www.w3.org/2016/02/23-hcls-minutes.html#action01]

Any progress on this?  Do you think you'll have something to show us on 
tomorrow's call?

thanks,
David

Received on Tuesday, 8 March 2016 16:04:00 UTC