<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="STEP-Laboratory-STEPID" />
    <url value="http://step.snu.ac.kr/fhir/StructureDefinition/step-laboratory-STEPID" />
    <version value="4.0.1" />
    <name value="STEP_Laboratory_STEPID" />
    <title value="STEP_Laboratory_STEPID" />
    <status value="draft" />
    <date value="2022-01-25T01:24:55+00:00" />
    <publisher value="M" />
    <contact>
        <name value="Min" />
        <telecom>
            <system value="email" />
            <value value="step.on.fhir@gmail.com" />
        </telecom>
    </contact>
    <description value="Laboratory 항목 중 @검사명을 표현하기 위해 프로파일링된 Observation 리소스" />
    <jurisdiction>
        <coding>
            <system value="urn:iso:std:iso:3166" />
            <code value="KR" />
            <display value="Korea, Republic of" />
        </coding>
        <text value="Korea, Republic of" />
    </jurisdiction>
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Observation" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
    <derivation value="constraint" />
    <differential>
        <element id="Observation">
            <path value="Observation" />
            <short value="측정 및 간단한 설명(Assertions)" />
        </element>
        <element id="Observation.identifier">
            <path value="Observation.identifier" />
            <short value="리소스 식별자" />
        </element>
        <element id="Observation.identifier.system">
            <path value="Observation.identifier.system" />
            <short value="식별자 시스템 URI" />
            <min value="1" />
        </element>
        <element id="Observation.identifier.value">
            <path value="Observation.identifier.value" />
            <short value="식별자 코드" />
            <min value="1" />
        </element>
        <element id="Observation.status">
            <path value="Observation.status" />
            <short value="결과에 대한 표현 (prefered: final)" />
            <example>
                <label value=":" />
                <valueCode value="final" />
            </example>
        </element>
        <element id="Observation.category">
            <path value="Observation.category" />
            <short value="관찰 유형의 분류" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.category.coding">
            <path value="Observation.category.coding" />
            <short value="용어 체계에 의해 정의된 코딩" />
        </element>
        <element id="Observation.category.coding.system">
            <path value="Observation.category.coding.system" />
            <short value="용어 체계 [HL7] @ (ALT: SNOMED CT)" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueUri value="https://www.hl7.org/fhir/valueset-observation-category.html" />
            </example>
        </element>
        <element id="Observation.category.coding.code">
            <path value="Observation.category.coding.code" />
            <short value="용어 체계 코드" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueCode value="laboratory" />
            </example>
        </element>
        <element id="Observation.category.coding.display">
            <path value="Observation.category.coding.display" />
            <short value="용어 체계에 의해 정의된 표현" />
            <example>
                <label value=":" />
                <valueString value="Laboratory" />
            </example>
        </element>
        <element id="Observation.code">
            <path value="Observation.code" />
            <short value="해당 관찰 항목의 코드 정보 (필수)" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.code.coding">
            <path value="Observation.code.coding" />
            <short value="용어 체계에 의해 정의된 코드" />
            <min value="1" />
        </element>
        <element id="Observation.code.coding.system">
            <path value="Observation.code.coding.system" />
            <short value="용어 체계 [SNOMED CT] @ (ALT: LOINC)" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueUri value="http://snomed.info/sct" />
            </example>
        </element>
        <element id="Observation.code.coding.code">
            <path value="Observation.code.coding.code" />
            <short value="용어 체계 코드" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueCode value="@코드명" />
            </example>
        </element>
        <element id="Observation.code.coding.display">
            <path value="Observation.code.coding.display" />
            <short value="용어 체계에 의해 정의된 표현" />
            <example>
                <label value=":" />
                <valueString value="@코드표현" />
            </example>
        </element>
        <element id="Observation.subject">
            <path value="Observation.subject" />
            <short value="관찰 대상자(Subject)" />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
            </type>
            <example>
                <label value=":" />
                <valueReference>
                    <display value="홍길동" />
                </valueReference>
            </example>
            <mustSupport value="true" />
        </element>
        <element id="Observation.effective[x]">
            <path value="Observation.effective[x]" />
            <short value="측정된 시간 정보" />
            <type>
                <code value="dateTime" />
            </type>
            <example>
                <label value=":" />
                <valueDateTime value="2021-06-18T00:00:00Z" />
            </example>
        </element>
        <element id="Observation.issued">
            <path value="Observation.issued" />
            <short value="리소스 기록된 생성된 시간" />
            <example>
                <label value=":" />
                <valueInstant value="2021-06-19T07:00:00+00:00" />
            </example>
        </element>
        <element id="Observation.performer">
            <path value="Observation.performer" />
            <short value="관찰에 대한 책임자(기관)" />
            <min value="1" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
            </type>
            <example>
                <label value=":" />
                <valueReference>
                    <display value="S병원" />
                </valueReference>
            </example>
        </element>
        <element id="Observation.value[x]">
            <path value="Observation.value[x]" />
            <short value="실제 결과" />
            <min value="1" />
            <type>
                <code value="string" />
            </type>
            <example>
                <label value=":" />
                <valueString value="@결과값" />
            </example>
            <mustSupport value="true" />
        </element>
        <element id="Observation.dataAbsentReason">
            <path value="Observation.dataAbsentReason" />
            <short value="데이터가 없는 경우, 사용" />
        </element>
        <element id="Observation.dataAbsentReason.text">
            <path value="Observation.dataAbsentReason.text" />
            <short value="자유형식으로 표현 (prefered: NA)" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueString value="NA" />
            </example>
        </element>
        <element id="Observation.specimen">
            <path value="Observation.specimen" />
            <short value="검체 표본" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Observation.specimen.display">
            <path value="Observation.specimen.display" />
            <short value="자유형식으로 표현 (Preferred: Valueset-Specimen)" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueString value="Urine" />
            </example>
        </element>
        <element id="Observation.device">
            <path value="Observation.device" />
            <short value="기기 (reference)" />
            <min value="1" />
        </element>
        <element id="Observation.device.display">
            <path value="Observation.device.display" />
            <short value="문자열로 표현" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueString value="@기기명칭" />
            </example>
        </element>
        <element id="Observation.referenceRange">
            <path value="Observation.referenceRange" />
            <short value="참조치" />
            <min value="1" />
            <max value="1" />
        </element>
        <element id="Observation.referenceRange.text">
            <path value="Observation.referenceRange.text" />
            <short value="자유 형식으로 표현" />
            <min value="1" />
            <example>
                <label value=":" />
                <valueString value="[병원별 참조값 입력]" />
            </example>
        </element>
    </differential>
</StructureDefinition>