NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

"

Document Information

Author: Traci St.Martin/Craig Stancl
Email: stancl.craig@mayo.edu
Team: LexEVS
Contract: [Contract number]
Client: NCI CBIIT
National Institutes of Heath
US Department of Health and Human Services

Contents


Sign off

Date

Role

CBIIT or Stakeholder Organization

Reviewer's Comments (If disapproved indicate specific areas for improvement.)

 


 


 

 


 


 

 


 


 



Detailed Design

Return to design document https://wiki.nci.nih.gov/display/EVS/LexEVS+6.0+Design+Document+-+Start#LexEVS6.0DesignDocument-Start-DetailedDesign

Associations and Mapping



Requirements

Levels of Mapping Implementation implied by current requirements from various stakeholders

There are multiple levels at which mapping, as evaluated here, could be considered to be "supported":

  1. The ability to store map sets, look up map sets by id, from, to
    and other attributes and to look up entries by source, target and/or
    relationship. We would have to store all of the additional information
    such as options, rules, categories, advice, etc, but it would be up to
    external software to interpret and evaluate the contents.
  2. Everything in option 1) above plus the ability to query
    additional fields - give me an ordered, structured list of a mapping
    entry in a way that someone could write a standard interpreter to
    evaluate it - this would basically require the addition of a model and
    would most likely cause us to split from the existing relations model,
    as it gets into the domain of table driven rule sets.
  3. Everything in 1) and, possibly 2) with the added ability to
    actually interpret the rules - an API that answers questions such as
    "What information is needed to map 231754000 (poisoning by sodium
    valproate) correctly?" (answer - whether barbituates, sulfonamides were
    present, whether combined with various substances, etc). "What does
    231754000 in the presence of ... map to?

Evaluation of Levels of Mapping Implementation for CTS 2

For LexEVS 6.0 (CTS 2), (3) is out of scope. This is
the function of a rules engine and the complexities of even the supplied
examples are overwhelming. We may want to examine the DSS RFP to see
whether there is anything there that applies. It appears that (2)
is out of scope as well, as, whether we interpret the semantics of the
rules or not, the structure required to represent the rules still lies
well within the rule base and DSS space. The question is, then, whether
item (1) adds sufficient value to be worth doing. My take is "no" as
well, as trying to fit all of the various aspects of the mapping rules
that we've seen to date into the nooks and crannies of the LexGrid
mapping model seems to be an exercise with little return.
What we need to do is to return to the set of use cases, if any,
that LexEVS could reasonably resolve. As there are simpler use
cases, such as those presented by various stakeholders, we will clearly need to
resolve them and, if it would be useful, could answer the same questions
for complex mappings. Once, however, we get to the point of
determining what participates in a particular map, it seems like we are
getting out of our scope - the best we might do is supply the
associationId that could be used as an index into another table.

Proposed Solution


Model Changes


The relations attribute in the model will have the following elements and attributes added:

  • representsVersion - if present, the source asserted version of the collection of relations or mappings
  • isMapping - if true, this collection of relations represents a mapping and will be evaluated for "mapping" related queries.
  • sourceCodingScheme - if present, the local identifier of the namespace that the sourcEntityCodes are derived from.
  •  sourceCodingSchemeVersion - the source asserted version identifier of the source coding scheme.  If present, this becomes the default for sourceEntityCodeNamespace.
  • targetCodingScheme - if present, the local identifier of the namespace that the targetEntityCodes are derived from. If present, this becomes the default for targetEntityCodeNamespace.
  • targetCodingSchemeVersion - the source asserted version identifier of the target coding scheme
  • properties - all other properties on the "relations bucket" level that don't fit one of the items in the Relations container


 
There are no additional changes for the second part of the model, shown above.

Content Representation

MRSAT Mappings

MRSAT Column

Function

LexGrid Equivalent

MAPSETVERSION

 

Relations.representsVersion

FROMVSAB

The from code system version

Relations.fromCodingSchemeVersion

FROMRSAB

The from code system

Relations.FromCodingScheme

TOVSAB

The to code system version

Relations.toCodingSchemeVersion

