FHIR Chat · cataloging DAG set operation · ontology

Stream: ontology

Topic: cataloging DAG set operation


view this post on Zulip Erich Schulz (Jun 03 2016 at 23:21):

in context of developing uniform terminology server APIs...

view this post on Zulip Erich Schulz (Jun 03 2016 at 23:23):

the basic operations I can see a need for are walk-up (all ancestors), walk-down (descendants|explode), union, intersection and difference|subtraction

view this post on Zulip Erich Schulz (Jun 03 2016 at 23:25):

(I'm just jotting these down @Grahame Grieve to suggest some basic operations I'd see as a greater priority than operations supporting incremental/patch operation on transitive subsumption closure sets)

view this post on Zulip Erich Schulz (Jun 03 2016 at 23:31):

these operations would apply to explicitly enumerated sets

view this post on Zulip Grahame Grieve (Jun 05 2016 at 12:13):

have you looked at $lookup?

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:27):

ah, no just a quick glance - will do in more detail now

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:39):

you mean this @Grahame Grieve ? http://hl7.org/fhir/valueset-operations.html

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:39):

i had seen that

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:41):

it doesnt seem to cover the above operations

view this post on Zulip Grahame Grieve (Jun 05 2016 at 12:42):

value set and look ups cover most of what you want.

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:42):

I have stumbled past reference to walk-down and union operations (cant rember where exactly now!)- but i'm not seeing them explicit on that page

view this post on Zulip Grahame Grieve (Jun 05 2016 at 12:43):

well, perhaps you could define them

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:43):

would that be useful?

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:45):

(my main game at the moment is trying to understand what I can extract from CSIRO and others so I can avoid doing things myself)

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:46):

Is there interest in the other terminology services in augmenting an migrating their APIs?

view this post on Zulip Grahame Grieve (Jun 05 2016 at 12:48):

depends. what is it that you want? I don't know what you think those things mean

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:48):

My "all welcome" whiteboard is here where I'm trying to capture the status quo btw (from other post)

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:53):

i've dropped these note into bottom of google doc

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:53):

walk-up (all ancestors - all concepts the given node is subsumed by, or 'is-a' type of),
walk-down (descendants|explode - all subtypes),
Union (combination of two or more sets),
Intersection (overlap between 2 or more sets)
Difference|subtraction - elements in a given set that are not in a second given set (A-B)
transitive subsumption closure set generation

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:53):

do you think any are ambiguous?

view this post on Zulip Erich Schulz (Jun 05 2016 at 12:56):

(but i'm hitting sack - that thanks for all the pointers and all round awesomeness)

view this post on Zulip Michael Lawley (Jun 14 2016 at 04:20):

hah, just found this thread after creating a ticket for a subsumes operator for use in ValueSet filter - this would cover the 'walk-up' operation. 'is-a' covers 'walk-down' and 'import' covers 'union'. That leaves 'intersection' and 'subtraction'. The natural semantics for ValueSet exclude is subtract, but it doesn't operate at on ValueSets; one needs 'subtract' to match with 'import', but then we need to decide on the order of operation; would 'subtract' happen after all the imports, but before all the includes/excludes, or at the end, with the excludes.

My natural inclination here would be to re-work import more extensively to allow for general nesting of 'union', 'intersect', and 'subtract' with other ValueSets

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:06):

@Michael Lawley have you looked at the CQL spec btw?

view this post on Zulip Michael Lawley (Jun 14 2016 at 05:07):

No, I haven't

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:07):

there seems to be a bit of a gap between what it lays out and what fhir does

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:07):

its worth a gander

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:10):

as a concrete manifestation of how these ontology services will be used in clinical logic

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:10):

I'm seeing some gaps in the CQL functionality

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:11):

(i think the assumption is that it will use icd10 or something with a very basic tree)

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:12):

but the potential for magic is there

view this post on Zulip Michael Lawley (Jun 14 2016 at 05:13):

If theC in CQL is for clinical, and ICD-anything is being contemplated then it's pretty-much broken by design - magic will be required

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:14):

heh

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:15):

well its agnostic about both information model and ontology

view this post on Zulip Michael Lawley (Jun 14 2016 at 05:17):

this isn't inspiring me to go and look - what is the Clinical value-add if it is InfoModel and Terminology agnostic? (that was my fundamental issue with Gello when I looked)

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:18):

thing that atracts me is the thought is to support both point-of-care CDSS and population based audit/"quality indicator" logic

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:18):

well it will take FHIR :-)

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:19):

it uses a "get me any of object X with codes Y in date range Z" approach to interacting with the model

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:19):

and toggles between population and individual modes

view this post on Zulip Michael Lawley (Jun 14 2016 at 05:26):

Can "codes Y" can be expressed as "codes in ValueSet Y"?

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:47):

i think not

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:48):

which is why I'm thinking they are in an icd headspace

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:48):

but that is fixable

view this post on Zulip Erich Schulz (Jun 14 2016 at 05:48):

in version 2 :-)

view this post on Zulip Erich Schulz (Jun 14 2016 at 06:33):

actually that is a question @Bryn Rhodes maybe best place to answer

view this post on Zulip Erich Schulz (Jun 14 2016 at 06:33):

it seem CQL can define a set of codes, but only explicitly as a list

view this post on Zulip Erich Schulz (Jun 14 2016 at 06:34):

not as an all codes below a node

view this post on Zulip Jim Steel (Jun 14 2016 at 06:56):

FHIR ValueSets can include terms intensionally based on a filter, provided that the code system its drawing from supports that filter

view this post on Zulip Erich Schulz (Jun 14 2016 at 07:09):

I'm just trying to get my head around what CQL is capable of referencing

view this post on Zulip Erich Schulz (Jun 14 2016 at 07:10):

I must say after the luxury of all the fhir definititions beautifully laid out on the web the 3M downloadable pdf behind a firewall seems a bit arcane

view this post on Zulip Grahame Grieve (Jun 14 2016 at 07:15):

CQL is working towards the FHIR way of publishing. But it's a slow process. Also, QCQL framework is aligning with FHIR, so things like the underling terminology model are likely to become more aligned as we go forward

view this post on Zulip Erich Schulz (Jun 14 2016 at 07:17):

I think FHIR+CQL+[ontology] => magic

view this post on Zulip Erich Schulz (Jun 14 2016 at 07:19):

the prospect of using the same engine/syntax/wet-ware for both population and individual logical operations is genius

view this post on Zulip Erich Schulz (Jun 14 2016 at 07:20):

oh and of course that sounds very positive about the increasing alignment :-)


Last updated: Apr 12 2022 at 19:14 UTC