C-32 文档架构错误

C-32 document schematron errors

我已经构建了 C32 CCD 部分 - 家族史,但不确定为什么我会收到 NIST schematron 错误,即使该部分包含该部分中提到的所有模式错误元素。

错误如下:

Message A family history organizer (templateId 2.16.840.1.113883.10.20.1.23) SHALL be represented with Organizer.
Context /ClinicalDocument[1]/component[1]/structuredBody[1]/component[7]/section[1]
Test    self::cda:organizer
Specification   Schematron schema for validating conformance to CCD documents
Message The value for "Organizer / classCode" in a family history organizer SHALL be "CLUSTER" 2.16.840.1.113883.5.6 ActClass STATIC.
Context /ClinicalDocument[1]/component[1]/structuredBody[1]/component[7]/section[1]
Test    @classCode='CLUSTER'
Specification   Schematron schema for validating conformance to CCD documents
Message The value for "Organizer / moodCode" in a family history organizer SHALL be "EVN" 2.16.840.1.113883.5.1001 ActMood STATIC.
Context /ClinicalDocument[1]/component[1]/structuredBody[1]/component[7]/section[1]
Test    @moodCode='EVN'

用于验证 CCD 文档一致性的规范 Schematron 架构

下面是家族史部分

<!--*******************Family History***********************-->       <component>
                    <section>
                        <!-- *** Family history section (V3) *** -->
                        <templateId root="2.16.840.1.113883.10.20.1.23"/>
                        <!--<templateId root ="1.3.6.1.4.1.19376.1.5.3.1.4.15"/> -->
                        <code code="10157-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/>
                        <title>FAMILY HISTORY</title>
                        <text>
                            <paragraph>Father (deceased)</paragraph>
                            <table border="1" width="100%">
                                <thead>
                                    <tr>
                                        <th>Diagnosis</th>
                                        <th>Age At Onset</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <tr>
                                        <td>Myocardial Infarction (cause of death)</td>
                                        <td>57</td>
                                    </tr>
                                    <tr>
                                        <td>Diabetes</td>
                                        <td>40</td>
                                    </tr>
                                </tbody>
                            </table>
                        </text>
                        <entry typeCode="DRIV">
                            <organizer moodCode="EVN" classCode="CLUSTER">
                                <!-- ** Family history organizer (V3) ** -->
                                <templateId root="2.16.840.1.113883.10.20.1.23"/>
                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.15"/>
                                <id root="d42ebf70-5c89-11db-b0de-0855200c9a66"/>
                                <statusCode code="completed"/>

                                <subject typeCode="SBJ">
                                    <!-- <name>Henry Seven</name> -->
                                    <relatedSubject classCode="PRS">
                                    <code code="FTH" displayName="Father" codeSystemName="HL7 FamilyMember" codeSystem="2.16.840.1.113883.5.111">
                                        <translation code="9947008" displayName="Biological father" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/>
                                    </code>
                                    <subject>
                                    <name>Henry Seven</name>
                                        <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1" displayName="Male"/>
                                        <birthTime value="1912"/>
                                    </subject>
                                    </relatedSubject>

                                </subject>

                                <component typeCode='COMP'>
                                    <observation classCode="OBS" moodCode="EVN">
                                        <!-- ** Family history observation (V3) ** -->
                                        <!--Critical Change-->
                                        <templateId root="2.16.840.1.113883.10.20.1.22"/>
                                        <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13"/>
                                        <templateId root='1.3.6.1.4.1.19376.1.5.3.1.4.13.3'/>
                                        <id root="d42ebf70-5c89-11db-b0de-0800200c9a66"/>
                                        <code code="64572001" codeSystemName="SNOMED-CT" codeSystem="2.16.840.1.113883.6.96" displayName="Condition">
                                            <!-- a. This code SHALL contain at least one [1..*] translation, which SHOULD be selected from ValueSet Problem Type (LOINC)
                                            <translation code="75323-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Condition"/>
                                            very likely that the following is present, but use of LOINC as shown above would be better -->
                                            <translation nullFlavor="NI"/>
                                        </code>
                                         <text><reference value='#xxx'/></text>
                                        <statusCode code="completed"/>
                                        <effectiveTime value="1967"/>
                                        <value xsi:type="CD" code="22298006" codeSystem="2.16.840.1.113883.6.96" displayName="Myocardial infarction"/>
                                        <entryRelationship typeCode="CAUS">
                                            <observation classCode="OBS" moodCode="EVN">
                                                <!-- ** Family history death observation ** -->
                                                <!-- <templateId root="2.16.840.1.113883.10.20.22.4.47"/> -->
                                                <templateId root="2.16.840.1.113883.10.20.1.38"/>
                                                <id root="6898fae0-5c8a-11db-b0de-0800200c9a66"/>
                                                <code code="ASSERTION" codeSystem="2.16.840.1.113883.5.4"/>
                                                <statusCode code="completed"/>
                                                <value xsi:type="CD" code="419099009" codeSystem="2.16.840.1.113883.6.96" displayName="Dead"/>
                                            </observation>
                                        </entryRelationship>
                                        <entryRelationship typeCode="SUBJ" inversionInd="true">
                                            <observation classCode="OBS" moodCode="EVN">
                                                <!-- ** Age observation ** -->
                                                <templateId root="2.16.840.1.113883.10.20.1.38"/>
                                                <code code="397659008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Age At Onset"/>
                                                <statusCode code="completed"/>
                                                <value xsi:type="PQ" value="57" unit="a"/>
                                            </observation>
                                        </entryRelationship>
                                    </observation>
                                </component>
                                <component typeCode='COMP'>
                                    <observation classCode="OBS" moodCode="EVN">
                                        <!-- ** Family history observation ** -->
                                        <!--Critical Change-->
                                        <templateId root="2.16.840.1.113883.10.20.1.22"/>
                                        <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13"/>
                                        <templateId root='1.3.6.1.4.1.19376.1.5.3.1.4.13.3'/>
                                        <id root="5bfe3ec0-5c8b-11db-b0de-0800200c9a66"/>
                                        <code code="64572001" codeSystemName="SNOMED-CT" codeSystem="2.16.840.1.113883.6.96" displayName="Condition">
                                            <!-- a. This code SHALL contain at least one [1..*] translation, which SHOULD be selected from ValueSet Problem Type (LOINC)
                                            <translation code="75323-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Condition"/>
                                            very likely that the following is present, but use of LOINC as shown above would be better -->
                                            <translation nullFlavor="NI"/>
                                        </code>
                                         <text><reference value='#xxx'/></text>
                                        <statusCode code="completed"/>
                                        <effectiveTime value="1950"/>
                                        <value xsi:type="CD" code="44054006" codeSystem="2.16.840.1.113883.6.96" displayName="Diabetes mellitus type 2"/>
                                        <entryRelationship typeCode="SUBJ" inversionInd="true">
                                            <observation classCode="OBS" moodCode="EVN">
                                                <!-- ** Age observation ** -->
                                                <templateId root="2.16.840.1.113883.10.20.1.38"/>
                                                <code code="397659008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Age At Onset"/>
                                                <statusCode code="completed"/>
                                                <value xsi:type="PQ" value="40" unit="a"/>
                                            </observation>
                                        </entryRelationship>
                                    </observation>
                                </component>
                            </organizer>
                        </entry>
                    </section>
                </component>
        <!--*******************Family History***********************-->
        <component>
            <section>
                <!-- *** Family history section (V3) *** -->
                <templateId root="2.16.840.1.113883.10.20.1.4" assigningAuthorityName="CCD"/>
                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.3.14" assigningAuthorityName="IHE PCC"/>
                <code code="10157-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/>
                <title>FAMILY HISTORY</title>
                <text>
                    <paragraph>Father (deceased)</paragraph>
                    <table border="1" width="100%">
                        <thead>
                            <tr>
                                <th>Diagnosis</th>
                                <th>Age At Onset</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td>Myocardial Infarction (cause of death)</td>
                                <td>57</td>
                            </tr>
                            <tr>
                                <td>Diabetes</td>
                                <td>40</td>
                            </tr>
                        </tbody>
                    </table>
                </text>
                <entry typeCode="DRIV">
                    <organizer moodCode="EVN" classCode="CLUSTER">
                        <!-- ** Family history organizer (V3) ** -->
                        <!--<templateId root="2.16.840.1.113883.10.20.22.4.45" extension="2015-08-01"/>
                            <templateId root="2.16.840.1.113883.10.20.22.4.45"/> -->
                        <templateId root="2.16.840.1.113883.10.20.1.23"/>
                        <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.15"/>
                        <id root="d42ebf70-5c89-11db-b0de-0855200c9a66"/>
                        <statusCode code="completed"/>
                        <subject>
                            <relatedSubject classCode="PRS">
                                <code code="FTH" displayName="Father" codeSystemName="FamilyRelationshipRoleType" codeSystem="2.16.840.1.113883.5.111">
                                    <!--
                                        <translation code="9947008" displayName="Biological father" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/>
                                        -->
                                </code>
                                <subject>
                                    <name>
                                        <given>Patricia</given>
                                        <given qualifier="CL">Patty</given>
                                        <family>Primary</family>
                                        <suffix qualifier="AC">M.D.</suffix>
                                    </name>
                                    <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.1.11.1" displayName="Male"/>
                                    <birthTime value="1910"/>
                                </subject>
                            </relatedSubject>
                        </subject>
                        <component>
                            <observation classCode="OBS" moodCode="EVN">
                                <!-- ** Family history observation (V3) ** -->
                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13"/>
                                <templateId root="2.16.840.1.113883.10.20.1.22"/>
                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13.3" extension="2015-08-01"/>
                                <!--Critical Change-->

                                <id root="d42ebf70-5c89-11db-b0de-0800200c9a66"/>
                                <code code="64572001" codeSystemName="SNOMED-CT" codeSystem="2.16.840.1.113883.6.96" displayName="Condition">
                                    <!-- a. This code SHALL contain at least one [1..*] translation, which SHOULD be selected from ValueSet Problem Type (LOINC)
                                        <translation code="75323-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Condition"/>
                                        very likely that the following is present, but use of LOINC as shown above would be better -->
                                    <translation nullFlavor="NI"/>
                                </code>
                                <text>
                                    <reference value="#pr10000000000" />
                                </text>
                                <statusCode code="completed"/>
                                <effectiveTime value="1967"/>
                                <value xsi:type="CD" code="22298006" codeSystem="2.16.840.1.113883.6.96" displayName="Myocardial infarction"/>
                                <entryRelationship typeCode="CAUS">
                                    <observation classCode="OBS" moodCode="EVN">
                                        <!-- ** Family history death observation ** -->
                                        <templateId root="2.16.840.1.113883.10.20.22.4.47"/>
                                        <id root="6898fae0-5c8a-11db-b0de-0800200c9a66"/>
                                        <code code="ASSERTION" codeSystem="2.16.840.1.113883.5.4"/>
                                        <statusCode code="completed"/>
                                        <value xsi:type="CD" code="419099009" codeSystem="2.16.840.1.113883.6.96" displayName="Dead"/>
                                    </observation>
                                </entryRelationship>
                                <entryRelationship typeCode="SUBJ" inversionInd="true">
                                    <observation classCode="OBS" moodCode="EVN">
                                        <!-- ** Age observation ** -->
                                        <templateId root="2.16.840.1.113883.10.20.22.4.31"/>
                                        <code code="445518008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Age At Onset"/>
                                        <statusCode code="completed"/>
                                        <value xsi:type="PQ" value="57" unit="a"/>
                                    </observation>
                                </entryRelationship>
                            </observation>
                        </component>
                        <component>
                            <observation classCode="OBS" moodCode="EVN">
                                <!-- ** Family history observation ** -->
                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13"/>
                                <templateId root="2.16.840.1.113883.10.20.1.22"/>
                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13.3" extension="2015-08-01"/>
                                <!--Critical Change-->
                                <id root="5bfe3ec0-5c8b-11db-b0de-0800200c9a66"/>
                                <code code="64572001" codeSystemName="SNOMED-CT" codeSystem="2.16.840.1.113883.6.96" displayName="Condition">
                                    <!-- a. This code SHALL contain at least one [1..*] translation, which SHOULD be selected from ValueSet Problem Type (LOINC)
                                        <translation code="75323-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Condition"/>
                                        very likely that the following is present, but use of LOINC as shown above would be better -->
                                    <translation nullFlavor="NI"/>
                                </code>
                                <text>
                                    <reference value="#pr10000000000" />
                                </text>
                                <statusCode code="completed"/>
                                <effectiveTime value="1950"/>
                                <value xsi:type="CD" code="44054006" codeSystem="2.16.840.1.113883.6.96" displayName="Diabetes mellitus type 2"/>
                                <entryRelationship typeCode="SUBJ" inversionInd="true">
                                    <observation classCode="OBS" moodCode="EVN">
                                        <!-- ** Age observation ** -->
                                        <templateId root="2.16.840.1.113883.10.20.22.4.31"/>
                                        <code code="445518008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Age At Onset"/>
                                        <statusCode code="completed"/>
                                        <value xsi:type="PQ" value="40" unit="a"/>
                                    </observation>
                                </entryRelationship>
                            </observation>
                        </component>
                    </organizer>
                </entry>
            </section>
        </component>
        <!--******************End of Family History****************-->