TORSAB

The to code system

Relations.toCodingScheme

MAPSETRSAB

Source of the value set

Relations.owner

(anything else)

 

Relations.property[key]

MRMAP Mappings |

There are at least two possibilities for the MRMAP transformations into LexGrid.  The first, the "flattened transformation" puts the entire MRMAP row into the table:

MRMAP Flattened Option

MRMAP Column

Function

LexGrid Equivalent

MAPSETCUI

 

Relations.containerName

MAPID

Row identifier

Target.associationInstanceId

FROMEXPR

Source code or expression

Source.sourceEntityCode

REL

UMLS asserted relationship

associationPredicate (if RELA absent)

RELA

Source asserted relationship

associationPredicate(if not blank)

TOEXPR

Target code or expression

Target.targetEntityCode (if code)
TargetData.associationDataText (else)

TOTYPE

Type of the data

targetData.associationDataText.dataType (if target is not code)

(entire MRMAP row

 

Target(Data).associationQualification[MRMAP entry]

MRMAP Expanded  Option |

MRMAP Column

Function

LexGrid Equivalent

MAPSETCUI

 

Relations.containerName

MAPID

Row identifier

Target.associationInstanceId

FROMEXPR

Source code or expression

Source.sourceEntityCode

REL

UMLS asserted relationship

associationPredicate (if RELA absent)

RELA

Source asserted relationship

associationPredicate(if not blank)

TOEXPR

Target code or expression

Target.targetEntityCode (if code)
TargetData.associationDataText (else)

TOTYPE

Type of the data

targetData.associationDataText.dataType (if target is not code)

(anything else)

 

Target(Data).associationQualification[associationQualifier]

Expression Issues

One of the requirements for mapping has been the ability to discover what maps a given entity (may) participate in.
This will not be completely answerable in situations where the codes are carried in text expressions. One alternative
would be to parse the target expression when possible and to create multiple rows, one for each target. Besides the parsing
complexity, however, the other issue is that it is not possible to record the expression operators (AND, OR, ...)
in the expansion. This, however, would arguably be the best use of the mappings for this level of complexity.

 Sample Mapping XML



<?xml version="1.0" encoding="UTF-8" ?>
- <codingScheme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://LexGrid.org/schema/2010/01/LexGrid/codingSchemes file:/C:/devel/v6/lexgrid_model/lgModel/master/relations.xsd" xmlns="http://LexGrid.org/schema/2010/01/LexGrid/codingSchemes" xmlns:lgBuiltin="http://LexGrid.org/schema/2010/01/LexGrid/builtins" xmlns:lgCS="http://LexGrid.org/schema/2010/01/LexGrid/codingSchemes" xmlns:lgCon="http://LexGrid.org/schema/2010/01/LexGrid/concepts" xmlns:lgCommon="http://LexGrid.org/schema/2010/01/LexGrid/commonTypes" codingSchemeName="UMLS" codingSchemeURI="urn:oid:2.16.840.1.113883.6.2" representsVersion="http://SharedNames.org/ontology/umls/2009AB">
  <mappings />
- <!--  MRSAT entry
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT115321814||MAPSETVERSION|MTH|2010_2009_08_17|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT115321815||TOVSAB|MTH|MSH2010_2009_08_17|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361323||FROMRSAB|MTH|MTH|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361327||FROMVSAB|MTH|MTH|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361343||MAPSETGRAMMAR|MTH|ATX ::= expr; expr ::= disj; disj ::= conj , conj "OR" conj; conj ::= unary , unary "AND" unary; unary ::= neg , pos; neg ::= "NOT" pos; pos ::= "(" expr ")" , slash , atom; slash ::= atom , atom "/" atom; atom ::= "<" (any non ">" character) ">";|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361355||MAPSETRSAB|MTH|MTH|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361364||MAPSETTYPE|MTH|ATX|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361368||MAPSETVSAB|MTH|MTH|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37408395||TORSAB|MTH|MSH|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37424062||SOS|MTH|This map set contains mappings from Metathesaurus CUIs to MSH associated expressions.|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870375||MTH_MAPFROMEXHAUSTIVE|MTH|N|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870378||MTH_MAPSETCOMPLEXITY|MTH|ONE_TO_ONE|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870384||MTH_MAPTOEXHAUSTIVE|MTH|N|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT65576316||MTH_MAPFROMCOMPLEXITY|MTH|SINGLE CUI|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT65576317||MTH_MAPTOCOMPLEXITY|MTH|BOOLEAN_EXPRESSION STR|N||
        C1306694|L8923988|S11111536|A17029750|CODE|1000|AT67813929||MAPSETSID|MTH|1000|N||
        C1306694||||CUI||AT116199817||MR|MTH|20090921|N||
        C1306694||||CUI||AT31823722||DA|MTH|20040415|N||
        C1306694||||CUI||AT31952620||ST|MTH|R|N||
  -->
- <!--  OPTION 1: Everything flattened
  -->
- <lgCS:relations containerName="C1306694" isMapping="true" sourceCodingScheme="MTH" sourceCodingSchemeVersion="MTH" targetCodingScheme="MSH" targetCodingSchemeVersion="MSH2010_2009_08_17" representsVersion="2010_2009_08_17" xmlns="http://LexGrid.org/schema/2010/01/LexGrid/relations">
- <!--  This should be MAPSETNAME but, curiously, it is missing from the MRSAT list. We are assuming that "SOS" is the equivalent
  -->
  <lgCommon:entityDescription>This map set contains mappings from Metathesaurus CUIs to MSH associated expressions.</lgCommon:entityDescription>
- <properties>
- <lgCommon:property propertyName="MAPSETGRAMMER">
  <lgCommon:value>ATX ::= expr; expr ::= disj; disj ::= conj , conj "OR" conj; conj ::= unary , unary "AND" unary; unary ::= neg , pos; neg ::= "NOT" pos; pos ::= "(" expr ")" , slash , atom; slash ::= atom , atom "/" atom; atom ::= ">" (any non ">" character) ">";</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETRSAB">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETTYPE">
  <lgCommon:value>ATX</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETVSAB">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPFROMEXHAUSTIVE">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPSETCOMPLEXITY">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOEXHAUSTIVE">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPFROMCOMPLEXITY">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOCOMPLEXITY">
  <lgCommon:value>MTH</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MR">
  <lgCommon:value>20090921</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="DA">
  <lgCommon:value>20040415</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="ST">
  <lgCommon:value>R</lgCommon:value>
  </lgCommon:property>
  </properties>
- <!--  MAPSETCUI|MAPSAB|MAPSUBSETID|MAPRANK|MAPID      |MAPSID|FROMID  |FROMSID|FROMEXPR|FROMTYPE|FROMRULE|FROMRES|REL|RELA
             C1306694 |MTH   |           |       |AT102971857|      |C0264643|       |C0264643|CUI     |        |       |SY |
             |TOID|TOSID|TOEXPR                                                    |TOTYPE                |TORULE|TORES|MAPRULE|MAPRES|MAPTYPE|MAPATN|MAPATV
             |3026|     |<Hypertension, Renovascular> AND <Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|      |     |       |      |ATX    |      |      ||
  -->
- <associationPredicate associationName="SY">
- <!--  MRMAP Option 1 - Expand each non-semantic MRMAP entry
  -->
- <source sourceEntityCode="C0264643">
- <targetData associationInstanceId="AT102971857">
- <associationQualification associationQualifier="FROMTYPE">
  <qualifierText>CUI</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMID">
  <qualifierText>C0264643</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOTYPE">
  <qualifierText>BOOLEAN_EXPRESSION_STR</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOID">
  <qualifierText>3026</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="MAPTYPE">
  <qualifierText>ATX</qualifierText>
  </associationQualification>
  <associationDataText dataType="BOOLEAN_EXPRESSION_STR">>Hypertension, Renovascular> AND >Hypertension, Malignant></associationDataText>
  </targetData>
  </source>
- <!--  MRMAP Option 2 - Keep MRMAP entry as it is
  -->
- <source sourceEntityCode="C0264643">
- <targetData associationInstanceId="AT102971857">
- <associationQualification associationQualifier="MRMAP Entry">
  <qualifierText>C1306694|MTH|||AT102971857||C0264643||C0264643|CUI|||SY||3026||>Hypertension, Renovascular> AND >Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||</qualifierText>
  </associationQualification>
  <associationDataText dataType="BOOLEAN_EXPRESSION_STR">>Hypertension, Renovascular> AND >Hypertension, Malignant></associationDataText>
  </targetData>
  </source>
- <!--  TARGET Option 2 - Semantic interpretation of the target entry
  -->
- <!--  NOTE That this loses the operators, but (assuming that the target entries were codes), would maintain the participation
  -->
- <source sourceEntityCode="C0264643">
- <target targetEntityCode="Hyptertension, Renovascular" associationInstanceId="AT102971857.1">
- <associationQualification associationQualifier="MRMAP Entry">
  <qualifierText>C1306694|MTH|||AT102971857||C0264643||C0264643|CUI|||SY||3026||>Hypertension, Renovascular> AND >Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||</qualifierText>
  </associationQualification>
  </target>
- <target targetEntityCode="Hypertension, Malignant" associationInstanceId="AT102971857.2">
- <associationQualification associationQualifier="MRMAP Entry">
  <qualifierText>C1306694|MTH|||AT102971857||C0264643||C0264643|CUI|||SY||3026||>Hypertension, Renovascular> AND >Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||</qualifierText>
  </associationQualification>
  </target>
  </source>
  </associationPredicate>
  </lgCS:relations>
- <!--
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT110721471||FROMVSAB|MDR|MDR12_0|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT110721473||MAPSETVERSION|MDR|200903|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT110721475||MAPSETVSAB|MDR|MDR12_0|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90562335||FROMRSAB|MDR|MDR|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90562339||MAPSETRSAB|MDR|MDR|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90562341||MAPSETTYPE|MDR|MedDRA to ICD9CM Mappings|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90580448||MTH_MAPFROMCOMPLEXITY|MDR|SINGLE CODE|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90580450||MTH_MAPFROMEXHAUSTIVE|MDR|N|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90580452||MTH_MAPSETCOMPLEXITY|MDR|ONE_TO_ONE|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90580454||MTH_MAPTOCOMPLEXITY|MDR|SINGLE CODE|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT90580456||MTH_MAPTOEXHAUSTIVE|MDR|N|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT91157709||TORSAB|MDR|ICD9CM|N||
        C2242749|L8609359|S10707041|A16492852|CODE|MTHU000002|AT91157711||TOVSAB|MDR|ICD9CM_1998|N||
        C2242749||||CUI||AT101551784||DA|MTH|20081103|N||
        C2242749||||CUI||AT102850765||ST|MTH|R|N||
        C2242749||||CUI||AT116202416||MR|MTH|20090926|N||

  -->
- <!--  Should this be the code or "MTHU000002"?
  -->
- <lgCS:relations containerName="C2242749" sourceCodingScheme="MDR" sourceCodingSchemeVersion="MDR12_0" targetCodingScheme="ICD9CM" targetCodingSchemeVersion="ICD9CM_1998" representsVersion="200903" xmlns="http://LexGrid.org/schema/2010/01/LexGrid/relations">
  <lgCommon:owner>MDR</lgCommon:owner>
- <!--  This should be MAPSETNAME but, curiously, it is missing from the MRSAT list
  -->
  <lgCommon:entityDescription>This map set contains mappings from Metathesaurus CUIs to MSH associated expressions.</lgCommon:entityDescription>
- <properties>
- <lgCommon:property propertyName="MAPSETTYPE">
  <lgCommon:value>MedDRA to ICD9CM Mappings</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPFROMCOMPLEXITY">
  <lgCommon:value>SINGLE CODE</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPFROMEXHAUSTIVE">
  <lgCommon:value>N</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPSETCOMPLEXITY">
  <lgCommon:value>ONE_TO_ONE</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOCOMPLEXITY">
  <lgCommon:value>SINGLE CODE</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOEXHAUSTIVE">
  <lgCommon:value>MedDRA to ICD9CM Mappings</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETTYPE">
  <lgCommon:value>N</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="DA">
  <lgCommon:value>20081103</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="ST">
  <lgCommon:value>R</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MR">
  <lgCommon:value>20090926</lgCommon:value>
  </lgCommon:property>
  </properties>
- <!--  MAPSETCUI|MAPSAB|MAPSUBSETID|MAPRANK|MAPID      |MAPSID|FROMID  |FROMSID|FROMEXPR|FROMTYPE|FROMRULE|FROMRES|REL|RELA
            C2242749 |MDR   |           |       |AT91157713 |      |10032725|       |10032725|CODE    |        |       |RQ |mapped_to
            |TOID |TOSID|TOEXPR |TOTYPE                |TORULE|TORES|MAPRULE|MAPRES|MAPTYPE|MAPATN|MAPATV
            |728.7|     |728.7  |CODE                  |||||||||
  -->
- <associationPredicate associationName="mapped_to">
- <!--  Note that "RQ" gets lost in this approach...
  -->
- <source sourceEntityCode="10032725">
- <target targetEntityCode="728.7" associationInstanceId="AT91157713">
- <associationQualification associationQualifier="FROMTYPE">
  <qualifierText>CODE</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMID">
  <qualifierText>10032725</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOID">
  <qualifierText>728.7</qualifierText>
  </associationQualification>
  </target>
  </source>
  </associationPredicate>
  </lgCS:relations>
- <!--  C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958256||MAPSETRSAB|ICD10PCS|ICD10PCS|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958265||MTH_MAPFROMCOMPLEXITY|ICD10PCS|SINGLE SDUI|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958266||MTH_MAPFROMEXHAUSTIVE|ICD10PCS|N|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958268||MTH_MAPSETCOMPLEXITY|ICD10PCS|N_TO_N|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958270||MTH_MAPTOEXHAUSTIVE|ICD10PCS|N|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT106958273||TORSAB|ICD10PCS|ICD10PCS|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240306||FROMRSAB|ICD10PCS|ICD9CM|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240309||FROMVSAB|ICD10PCS|ICD9CM_2009|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240314||MAPSETTYPE|ICD10PCS|ICD-9-CM to ICD-10-PCS Mappings (GEMs)|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240316||MAPSETVERSION|ICD10PCS|2009|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240319||MAPSETVSAB|ICD10PCS|ICD10PCS_2009|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240322||MAPSETXRTARGETID|ICD10PCS|NoPCS|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240327||MTH_MAPTOCOMPLEXITY|ICD10PCS|SINGLE SCUI|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240330||SOS|ICD10PCS|This set maps ICD-9-CM codes to ICD-10-PCS. These are "General Equivalence Mappings" (GEMs) and are rule-based.|N||
        C2603385|L8770856|S10872372|A16736317|CODE|MTHU000001|AT112240336||TOVSAB|ICD10PCS|ICD10PCS_2009|N||
        C2603385||||CUI||AT109499260||DA|MTH|20090401|N||
        C2603385||||CUI||AT110315629||ST|MTH|R|N||
        C2603385||||CUI||AT116202419||MR|MTH|20090926|N||
  -->
- <lgCS:relations containerName="C2603385" sourceCodingScheme="ICD9CM" sourceCodingSchemeVersion="ICD9CM_2009" targetCodingScheme="ICD10PCS" targetCodingSchemeVersion="ICD10PCS_2009" representsVersion="ICD10PCS_2009" xmlns="http://LexGrid.org/schema/2010/01/LexGrid/relations">
  <lgCommon:owner>ICD10PCS</lgCommon:owner>
  <lgCommon:entityDescription>This set maps ICD-9-CM codes to ICD-10-PCS. These are "General Equivalence Mappings" (GEMs) and are rule-based.</lgCommon:entityDescription>
- <properties>
- <lgCommon:property propertyName="MTH_MAPFROMCOMPLEXITY">
  <lgCommon:value>SINGLE SDUI</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPFROMEXHAUSTIVE">
  <lgCommon:value>N</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPSETCOMPLEXITY">
  <lgCommon:value>N_TO_N</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOEXHAUSTIVE">
  <lgCommon:value>N</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETVERSION">
  <lgCommon:value>2009</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MAPSETXRTARGETID">
  <lgCommon:value>NoPCS</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MTH_MAPTOCOMPLEXITY">
  <lgCommon:value>SINGLE SCUI</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="DA">
  <lgCommon:value>20090401</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="ST">
  <lgCommon:value>R</lgCommon:value>
  </lgCommon:property>
- <lgCommon:property propertyName="MR">
  <lgCommon:value>20090926</lgCommon:value>
  </lgCommon:property>
  </properties>
- <!--  MAPSETCUI|MAPSAB  |MAPSUBSETID|MAPRANK|MAPID      |MAPSID|FROMID  |FROMSID|FROMEXPR|FROMTYPE|FROMRULE|FROMRES|REL|RELA
         C2603385 |ICD10PCS|0:0        |       |AT106958276|      |86.63   |       |86.63   |SDUI    |        |       |RO |approximately_mapped_to
         |TOID   |TOSID|TOEXPR |TOTYPE |TORULE|TORES|MAPRULE|MAPRES|MAPTYPE|MAPATN|MAPATV
         |0HR6X73|     |0HR6X73|SCUI   |||||||||
  -->
- <associationPredicate associationName="approximately_mapped_to">
- <!--  Note that "RO" gets lost in this approach...
  -->
- <source sourceEntityCode="86.63">
- <target targetEntityCode="0HR6X73" associationInstanceId="AT106958276">
- <!--  NOTE: This does NOT imply any ordering in the way that map entries are returned !
  -->
- <associationQualification associationQualifier="MAPSUBSETID">
  <qualifierText>0:0</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMTYPE">
  <qualifierText>SDUI</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMID">
  <qualifierText>86.63</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOTYPE">
  <qualifierText>SCUI</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOID">
  <qualifierText>0HR6X73</qualifierText>
  </associationQualification>
  </target>
  </source>
  </associationPredicate>
- <associationPredicate associationName="XR">
- <!--  Note that approximately_mapped_to goes away.  This may not be what we want?
  -->
- <!--  MAPSETCUI|MAPSAB  |MAPSUBSETID|MAPRANK|MAPID      |MAPSID|FROMID  |FROMSID|FROMEXPR|FROMTYPE|FROMRULE|FROMRES|REL|RELA
                 C2603385 |ICD10PCS|0:0        |       |AT112240364|      |89.03   |       |89.03   |SDUI    |        |       |XR ||||||||||||||
                |TOID   |TOSID|TOEXPR |TOTYPE |TORULE|TORES|MAPRULE|MAPRES|MAPTYPE|MAPATN|MAPATV
                |||||||||||||
  -->
- <source sourceEntityCode="89.03">
- <target targetEntityCode="NoPCS" associationInstanceId="AT112240364">
- <associationQualification associationQualifier="MAPSUBSETID">
  <qualifierText>0:0</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMTYPE">
  <qualifierText>SDUI</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="FROMID">
  <qualifierText>86.63</qualifierText>
  </associationQualification>
- <associationQualification associationQualifier="TOID">
  <qualifierText>NoPCS</qualifierText>
- <!--  This is derived from the MAPSETXRTARGETID property in MRSAT
  -->
  </associationQualification>
  </target>
  </source>
  </associationPredicate>
  </lgCS:relations>
  </codingScheme>



 Implications for CTS 2 Mapping Implementation

Unknown macro: {table}
Unknown macro: {tr}
Unknown macro: {td}

CTS 2 Function

Unknown macro: {td}

Description

Unknown macro: {td}

Scope

Unknown macro: {tr}
Unknown macro: {td}

Update Association Status

Unknown macro: {td}

Update the status of a association (active, inactive, canceled etc). This allows a Terminology User to activate or inactivate a given association, thus changing its availability for access by other terminology service functions

Unknown macro: {td}

In scope for authoring API

Unknown macro: {tr}
Unknown macro: {td}

Create Association

Unknown macro: {td}

Relates a single specific coded concept within a specified code system (source) to a corresponding single specific coded concept (target) within the same or another code system, including identification of a specified Association type.

Unknown macro: {td}

In scope for authoring. Querying already supported

Unknown macro: {tr}
Unknown macro: {td}

Create Lexical Association between Coded Concepts

Unknown macro: {td}

Relates a set of one or more coded concepts within a specified code system (source)to a corresponding set of one or more coded concepts (target) within that system or another code system using a set of lexical rules (matching algorithms) to generate the Association. The "Source Search Criteria" allows for identification of a subset of the Source Code System to apply the matching algorithm to, if required (this may include limiting the version of the code system).

Unknown macro: {td}

Not in scope for CTS 2

Unknown macro: {tr}
Unknown macro: {td}

Create Rules Based Association between Coded Concepts

Unknown macro: {td}

Relates a set of zero or more coded concepts within a specified code system (source)to a corresponding set of zero or more coded concepts (target) within that system or another code system using a set of description logic or inference rules that either assert or infer Associations. The "Source Search Criteria" allows for identification of a subset of the Source Code System to apply the matching algorithm too, if required (this may include limiting the version of the code system).

Unknown macro: {td}

Not in scope for CTS 2


Latest from Harold

Taking the first row in the MRMAP.RRF table (UMLS 2009AB) as an example, we have

C1306694|MTH|||AT102971857||C0264643||C0264643|CUI|||SY||3026||<Hypertension, Renovascular> AND <Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||

And the corresponding MRSAT rows for this mapping are:

CUI      LUI      SUI       METAUI    STYPE CODE  ATUI           ATN     SAB        ATV        SUPPRESS CVF
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT115321814||MAPSETVERSION|MTH|2010_2009_08_17|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT115321815||TOVSAB|MTH|MSH2010_2009_08_17|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361323 ||FROMRSAB|MTH|MTH|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361327 ||FROMVSAB|MTH|MTH|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361343 ||MAPSETGRAMMAR|MTH|ATX ::= expr; expr ::= disj; disj ::= conj , conj "OR" conj; conj ::= unary , unary "AND" unary; unary ::= neg , pos; neg ::= "NOT" pos; pos ::= "(" expr ")" , slash , atom; slash ::= atom , atom "/" atom; atom ::= "<" (any non ">" character) ">";|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361355 ||MAPSETRSAB|MTH|MTH|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361364 ||MAPSETTYPE|MTH|ATX|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37361368 ||MAPSETVSAB|MTH|MTH|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37408395 ||TORSAB|MTH|MSH|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT37424062 ||SOS|MTH|This map set contains mappings from Metathesaurus CUIs to MSH associated expressions.|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870375 ||MTH_MAPFROMEXHAUSTIVE|MTH|N|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870378 ||MTH_MAPSETCOMPLEXITY|MTH|ONE_TO_ONE|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT56870384 ||MTH_MAPTOEXHAUSTIVE|MTH|N|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT65576316 ||MTH_MAPFROMCOMPLEXITY|MTH|SINGLE CUI|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT65576317 ||MTH_MAPTOCOMPLEXITY|MTH|BOOLEAN_EXPRESSION STR|N||
C1306694|L8923988|S11111536|A17029750|CODE|1000|AT67813929 ||MAPSETSID|MTH|1000|N||
C1306694|        |         |         |CUI |    |AT116199817||MR|MTH|20090921|N||
C1306694|        |         |         |CUI |    |AT31823722 ||DA|MTH|20040415|N||
C1306694|        |         |         |CUI |    |AT31952620 ||ST|MTH|R|N||

The relations table for this entry would become:

containerName:						(TBD)	
entityDescription:        This map set contains mappings from Metathesaurus CUIs to MSH associated expressions.
representsVersion:				2010_2009_07_17
isMapping:								true
sourceCodingScheme:				MTH
sourceCodingSchemeVersion: MTH  (or nothing?)
targetCodingScheme:				MSH
targetCodingSchemeVersion: MSH2010_2009_08_17

property:	MAPSETGRAMMAR
value:    ATX ::= expr; expr ::= disj; disj ::= conj , conj "OR" conj; conj ::= unary , unary "AND" unary; unary ::= neg , pos; neg ::= "NOT" pos; pos ::= "(" expr ")" , slash , atom; slash ::= atom , atom "/" atom; atom ::= "<" (any non ">" character) ">";
	Note - it might be handy to use the dataType field here to encode the grammer (BNF?))
