<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="HcgSerplAcnc" />
  <url value="http://fhir.org/guides/hspc/StructureDefinition/HcgSerplAcnc" />
  <version value="2.0.0" />
  <name value="HSPC HcgSerplAcnc Profile" />
  <status value="draft" />
  <date value="2017-05-05" />
  <publisher value="HSPC" />
  <contact>
    <telecom>
      <system value="url" />
      <value value="http://healthcaresoa.org" />
    </telecom>
  </contact>
  <fhirVersion value="3.0.0" />
  <mapping>
    <identity value="argonaut-dq-dstu2" />
    <uri value="http://unknown.org/Argonaut DQ DSTU2" />
    <name value="Argonaut DQ DSTU2" />
  </mapping>
  <mapping>
    <identity value="workflow" />
    <uri value="http://hl7.org/fhir/workflow" />
    <name value="Workflow Mapping" />
  </mapping>
  <mapping>
    <identity value="sct-concept" />
    <uri value="http://snomed.info/conceptdomain" />
    <name value="SNOMED CT Concept Domain Binding" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/w5" />
    <name value="W5 Mapping" />
  </mapping>
  <mapping>
    <identity value="sct-attr" />
    <uri value="http://snomed.info/sct" />
    <name value="SNOMED CT Attribute Binding" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://fhir.org/guides/hspc/StructureDefinition/hspc-stdqty" />
  <derivation value="constraint" />
  <differential>
    <element id="Observation:hspcHcgSerplAcnc">
      <path value="Observation" />
      <sliceName value="hspcHcgSerplAcnc" />
      <short value="HSPC Standard Lab Obs Quantitative profile." />
      <definition value="The HSPC Standard Lab Obs Quantity profile is based on the HSPC Standard Lab Obs profile." />
      <comment value="Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc.  Other resources are used to provide context for observations such as lab reports, etc." />
      <alias value="Obs" />
      <constraint>
        <key value="us-core-2" />
        <severity value="error" />
        <human value="If there is no component or related element then either a value[x] or a data absent reason must be present" />
        <expression value="(component.empty() and related.empty()) implies (dataAbsentReason or value)" />
        <xpath value="exists(f:component) or exists(f:related) or exists(f:*[starts-with(local-name(.), 'value)]) or exists(f:dataAbsentReason)" />
      </constraint>
      <mustSupport value="false" />
      <isModifier value="false" />
      <mapping>
        <identity value="argonaut-dq-dstu2" />
        <map value="Observation" />
      </mapping>
    </element>
    <element id="Observation:hspcHcgSerplAcnc.code">
      <path value="Observation.code" />
      <fixedCodeableConcept>
        <coding>
          <system value="http://loinc.org" />
          <code value="19080-1" />
          <display value="Choriogonadotropin [Units/volume] in Serum or Plasma" />
        </coding>
      </fixedCodeableConcept>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
      <binding>
        <strength value="preferred" />
        <description value="Standard LOINC codes" />
        <valueSetReference>
          <reference value="ValueSet/QuantitativeLabCodes" />
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="argonaut-dq-dstu2" />
        <map value="Observation.code" />
      </mapping>
    </element>
    <element id="Observation:hspcHcgSerplAcnc.valueQuantity">
      <path value="Observation.valueQuantity" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Quantity" />
        <profile value="http://hl7.org/fhir/StructureDefinition/Quantity" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.valueQuantity.value">
      <path value="Observation.valueQuantity.value" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.valueQuantity.unit">
      <path value="Observation.valueQuantity.unit" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.valueQuantity.system">
      <path value="Observation.valueQuantity.system" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
        <profile value="http://hl7.org/fhir/StructureDefinition/uri" />
      </type>
      <fixedUri value="http://unitsofmeasure.org" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.valueQuantity.code">
      <path value="Observation.valueQuantity.code" />
      <comment value="The UCUM code must be comparable to the LOINC example UCUM code (e.g. the UCUM definitions allow for it to be converted)." />
      <min value="1" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.dataAbsentReason">
      <path value="Observation.dataAbsentReason" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.interpretation">
      <path value="Observation.interpretation" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
      <binding>
        <strength value="preferred" />
        <description value="The set of codes that describe in what way a lab value is abnormal" />
        <valueSetReference>
          <reference value="ValueSet/abnInt-NumericNom" />
        </valueSetReference>
      </binding>
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange">
      <path value="Observation.referenceRange" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange.low">
      <path value="Observation.referenceRange.low" />
      <min value="0" />
      <max value="0" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange.high">
      <path value="Observation.referenceRange.high" />
      <min value="0" />
      <max value="0" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange.meaning">
      <path value="Observation.referenceRange.meaning" />
      <min value="0" />
      <max value="0" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange.age">
      <path value="Observation.referenceRange.age" />
      <min value="0" />
      <max value="0" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
    <element id="Observation:hspcHcgSerplAcnc.referenceRange.text">
      <path value="Observation.referenceRange.text" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="false" />
    </element>
  </differential>
</StructureDefinition>