OpenCDS Configuration - Mappings and Knowledge Modules

  • There is now a single mapping file named cdm.xml. 
  • ConceptDeterrminationMethods now get defined in knowledgeModules.xml.
  • Both of those new OpenCDS configuration files are found here:

               

  • Here is a fragment of knowledgeModules.xml, with CDM stuff highlighted:

    <knowledgeModule>

        <identifier scopingEntityId="edu.utah" businessId="HEDIS_PBH" version="2014.0.0" />

        <status>APPROVED</status>

        <executionEngine>org.opencds.service.drools.v55.DroolsAdapter</executionEngine>

        <semanticSignifierId scopingEntityId="org.opencds.vmr" businessId="VMR" version="1.0" />

        <conceptDeterminationMethods>

            <primaryCDM code="C2511" codeSystem="2.16.840.1.113883.3.795.12.1.1" displayName="HEDIS 2014" version="1.0" />

            <secondaryCDM code="C36"  codeSystem="2.16.840.1.113883.3.795.12.1.1" displayName="OpenCDS" version="1.0" method="ADDITIVE" />

        </conceptDeterminationMethods>

        <package>

            <packageType>PKG</packageType>

            <packageId>edu.utah.HEDIS.v2014_0.PBH.pkg</packageId>

            <preload>true</preload>

        </package>

        <primaryProcess>PrimaryProcess</primaryProcess>

        <preProcessPlugins>

            <preProcessPlugin version="0.1" businessId="EncountersFromProblemAndProcedureConcepts" scopingEntityId="org.opencds.plugin" />

        </preProcessPlugins>

        <timestamp>2014-10-16T07:42:09.816-06:00</timestamp>

        <userId>phillip</userId>

    </knowledgeModule>

 

  • There must be no more than one primaryCDM, and 0 to many secondaryCDMs for each KM.
    • Note that leaving the conceptDeterminationMethod empty will make OpenCDS work in the same way it has always been working… 
      • It won’t break anything. 
      • However, initial testing shows that performance is improved by using the above specification.
  • secondaryCDM method must be either ADDITIVE or REPLACEMENT. 
    • ADDITIVE means that the secondaryCDM mappings will be added to the previously defined CDMs for that KM.
    • REPLACEMENT means that the secondaryCDM mappings will replace any mappings for all exact match concept codes defined in the primaryCDM or a secondaryCDM that is higher in the list.
      • Note that REPLACEMENT will do nothing if there are no existing mappings for any particular concept. 
        • This means that it will not create a mapping where one does not already exist.
  • Both primaryCDM and secondaryCDM are expected to be contained in the cdm.xml file referenced above.