property: MAPSETRSAB
value:    MTH
property: MAPSETTYPE
value:    ATX
property: MAPSETVSAB
value:    MSH
property: MTH_MAPFROMEXHAUSTIVE
value:    N
property: MTH_MAPSETCOMPLEXITY
value:    N
property: MTH_MAPTOEXHAUSTIVE
value:    N
property: MTH_MAPTOCOMPLEXITY
value:    BOOLEAN_EXPRESSION_STRING
property: MR
value:    20090921
property: DA
value:    20040415
property: ST
value:    R
  Note: it may be that the last couple of fields may map into the versionable characteristics of the relations container
value:    20090921

The MRMAP entry below is an example of a mapping that is complex enough that it can't be completely interpreted by the existing API

MAPSETCUI|MAPSETSAB| |MAPSID     ||FROMEXPR||FROMRULE|     RELA TOSID|TOEXPR                                                    |TOTYPE
C1306694 |MTH      |||AT102971857||C0264643||C0264643|CUI|||SY||3026||<Hypertension, Renovascular> AND <Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||

associationPredicate.associationName:        SY
associationSource.sourceEntityCode:          C0264643

associationTarget.targetEntityCode: Hypertension, Renovascular
	associationQualification.qualifierName: MAPSID
	associationQualification.qualifierText: AT10297857
	associationQualification.qualifierName: FROMRULE
	associationQualification.qualifierText: C026463
  associationQualification.qualifierName: FROMEXPR
	associationQualification.qualifierText: C0264643
	associationQualification.qualifierName: FROMRULE
	associationQualification.qualifierText: C0264643
	associationQualification.qualifierName: FROMTYPE
	associationQualification.qualifierText: CUI
	associationQualification.qualifierName: TOSID
	associationQualification.qualifierText: 3026
	associationQualification.qualifierName: TOEXPR
	associationQualification.qualifierText: <Hypertension, Renovascular> AND <Hypertension, Malignant>
	associationQualification.qualifierName: TOTYPE
	associationQualification.qualifierText: BOOLEAN_EXPRESSION

