See also: IRC log
Harold's slides: https://lists.w3.org/Archives/Public/www-archive/2017Feb/att-0013/HCLS_Feb28.pdf
Harold: When we first designed
the FHIR ont we were trying to do more validating. But now we
have shex. FHIR ont does not talk about things in the real
world, it only talks about what goes into clinical
records.
... It complements shex. FHIR ont defines classes and
categories of records.
... Subject of an observation is a patient, but really in FHIR
it is a patient *record*.
... FHIR ont in fhir.ttl has been available for about a year.
Over the past few weeks I overhauled it completely. It defined
an older RDF model, was out of sync, etc.
... Grahame had written it to use an RDF parser that he wrote,
but I shifted it to use the Apache Jena parser. In hindsight
you should have used the Apache Jena Ontology API.
... FHIRResource in my java code is a wrapper. Then I have a
factory for creating different kinds of nodes. This is pretty
much the regular Apache Ontology API, but with a fhir_
prefix.
... With Jena you create an ontology, add property, etc. At
some point I'll revise that to use the actual Jena ontology
API.
... I was told to put in just the predicates, domains ranges
and cardinalities.
... But there are a few edge cases left out because of issues
with FACT++ reasoner.
(slide 5)
scribe: Those issues are way down
in the datatype space.
... Grahame wants us to put back some of the mapping stuff:
flags that say whether something is a summary property, maps to
the v3 RIM.
... One nice thing about Grahame's parser is that it output
things in a nice order with comments.
... Those other things were in as annotation properties.
... Some of the mapping info is meta info about the FHIR.
(slide 6)
harold: I also built a W5
Ontology: who, what, when, where, why
... I am actually using the reasoner with the W5 ont.
eric: So you could do some workflow reasoning with it? harold: yes
harold: There are some useful
predicates in there.
... I need to talk to grahame. I'm teasing info out of it that
should be explicit. THere's nothing there that says what are
classes and what are object properties.
... I put in those declarations, but they should have been
there already.
(slide 7)
harold: The other change I've
done in the generated examples: added owl:Ontology and
owl:imports declaration at the bottom of each example.
... This allows them to be used in Protege easily
(slide 8)
harold: We need a permanent
identity, independent of where the ont is in the FHIR release
process.
... This is the purpose of the owl:Ontology statement. And then
we need a version also.
(slide 9)
harold: One issue right now is
that the FHIR ont namespace does not resolve.
... Right now the version URI is hard coded into the Java,
http://build.fhir.org/... and
that won't work when we go to STU 2.
eric: Granularity of versions, would be STU?
harold: Yes, STU is a sensible
layer.
... But nobody is going to remember to update that hard-coded
URI when STU is released.
ISSUE: What FHIR ont version URI should we use, and where should it be defined (currently hard coded in java)?
<trackbot> Sorry, but no Tracker is associated with this channel.
(slide 10)
harold: One thing about the FHIR
examples is that the subject varies and the interpretation
changes dramatically. To make this work sensibly, we need to
say "this only applies to subjects that are Patients".
... But there's nothing to say "we expect this URI to ref a
Patient".
... Right now you have to parse the ref URI to guess that it is
a patient.
... And you cannot generate an rdf:type arc for it unless you
know that it really is a Patient.
... We should extend fhir:reference with the Linked Data
profile to include an rdf:type for the target.
... Because a lot of our reasoning will not work if we do not
know the target type of the resource.
(slide 11)
harold: To interpret the status
code, whose value is just a string literal, the reasoner needs
to know which statuses are final.
... Those status codes are a mini-ont, that need to go into the
reasoner.
... We need to generate OWL for the internal codes.
dbooth: How many of these mini-ont are needed?
harold: dozens.
... I recommend we piggyback onto a terminology server, to have
it server RDF.
... The more we can move to object properties instead of
datatype properties, the easier it will be with the
classifiers/reasoners.
... Working on a paper for AMIA about what was covered
today.
ISSUE: Need to gen ~400 mini-ontologies for status codes, probably working with Rob Hausam on extending terminology server
<trackbot> Sorry, but no Tracker is associated with this channel.
dbooth: We'll plan to discuss mini-ontology generation next week.
This is scribe.perl Revision: 1.152 of Date: 2017/02/06 11:04:15 Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/ Guessing input format: Irssi_ISO8601_Log_Text_Format (score 1.00) Present: EricP Harold_Solbrig Pivonka David_Booth Gopi Rob Hausam No ScribeNick specified. Guessing ScribeNick: dbooth Inferring Scribes: dbooth Got date from IRC log name: 28 Feb 2017 Guessing minutes URL: http://www.w3.org/2017/02/28-hcls-minutes.html People with action items:[End of scribe.perl diagnostic output]