W3C

- DRAFT -

Semantic Web Health Care and Life Sciences Interest Group Teleconference

28 Nov 2017

Attendees

Present
David_Booth, Harold_Solbrig, Rob_Hausam, EricP
Regrets
Chair
David Booth
Scribe
dbooth

Contents


HTTP content negotiation for FHIR RDF and OWL (Harold Solbrig)

Slides from Harold for today's discussion: https://lists.w3.org/Archives/Public/www-archive/2017Nov/att-0014/FHIR_conneg_v2.pdf

Dev Days followup

rob: notes from Dev Days?

harold: Yes, a recording is available.

dbooth: Notes at http://www.w3.org/2017/11/15-hcls-minutes.html

harold: Recording is at https://www.aanmelder.nl/i/mail-click-event?id=X0XEwrSCP_IwvnsgIVyAxShJMzIyODQ2MwpTJ1x4ZmRceGJjXHg5N1x4ZGFceDE2XHhkMDlceGNlXHhjZEBceGM4bHBceGE3XHhlNi9ceDk0XHgwNDtceGY2XHgxNlx4YjhtXHg5YVhceGI0Ylx4Yzd7XHhmZVx4ZWZceGEwJwpwMQp0cDIKLg.
... but it requires a password, because it is for Dev Days participants. I have the password.

Dev Days tutorials

harold: Tutorials were well received, and people have started trying some interesting stuff already.
... Someone from the NL used python scripts to convert a thesaurus.
... It was Johan van Soesrt (Maastrick)

Rob Hausam to discuss with term group about publishing OWL

vocabularies for codesystems

rob: Discussed it a bit at Dev Days, but still not done.

harold: I got permission from Grahame to drop the OWL stuff into the build.

rob: Just needs to be implemented. I could help with it.

harold: Grahame wants to completely revamp the W5 ont.

dbooth: What motivation?

harold: He wants to add more semantic content to FHIR -- organize and categorize FHIR resources.
... Also, when we inherited fhir.ttl it had stuff that didn't work in OWL. We decided to include stuff to make it work in OWL. But Grahame really wants the code systems and valuesets back into it.

ISSUE: Need to get code systems and valuesets back into fhir.ttl

<trackbot> Created ISSUE-47 - Need to get code systems and valuesets back into fhir.ttl. Please complete additional details at <http://www.w3.org/2014/HCLS/track/issues/47/edit>.

HTTP content negotiation for FHIR RDF and OWL (Harold Solbrig)

(Harold reviews slides at https://lists.w3.org/Archives/Public/www-archive/2017Nov/att-0014/FHIR_conneg_v2.pdf)

harold: I wanted to support more than one RDF format
... recommendation: Recommendation 1

We don’t need to separate OWL Resource instances from

non-OWL instances

AGREED: There will be a single file w/ OWL ontology declaration.

harold: Recommendation 2

_format in the URL overrides the accept header.

• Documentation on http://build.fhir.org/http.html will be

updated and clarified

• “must” / “may” and “must not” will be made clear in the

spec wrt. _format=ttl, format=text/ttl, ...

• rules willl be added to a conformance testing tool.

(all in agreement)

harold: Recommendation 3

_format redirect rules will be made explicit

• _format must be included in URL rewrite

• rules willl be added to a conformance testing tool.

(all in agreement)

harold: On MIME types, we need to enumerate them and say which ones MAY/MUST be handled.
... Recommend http://<server>/CodeSystem/account-status/owl — returns OWL

representation

eric: Accept header allows you to ask for variations on a resource. The challenge is that when you have the same info both in FHIR valueset vs OWL valueset, how to negotiate to differentiate them?

harold: But in this case it is different content.

dbooth: But one has metadata, like domain and range.

eric: There was a workshop at W3C about how to specify media type profiles -- Accept-Profile header was proposed. This would allow e.g., specific RDF vocabularies to be requested.
... In Apache I would have all headers and could switch on the profile in addition to other things.

harold: Propose: http://<server>/CodeSystem/account-status/owl — returns OWL

representation

AGREED: http://<server>/CodeSystem/account-status/owl/version/1.0 — returns OWL representation

harold: Problem: Protege uses Accept header: application/rdf+xml, application/xml; q=0.5, text/

xml; q=0.3, */*; q=0.2

scribe: This causes FHIR/XML to be returned instead of Turtle.
... Proposal: if the Accept header is that exact header, then return Turtle instead, assuming that it is protege asking for it.

dbooth: What about checking the User-Agent header, since this is a protege glitch?

eric: How often will we want to demo this before we get protege fixed?

harold: If protege resolves itself before we reach recommendation, then we can change it.

eric: Do we want to conneg between the FHIR and OWL versions?

dbooth: I don't think we need to conneg between them. So they can just use different URLs.

harold: Also, a PUT of a FHIR resource in OWL will not go back to FHIR.

eric: When you GET the structure def of a valueset, and you also want to GET the corresponding OWL, how do you know what is the URL for it?

harold: I don't think we need to use conneg between FHIR resource and OWL ont.

dbooth: I agree.

<scribe> ACTION: EricP to followup with Protege community and developers to fix their Accept header for OWL formats

<trackbot> Created ACTION-93 - Followup with protege community and developers to fix their accept header for owl formats [on Eric Prud'hommeaux - due 2017-12-05].

<scribe> ACTION: DBooth to find out user agents for Protege, TQ, Stardog, Jena

<trackbot> Error finding 'DBooth'. You can review and register nicknames at <http://www.w3.org/2014/HCLS/track/users>.

AGREED: special case protege using User-Agent header (preferably) or Accept header (if needed)

eric: Clarifying: protege and other tools that do explicity accept Turtle.

<inserted> dbooth: eric, Protege sets the Accept header here: https://github.com/protegeproject/protege-owlapi/blob/47da17bd5a962f276d455cc2272beb771aa86add/src/main/java/org/protege/owlapi/util/IOUtils.java#L61

ADJOURNED

Summary of Action Items

[NEW] ACTION: DBooth to find out user agents for Protege, TQ, Stardog, Jena
[NEW] ACTION: EricP to followup with Protege community and developers to fix their Accept header for OWL formats
 

Summary of Resolutions

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.152 (CVS log)
$Date: 2017/11/28 17:46:40 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
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)

Succeeded: i/ADJOUR/dbooth: eric, Protege sets the Accept header here: https://github.com/protegeproject/protege-owlapi/blob/47da17bd5a962f276d455cc2272beb771aa86add/src/main/java/org/protege/owlapi/util/IOUtils.java#L61
Present: David_Booth Harold_Solbrig Rob_Hausam EricP
No ScribeNick specified.  Guessing ScribeNick: dbooth
Inferring Scribes: dbooth
Found Date: 28 Nov 2017
People with action items: dbooth ericp

WARNING: IRC log location not specified!  (You can ignore this 
warning if you do not want the generated minutes to contain 
a link to the original IRC log.)


[End of scribe.perl diagnostic output]