associationTarget.targetEntityCode: Hypertension, Malignant
	associationQualification.qualifierName: MAPSID
	associationQualification.qualifierText: AT10297857
	associationQualification.qualifierName: FROMRULE
	associationQualification.qualifierText: C026463
  associationQualification.qualifierName: FROMEXPR
	associationQualification.qualifierText: C0264643
	associationQualification.qualifierName: FROMRULE
	associationQualification.qualifierText: C0264643
	associationQualification.qualifierName: FROMTYPE
	associationQualification.qualifierText: CUI
	associationQualification.qualifierName: TOSID
	associationQualification.qualifierText: 3026
	associationQualification.qualifierName: TOEXPR
	associationQualification.qualifierText: <Hypertension, Renovascular> AND <Hypertension, Malignant>
	associationQualification.qualifierName: TOTYPE
	associationQualification.qualifierText: BOOLEAN_EXPRESSION

An alternative representation would be:

associationTarget.targetEntityCode: Hypertension, Malignant
  associationQualification.qualifierName:  MRMAP_ENTRY
  associationQualification.qualifierText:  C1306694 |MTH      |||AT102971857||C0264643||C0264643|CUI|||SY||3026||<Hypertension, Renovascular> AND <Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||
associationTarget.targetEntityCode: Hypertension, Renovascular
  associationQualification.qualifierName:  MRMAP_ENTRY
  associationQualification.qualifierText:  C1306694 |MTH      |||AT102971857||C0264643||C0264643|CUI|||SY||3026||<Hypertension, Renovascular> AND <Hypertension, Malignant>|BOOLEAN_EXPRESSION_STR|||||ATX||||

  • No labels