15:02:53 RRSAgent has joined #hcls 15:02:53 logging to http://www.w3.org/2014/09/09-hcls-irc 15:02:59 zakim, this is hcls 15:02:59 ok, dbooth; that matches SW_HCLS()11:00AM 15:03:11 +??P35 15:03:12 Kerstin has joined #HCLS 15:03:14 rrsagent, make logs publics 15:04:42 +Mehmet 15:05:29 zakim, who is here? 15:05:29 On the phone I see +1.978.794.aaaa, tim_w, ??P32, DBooth, ??P35, Mehmet 15:05:31 On IRC I see Kerstin, RRSAgent, Zakim, dbooth, TimW, Tony, TallTed, egonw_, ericP 15:05:46 zakim, aaaa is Tony 15:05:47 +Tony; got it 15:05:48 mscottm2 has joined #hcls 15:05:55 +claude 15:06:00 mehmet has joined #HCLS 15:06:04 Zakim, who is on the phone? 15:06:04 On the phone I see Tony, tim_w, ??P32, DBooth, ??P35, Mehmet, claude 15:06:49 + 15:06:53 q+ 15:07:19 q- 15:08:46 Topic: Value Sets in RDF 15:09:23 Claude: Reviewed ballot submission on standardizing value sets in DSTU. They mean an expression that can generate a collection of terms. 15:10:02 ... YOu can say you want to intentionally define a value set, or extensionally, which means you enumerate the values. 15:10:47 ... Think of a valueset as a knowledge document: metadata (author, date published, version,etc); an expression that allows you to define this extension. 15:11:39 ... I noticed in the HL7 proposal that the expression itself was defined in UML. But I would think that if you were to define the expression of a valueset you'd do it in an expression language, because valuesets are a way to define members of a set. 15:11:52 +ericP 15:11:54 ... How would we address this in the semantic world? 15:12:26 ... Given in OWL, you use DL to define sets of concepts, could that be used in the definition of valuesets? 15:13:18 http://www.w3.org//2013/02/ODM/ 15:14:24 Claude: One way to define a VS is to enumerate all the terms -- a list of terms. 15:14:28 Here's something that Eric wrote up about value sets: https://www.w3.org/wiki/HCLS/ClinicalObservationsInteroperability/FDATherapeuticAreaOntologies/Validation#Value_set 15:14:33 -> http://www.w3.org//2013/02/ODM/ example of context-neutral value set in OWL 15:14:44 ... The second way is a regex that allows you to find all the terms you want. 15:14:57 -> https://www.w3.org/wiki/HCLS/ClinicalObservationsInteroperability/FDATherapeuticAreaOntologies#Clinical_compatibility example of "indirect hierarchy" 15:15:05 ... Another way is "this term and all its children, but only the leaves" 15:15:48 ... Also have a concept in a vocabulary, and you filter on that property ( :diabetes ) and you get all diabetes-related terms. 15:16:05 ... Also by unioning, intersecting or differencing sets. 15:16:20 ... Also by a query: the result set is the valueset. 15:16:50 + +1.469.226.aabb 15:16:54 ... What the evaluation returns is the valueset 15:17:43 zakim, aabb is Neda 15:17:43 +Neda; got it 15:17:44 Zakim, ??P35 is mscottm2 15:17:45 +mscottm2; got it 15:17:53 Zakim, aabb is neda 15:17:53 sorry, ericP, I do not recognize a party named 'aabb' 15:18:54 Zakim, who is on the phone? 15:18:54 On the phone I see Tony, tim_w, ??P32, DBooth, mscottm2, Mehmet, claude, ericP, Neda 15:18:59 Eric: In ShEx we can't talk about "only the leaves" 15:19:29 ... But can express valuesets by globbing or by an HTTP GET. 15:19:49 ... for creating a valueset by query. 15:20:24 ... If you're trying to validate some data to ensure that things are in the right range, then you can plug the thing that you're testing against into the query. 15:20:56 ... But that's beyond what you'll get out of ShEx or Resource Shapes normally. You'd need an extension. 15:21:37 ... Expecting a SNOMED term that is a morphoolgy, there are 50k morphology terms, that's more work if you do a GET to get them all. 15:22:01 Zakim, who is talking? 15:22:06 +Ingeborg 15:22:12 mscottm2, listening for 10 seconds I heard sound from the following: claude (10%), DBooth (25%), ericP (4%) 15:22:14 Claude: There are queries with filters -- like SPARQL -- and the other way is set operations. 15:22:41 Ingeborg has joined #HCLS 15:23:25 ... If ShEx supports this then it would seem to cover most of the query/filter side of things, and if there's a way to represent set operations then you could cover most of these cases. 15:23:32 -Mehmet 15:24:17 Eric: What are the use cases and their expressivity requirements? ShEx itself can't do intersection or union, but you could pass that to an extension function via a URI that captures that functionality 15:25:05 q+ to ask about use case: for learning about available terms or for validating 15:26:01 Eric: For instance validation, you can say X must be in some VS: The object of this predicate is in this VS, and it checks to see if it is in it. 15:26:22 ... How can you make it get the right VS? (Intersections, diffs, etc) 15:26:49 ... But downside is that that looks like a big ugly URL in the ShEx, when it's in fact a URL-encoded SPARQL query. 15:27:32 ... But I think you also want in the language, a URL-composer, so that you can have the URL in a human-readable form. 15:27:50 Claude: But to have the URL, someone has to have already defined the query. 15:28:21 +[IPcaller] 15:29:14 ... Need to say: here's my intent. I want this set, and this expression, and this set, and the subsumption, and union them. Maybe DL could do this. On the LHS you could say the set of all terms that matches this regex, unioned with the set of all terms including or descendent from some other term. 15:30:20 ... I can take this expression and convert to SPARQL. On one side I have the expression, and the other i can execute it. But how woudl I define it if the expression has not yet been built? 15:31:34 Eric: Closest available: a small amount of code to get to this. Take SheX or Resource Shapes, and say the valueset is this URL that ends in "?=", plus the URL-encoding of this triple-quoted string (which is sparql), and by that you're able to talk to any sparql endpoint. 15:31:49 ... so you could do all of the set operationsn in sparql. 15:33:22 ... Slightly further away is to do them in OWL DL-Query that's built into Protege, but you'd need deployed DL-query engines. And both of those approaches require embedded URLs and humann readable descriptions. 15:34:23 Eric: Harold, does that make sense? 15:34:36 Harold: I'm grasping at context here. 15:35:09 Eric: You have some Resource Shapes or ShEx that describes a valid instance, and in that it says the VS that must match is enumerated here, where "here" is the result of a query. 15:36:24 Harold: What would be useful in that situation would be if that URL resolves to a set of URLs. Come up with a simple representation of what that URL returns. E.g., Turtle, or an RDF list. 15:36:33 David: Or a SPARQL result set. 15:38:26 Eric: You could add to your favorite validator the ability to add a URL to a "query=" URL. 15:38:38 David: Like a URL template 15:39:21 Harold: I'd like to separate the mechanism for generating the VS from the VS reference. 15:39:38 ... We want to enable it to reference a simple flat list -- no sparql involved. 15:40:08 ... But some valuesets are complex with more structure, and it's good to allow pepople to be clever too. 15:40:20 q- 15:41:10 Harold: One challenge is that some valuesets are large, and it's in our interest if we can ask "is this a valid value" rather than returning all 300k values. 15:41:41 Claude: Suppose you have a huge VS, and you want to know if a given term is in it. 15:42:02 ... If you define the VS a certain way, can you do that check without ever looking at a term in it? 15:42:31 ... E.g., if the VS is defined by a rule, maybe just plug the given term into the rule to see if it is satisfied. 15:44:41 David: Two use cases: validation (whether a term is allowed in a VS) versus generation of all terms in a VS (e.g. for displaying in a dro-down list) 15:45:37 hsolbrig has joined #hcls 15:45:49 zakim, who is here? 15:45:49 On the phone I see Tony, tim_w, ??P32, DBooth, mscottm2, claude, ericP, Neda, Ingeborg, [IPcaller] 15:45:51 On IRC I see hsolbrig, Ingeborg, mehmet, mscottm2, Kerstin, RRSAgent, Zakim, dbooth, TimW, Tony, TallTed, egonw_, ericP 15:45:52 Neda has joined #HCLS 15:45:52 analyte: C-reactive peptide; source: CSF 15:47:23 David: So you specify the term by giving a set of properties of it. 15:48:14 Harold: Need to include in expressions the URI and a block of text that indicates what we expect from it: "This yields any LOINC code with the following characteristics ... " 15:49:21 ... In the process of offereing any data models, you get to the VS and we need to record it in a human readable way to document it. 15:50:09 David: So the expressionsn themselves do not make it obvious to the human reader what will come back? 15:50:38 Harold: Yes, someone must do the work to turn it into a URI and resolve it to possible values. e.g., countries that possess a particular characteristic. 15:51:14 .... i can describe that in a shape, then as a secondary test someone can figure out the best way to determine that, and they they give me a URI that will give me that list. 15:51:41 Eric: You don't want to put making a semantic representation of medra in the critical path? 15:51:47 Harold: Right. 15:52:07 ... We had a proposal from Bodenreider for putting Medra into shapes. 15:52:35 https://www.w3.org/wiki/HCLS/ClinicalObservationsInteroperability/FDATherapeuticAreaOntologies/Validation#Value_set 15:53:37 Scott: Re a URI for a VS and it's filled in by a procedural attachment, Eric wrote about CDISK code for marital status, he itemizes the VS in this fragment. In ShEx you could do it that way, but I'd like to say that a shape can take on a value from the set of marital codes without having to enumerate them. 15:53:52 ... This shape takes a value from Observations. 15:55:34 Eric: One way is to enumerate directly. Another is to do a GET that returns line-feed delimited list of the terms. (Where that URL is not too ugly.) Another is ShEx with a hideous URL that is triple-quoted and goes at the end of the query URL. A fourth way is to give it a URL and the system knows the URL but it isn't mechanically connected to the web, it's an internal hook to a database, for example. 15:56:44 Claude: Another use case: terminologist wants to define a VS. How do we support them in doing this? SPIN is SPARQL-like. Need a way for that terminologies to define and share that VS. 15:56:54 MeSh in RDF. Temporary endpoint. http://mor2.nlm.nih.gov/conductor account: meshdemo password: demoofmeshinrdf - select iSQL button -- gives a SPARQL window 15:57:14 ... Clinical person needs to be able to capture this, saying what the VS should be. 15:58:14 David: Need a well-known notion of ValueSet, so that someone can say "this is a ValueSet". 15:59:18 Eric: You could have something like purl.org that dereferences to a valueset, perhaps with a description like Harold wants, and a way to compose new ones from old ones. 15:59:23 Agree. ValueSet should consist of a set of URL's + metadata about source / dates / etc. 16:00:02 David: This need to compose sets from other sets is not unique to healthcare. How is it normally done? 16:00:47 Eric: If you represent the VS list as a set of triples, rather than a list of values, then you could use SPARQL to do the set operations. 16:00:59 Apologies, I need to go... 16:01:12 -[IPcaller] 16:01:13 -Tony 16:01:45 Eric: Where have you seen these set operations in VS? 16:02:47 Claude: Reaction might be caused by food or medication or latex gloves, etc. So you may want to say that you can unioin all of these substances as the terms in the VS. 16:03:21 ... Another case is that there's an existing VS, but many are not relevant to the domain, so you want to take away the irrelevant ones. 16:03:36 Eric: Or you might want to prefer a VS. 16:03:39 the constrained use case just described now (narrower scope) is very comon for us in clinical trial data! 16:04:14 Topic: Validation Working Group 16:04:44 Eric: Call for participation has gone out. Now's the time to join! First f2f will be in Santa Clara, end of October. 16:05:53 -??P32 16:05:55 -Ingeborg 16:06:20 Meeting: HCLS 16:06:23 -tim_w 16:06:27 -claude 16:06:44 Chair: David (by default) 16:06:50 -> https://www.w3.org/mid/op.xkzxenxqsvvqwp@sith.local 16:06:55 s/David/DBooth/ 16:07:10 -> https://www.w3.org/mid/op.xkzxenxqsvvqwp@sith.local W3C Call for Participation in RDF Shapes WG (member only) 16:07:23 ADJOURNED 16:07:25 rrsagent, draft minutes 16:07:25 I have made the request to generate http://www.w3.org/2014/09/09-hcls-minutes.html dbooth 16:07:35 -mscottm2 16:08:51 rrsagent, make logs public 16:12:22 zakim, who is here? 16:12:22 On the phone I see DBooth, ericP, Neda 16:12:24 On IRC I see Neda, hsolbrig, mehmet, Kerstin, RRSAgent, Zakim, dbooth, TallTed, egonw_, ericP 16:12:59 -Neda 16:48:16 https://help.github.com/articles/working-with-large-files 17:00:39 -ericP 17:01:01 lost eric! 17:01:52 -DBooth 17:01:53 SW_HCLS()11:00AM has ended 17:01:53 Attendees were +1.978.794.aaaa, tim_w, Mehmet, DBooth, Tony, claude, ericP, +1.469.226.aabb, Neda, mscottm2, Ingeborg, [IPcaller] 17:02:04 rrsagent, draft minutes 17:02:04 I have made the request to generate http://www.w3.org/2014/09/09-hcls-minutes.html dbooth 17:17:01 egonw_ has joined #HCLS 18:24:40 Zakim has left #hcls 18:49:15 mscottm2 has joined #hcls 19:11:07 TallTed has joined #hcls 19:31:23 TallTed has joined #hcls 19:59:04 mscottm2 has joined #hcls 20:23:22 mscottm2 has joined #hcls 20:32:11 rrsagent, bye 20:32:11 I see no action items