Provides a terminology service, wrapping the SNOMED store and search implementations as a single unified service.
Provides a terminology service, wrapping the SNOMED store and search implementations as a single unified service.
(active-association-targets svc component-id refset-id)
Return the active association targets for a given component.
Return the active association targets for a given component.
(are-any? svc concept-ids parent-ids)
Are any of the concept-ids subsumed by any of the parent-ids?
Checks the is-a relationships of the concepts in question against the set of parent identifiers.
Are any of the concept-ids subsumed by any of the parent-ids? Checks the is-a relationships of the concepts in question against the set of parent identifiers.
(build-search-index root)
(build-search-index root language-priority-list)
(create-service root import-from)
(create-service root import-from locale-preference-string)
Create a terminology service combining both store and search functionality in a single step. It would be unusual to use this; usually each step would be performed interactively by an end-user.
Create a terminology service combining both store and search functionality in a single step. It would be unusual to use this; usually each step would be performed interactively by an end-user.
(ecl-contains? svc concept-ids ecl)
Do any of the concept-ids satisfy the constraint expression specified? This is an alternative to expanding the valueset and then checking membership.
Do any of the concept-ids satisfy the constraint expression specified? This is an alternative to expanding the valueset and then checking membership.
(expand-ecl svc ecl)
Expand an ECL expression.
Expand an ECL expression.
(expand-ecl-historic svc ecl)
Expand an ECL expression and include historic associations of the results, so that the results will include now inactive/deprecated concept identifiers.
Expand an ECL expression and include historic associations of the results, so that the results will include now inactive/deprecated concept identifiers.
(get-child-relationships-of-type svc concept-id type-concept-id)
Returns a collection of identifiers representing the child relationships of the specified type of the specified concept.
Returns a collection of identifiers representing the child relationships of the specified type of the specified concept.
(get-component-refset-items svc component-id)
(get-component-refset-items svc component-id refset-id)
(get-parent-relationships-of-type svc concept-id type-concept-id)
Returns a collection of identifiers representing the parent relationships of the specified type of the specified concept.
Returns a collection of identifiers representing the parent relationships of the specified type of the specified concept.
(get-reference-sets svc component-id)
Deprecated; use `get-component-refset-items instead.
Deprecated; use `get-component-refset-items instead.
(get-refset-members svc refset-id & more)
Return a set of identifiers for the members of the given refset(s). Parameters:
Return a set of identifiers for the members of the given refset(s). Parameters: - refset-id - SNOMED identifier representing the reference set.
(get-status root
&
{:keys [counts? installed-refsets?]
:or {counts? false installed-refsets? true}})
(get-synonyms svc concept-id)
Returns a collection of synonyms for the given concept.
Returns a collection of synonyms for the given concept.
(historical-associations svc component-id)
Returns all historical-type associations for the specified component. Result is a map, keyed by the type of association (e.g. SAME-AS) and a sequence of reference set items for that association. Some concepts may be ambiguous and therefore map to multiple targets. Annoyingly, but understandably, the 'moved-to' reference set does not actually reference the new component - but the namespace to which it has moved - so for example an ancient International release may have accidentally including UK specific concepts - so they will have been removed. It is hoped that most MOVED-TO concepts will also have a SAME-AS or POSSIBLY-EQUIVALENT-TO historical association. See https://confluence.ihtsdotools.org/display/DOCRELFMT/5.2.5.1+Historical+Association+Reference+Sets and https://confluence.ihtsdotools.org/display/editorialag/Component+Moved+Elsewhere
Returns all historical-type associations for the specified component. Result is a map, keyed by the type of association (e.g. SAME-AS) and a sequence of reference set items for that association. Some concepts may be ambiguous and therefore map to multiple targets. Annoyingly, but understandably, the 'moved-to' reference set does not actually reference the new component - but the namespace to which it has moved - so for example an ancient International release may have accidentally including UK specific concepts - so they will have been removed. It is hoped that most MOVED-TO concepts will also have a SAME-AS or POSSIBLY-EQUIVALENT-TO historical association. See https://confluence.ihtsdotools.org/display/DOCRELFMT/5.2.5.1+Historical+Association+Reference+Sets and https://confluence.ihtsdotools.org/display/editorialag/Component+Moved+Elsewhere
(import-snomed root dirs)
Import SNOMED distribution files from the directories dirs
specified into
the database directory root
specified.
Import SNOMED distribution files from the directories `dirs` specified into the database directory `root` specified.
(map-features svc source-concept-ids target)
Map the source-concept-ids into the target, usually in order to reduce the dimensionality of the dataset.
Parameters:
If a source concept id resolves to multiple concepts in the target collection, then a collection will be returned such that no member of the subset is subsumed by another member.
It would be usual to map any source concept identifiers into their modern active replacements, if they are now inactive.
The use of mapping features is in reducing the granularity of user-entered data to aid analytics. For example,rather than limiting data entry to the UK emergency reference set, a set of commonly seen diagnoses in emergency departments in the UK, we can allow clinicians to enter highly specific, granular terms, and map to the contents of that reference set as required for analytics and reporting.
For example, '991411000000109' is the UK emergency unit diagnosis refset: (map-features svc [24700007 763794005] 991411000000109) => (#{24700007} #{45170000}) As multiple sclerosis (24700007) is in the reference set, it is returned. However, LGI1-associated limbic encephalitis (763794005) is not in the reference set, the best terms are returned ("Encephalitis" - 45170000).
This can be used to do simple classification tasks - such as determining the broad types of illness. For example, here we use ECL to define a set to include 'neurological disease', 'respiratory disease' and 'infectious disease':
(map-features svc [24700007 763794005 95883001] "118940003 OR 50043002 OR 40733004") => (#{118940003} #{118940003} #{40733004 118940003}) Both multiple sclerosis and LGI-1 encephalitis are types of neurological disease (118940003). However, 'Bacterial meningitis' (95883001) is mapped to both 'neurological disease' (118940003) AND 'infectious disease' (40733004).
Map the source-concept-ids into the target, usually in order to reduce the dimensionality of the dataset. Parameters: - svc : hermes service - source-concept-ids : a collection of concept identifiers - target : a collection of concept identifiers, an ECL expression : or a refset identifier. If a source concept id resolves to multiple concepts in the target collection, then a collection will be returned such that no member of the subset is subsumed by another member. It would be usual to map any source concept identifiers into their modern active replacements, if they are now inactive. The use of mapping features is in reducing the granularity of user-entered data to aid analytics. For example,rather than limiting data entry to the UK emergency reference set, a set of commonly seen diagnoses in emergency departments in the UK, we can allow clinicians to enter highly specific, granular terms, and map to the contents of that reference set as required for analytics and reporting. For example, '991411000000109' is the UK emergency unit diagnosis refset: (map-features svc [24700007 763794005] 991411000000109) => (#{24700007} #{45170000}) As multiple sclerosis (24700007) is in the reference set, it is returned. However, LGI1-associated limbic encephalitis (763794005) is not in the reference set, the best terms are returned ("Encephalitis" - 45170000). This can be used to do simple classification tasks - such as determining the broad types of illness. For example, here we use ECL to define a set to include 'neurological disease', 'respiratory disease' and 'infectious disease': (map-features svc [24700007 763794005 95883001] "118940003 OR 50043002 OR 40733004") => (#{118940003} #{118940003} #{40733004 118940003}) Both multiple sclerosis and LGI-1 encephalitis are types of neurological disease (118940003). However, 'Bacterial meningitis' (95883001) is mapped to both 'neurological disease' (118940003) AND 'infectious disease' (40733004).
(open root)
Open a (read-only) SNOMED service from the path root
.
Open a (read-only) SNOMED service from the path `root`.
(reverse-map svc refset-id code)
Returns the reverse mapping from the reference set and mapTarget specified.
Returns the reverse mapping from the reference set and mapTarget specified.
(reverse-map-range svc refset-id prefix)
(reverse-map-range svc refset-id lower-bound upper-bound)
Returns the reverse mapping from the reference set specified, performing what is essentially a prefix search using the parameters.
Returns the reverse mapping from the reference set specified, performing what is essentially a prefix search using the parameters.
(some-indexed pred coll)
Returns index and first logical true value of (pred x) in coll, or nil. e.g. (some-indexed #{64572001} '(385093006 233604007 205237003 363169009 363170005 123946008 64572001 404684003 138875005)) returns: [6 664572001].
Returns index and first logical true value of (pred x) in coll, or nil. e.g. (some-indexed #{64572001} '(385093006 233604007 205237003 363169009 363170005 123946008 64572001 404684003 138875005)) returns: [6 664572001].
(source-historical svc component-id)
(source-historical svc component-id refset-ids)
Return the requested historical associations for the component of types as defined by assoc-refset-ids, or all association refsets if omitted.
Return the requested historical associations for the component of types as defined by assoc-refset-ids, or all association refsets if omitted.
(source-historical-associations svc component-id)
Returns all historical-type associations in which the specified component is the target. For example, searching for 24700007 will result in a map keyed by refset-id (e.g. SAME-AS reference set) and a set of concept identifiers.
Returns all historical-type associations in which the specified component is the target. For example, searching for 24700007 will result in a map keyed by refset-id (e.g. SAME-AS reference set) and a set of concept identifiers.
(with-historical svc concept-ids)
(with-historical svc concept-ids assoc-refset-ids)
For a given sequence of concept identifiers, expand to include historical associations both backwards and forwards in time.
For a currently active concept, this will return historic inactivated concepts in which it is the target. For a now inactive concept, this will return the active associations and their historic associations.
By default, all types of historical associations except MoveTo and MovedFrom are included, but this is configurable.
For a given sequence of concept identifiers, expand to include historical associations both backwards and forwards in time. For a currently active concept, this will return historic inactivated concepts in which it is the target. For a now inactive concept, this will return the active associations and their historic associations. By default, all types of historical associations except MoveTo and MovedFrom are included, but this is configurable.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close