使用 Everest Framework 解析 XML doc (Clinical Document Architecture-CDA,HL7 standard)

Parse XML doc (Clinical Document Architecture-CDA,HL7 standard) using Everest Framework

我正在尝试从标准化为 HL7 V3 CDA 标准的 XML 文件中解析一些临床信息。

Xml 文件:

 <?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="http://www.accessdata.fda.gov/spl/stylesheet/spl.xsl" type="text/xsl"?>
<document xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 http://www.accessdata.fda.gov/spl/schema/spl.xsd">
   <id root="9bcbe9e4-a541-4ee7-856d-1aacf7f7298f"/>
   <code code="34391-3" codeSystem="2.16.840.1.113883.6.1" displayName="HUMAN PRESCRIPTION DRUG LABEL"/>
   <title>Amlodipine Besylate 5 mg</title>
   <effectiveTime value="20101104"/>
   <setId root="9abf41f1-66f9-4be4-a6d7-6c9aa0d5d387"/>
   <versionNumber value="448"/>
   <author>
      <time/>
      <assignedEntity>
         <representedOrganization>
            <id extension="831276758" root="1.3.6.1.4.1.519.1"/>
            <name>Lake Erie Medical DBA Quality Care Products LLC</name>
            <assignedEntity>
               <assignedOrganization>
                  <assignedEntity>
                     <assignedOrganization>
                        <id extension="831276758" root="1.3.6.1.4.1.519.1"/>
                        <name>Lake Erie Medical DBA Quality Care Products LLC</name>
                     </assignedOrganization>
                     <performance>
                        <actDefinition>
                           <code code="C73607" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="relabel"/>
                        </actDefinition>
                     </performance>
                  </assignedEntity>
                  <assignedEntity>
                     <assignedOrganization>
                        <id extension="915628612" root="1.3.6.1.4.1.519.1"/>
                        <name>Alkem Laboratories Limited</name>
                     </assignedOrganization>
                     <performance>
                        <actDefinition>
                           <code code="C43360" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="manufacture"/>
                        </actDefinition>
                     </performance>
                  </assignedEntity>
               </assignedOrganization>
            </assignedEntity>
         </representedOrganization>
      </assignedEntity>
   </author>
   <component>
      <structuredBody>
         <component>
            <section>
               <id root="5e90ce61-5d11-4acf-8a5b-f99cb10b60f4"/>
               <code code="48780-1" codeSystem="2.16.840.1.113883.6.1" displayName="SPL listing data elements section"/>
               <effectiveTime value="20101103"/>
               <subject>
                  <manufacturedProduct>
                     <manufacturedProduct>
                        <code code="35356-059" codeSystem="2.16.840.1.113883.6.69"/>
                        <name>Amlodipine Besylate <suffix/>
                        </name>
                        <formCode code="C42998" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="TABLET"/>
                        <asEntityWithGeneric>
                           <genericMedicine>
                              <name>Amlodipine Besylate </name>
                           </genericMedicine>
                        </asEntityWithGeneric>
                        <asEquivalentEntity classCode="EQUIV">
                           <code code="C64637" codeSystem="2.16.840.1.113883.3.26.1.1"/>
                           <definingMaterialKind>
                              <code code="51991-667" codeSystem="2.16.840.1.113883.6.69"/>
                           </definingMaterialKind>
                        </asEquivalentEntity>
                        <ingredient classCode="ACTIB">
                           <quantity>
                              <numerator value="5" unit="mg"/>
                              <denominator value="1" unit="1"/>
                           </quantity>
                           <ingredientSubstance>
                              <code code="864V2Q084H" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>AMLODIPINE BESYLATE</name>
                              <activeMoiety>
                                 <activeMoiety>
                                    <code code="1J444QC288" codeSystem="2.16.840.1.113883.4.9"/>
                                    <name>AMLODIPINE</name>
                                 </activeMoiety>
                              </activeMoiety>
                           </ingredientSubstance>
                        </ingredient>
                        <ingredient classCode="IACT">
                           <ingredientSubstance>
                              <code code="OP1R32D61U" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>CELLULOSE, MICROCRYSTALLINE</name>
                           </ingredientSubstance>
                        </ingredient>
                        <ingredient classCode="IACT">
                           <ingredientSubstance>
                              <code code="L11K75P92J" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>ANHYDROUS DIBASIC CALCIUM PHOSPHATE</name>
                           </ingredientSubstance>
                        </ingredient>
                        <ingredient classCode="IACT">
                           <ingredientSubstance>
                              <code code="5856J3G2A2" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>SODIUM STARCH GLYCOLATE TYPE A POTATO</name>
                           </ingredientSubstance>
                        </ingredient>
                        <ingredient classCode="IACT">
                           <ingredientSubstance>
                              <code code="ETJ7Z6XBU4" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>SILICON DIOXIDE</name>
                           </ingredientSubstance>
                        </ingredient>
                        <ingredient classCode="IACT">
                           <ingredientSubstance>
                              <code code="70097M6I30" codeSystem="2.16.840.1.113883.4.9"/>
                              <name>MAGNESIUM STEARATE</name>
                           </ingredientSubstance>
                        </ingredient>
                        <asContent>
                           <quantity>
                              <numerator value="90" unit="1">
                                 <translation code="C48477" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="BOTTLE"/>
                              </numerator>
                              <denominator value="1"/>
                           </quantity>
                           <containerPackagedProduct>
                              <code code="35356-059-90" codeSystem="2.16.840.1.113883.6.69"/>
                              <formCode code="C43173" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="BOTTLE, PLASTIC"/>
                           </containerPackagedProduct>
                        </asContent>
                     </manufacturedProduct>
                     <subjectOf>
                        <marketingAct>
                           <code code="C53292" codeSystem="2.16.840.1.113883.3.26.1.1"/>
                           <statusCode code="active"/>
                           <effectiveTime>
                              <low value="20101104"/>
                           </effectiveTime>
                        </marketingAct>
                     </subjectOf>
                     <subjectOf>
                        <approval>
                           <id extension="ANDA078925" root="2.16.840.1.113883.3.150"/>
                           <code code="C73584" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="ANDA"/>
                           <author>
                              <territorialAuthority>
                                 <territory>
                                    <code code="USA" codeSystem="2.16.840.1.113883.5.28"/>
                                 </territory>
                              </territorialAuthority>
                           </author>
                        </approval>
                     </subjectOf>
                     <subjectOf>
                        <characteristic classCode="OBS">
                           <code code="SPLCOLOR" codeSystem="2.16.840.1.113883.1.11.19255"/>
                           <value code="C48325" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="white" xsi:type="CE">
                              <originalText>off whit</originalText>
                           </value>
                        </characteristic>
                     </subjectOf>
                     <subjectOf>
                        <characteristic classCode="OBS">
                           <code code="SPLSCORE" codeSystem="2.16.840.1.113883.1.11.19255"/>
                           <value value="1" xsi:type="INT"/>
                        </characteristic>
                     </subjectOf>
                     <subjectOf>
                        <characteristic classCode="OBS">
                           <code code="SPLSHAPE" codeSystem="2.16.840.1.113883.1.11.19255"/>
                           <value code="C48348" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="ROUND" xsi:type="CE">
                              <originalText>flat faced beveled edge</originalText>
                           </value>
                        </characteristic>
                     </subjectOf>
                     <subjectOf>
                        <characteristic classCode="OBS">
                           <code code="SPLIMPRINT" codeSystem="2.16.840.1.113883.1.11.19255"/>
                           <value xsi:type="ST">210</value>
                        </characteristic>
                     </subjectOf>
                     <subjectOf>
                        <characteristic classCode="OBS">
                           <code code="SPLSIZE" codeSystem="2.16.840.1.113883.1.11.19255"/>
                           <value unit="mm" value="8" xsi:type="PQ"/>
                        </characteristic>
                     </subjectOf>
                     <consumedIn>
                        <substanceAdministration>
                           <routeCode code="C38288" codeSystem="2.16.840.1.113883.3.26.1.1" displayName="ORAL"/>
                        </substanceAdministration>
                     </consumedIn>
                  </manufacturedProduct>
               </subject>
            </section>
         </component>
         <component>
            <section>
               <id root="7a474776-2650-40ff-9a8e-22710ed363e4"/>
               <code code="34089-3" codeSystem="2.16.840.1.113883.6.1" displayName="DESCRIPTION SECTION"/>
               <text>
                  <linkHtml href=""/>11 DESCRIPTION<br/>Amlodipine besylate is the besylate salt of amlodipine, a long-acting calcium 
channel blocker.<br/>Amlodipine besylate is chemically described as 
3-Ethyl-5-methyl(±)-2- [(2-aminoethoxy)methyl]-4-(2-chlorophenyl)-1,4-dihydro-6- 
methyl-3,5-pyridinedicarboxylate, monobenzenesulphonate. Its empirical formula 
is C<sub>20</sub>H<sub>25</sub>ClN<sub>2</sub>O<sub>5</sub>•C<sub>6</sub>H<sub>6</sub>O<sub>3</sub>S, and its structural formula is<br/>
                  <br/>.<br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="82d89368-0995-45fd-85a1-e8cdc0edab97"/>
               <code code="34090-1" codeSystem="2.16.840.1.113883.6.1" displayName="CLINICAL PHARMACOLOGY SECTION"/>
               <text>
                  <linkHtml href=""/>12 CLINICAL PHARMACOLOGY<br/>
                  <linkHtml href=""/>12.1 Mechanism of Action<br/>Amlodipine is a dihydropyridine calcium antagonist (calcium ion antagonist or 
slow-channel blocker)

                  <br/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
                  <linkHtml href=""/>12.2 Pharmacodynamics<br/>
                  <br/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
                  <linkHtml href=""/>12.3 .<br/>
                  <br/>

                  <linkHtml href=""/>12.4 Pediatric Patients<br/>Sixty-two hypertensive patients aged 6 to 17 years received doses of amlodipine 
between 1.25 mg and 20 mg. Weight-adjusted clearance and volume of distribution 
were similar to values in adults.<linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="09519e8a-96a2-405a-bae4-e9a4857c7d43"/>
               <code code="34067-9" codeSystem="2.16.840.1.113883.6.1" displayName="INDICATIONS &amp; USAGE SECTION"/>
               <text>
                  <linkHtml href="#section-"/>
                  <linkHtml href="#section-"/>
                  <linkHtml href="#section-"/>
                  <linkHtml href="#section-"/>
                  <linkHtml href="#section-"/>
                  <linkHtml href=""/>
                  <br/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>agents.<linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>1.2 Coronary Artery Disease (CAD)<br/>
                  <content styleCode="underline">Chronic Stable Angina</content>
                  <br/>Amlodipine besylate tablets are 
indicated for the symptomatic treatment of chronic stable angina. Amlodipine 
besylate tablets may be used alone or in combination with other antianginal 
agents.<br/>
                  <br/>
                  <content styleCode="underline">Vasospastic Angina (Prinzmetal's or Variant 
Angina)</content>
                  <br/>Amlodipine besylate tablets are indicated for the treatment 
of confirmed or suspected vasospastic angina. Amlodipine besylate tablets may be 
used as monotherapy or in combination with other antianginal 
agents.<br/>
                  <br/>
                  <content styleCode="underline">Angiographically Documented CAD</content>
                  <br/>e<br/>
                  <content styleCode="underline"/>
                  <br/>
                  <br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="82dcdac1-1a49-4c95-b33d-593a0d7588ae"/>
               <code code="34070-3" codeSystem="2.16.840.1.113883.6.1" displayName="CONTRAINDICATIONS SECTION"/>
               <text>
                  <linkHtml href=""/>4 CONTRAINDICATIONS<br/>Amlodipine besylate 
tablets are contraindicated in patients with known sensitivity to amlodipine.<linkHtml href=""/>
                  <linkHtml href=""/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="d30aa4d2-e468-4ced-9774-7cacb077bbff"/>
               <code code="34084-4" codeSystem="2.16.840.1.113883.6.1" displayName="ADVERSE REACTIONS SECTION"/>
               <text>
                  <linkHtml href=""/>6 ADVERSE REACTIONS<linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>6.1 
are headache and edema.</text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="1d54e787-afa3-4931-b9e7-bc3bb021ef15"/>
               <code code="34088-5" codeSystem="2.16.840.1.113883.6.1" displayName="OVERDOSAGE SECTION"/>
               <text>
                  <linkHtml href=""/>10 OVERDOSAGE<br/>Overdosage might be expected to cause excessive peripheral vasodilation with 
marked hypotension and possibly a reflex tachycardia. In humans, experience with 
intentional overdosage of amlodipine is limited.<br/>
                 <sup>2 </sup>basis) caused a marked peripheral vasodilation and 
hypotension.<br/>
                  <br/>If.<linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="706986ac-49d5-4b07-a2b0-d5f75ef311bb"/>
               <code code="34068-7" codeSystem="2.16.840.1.113883.6.1" displayName="DOSAGE &amp; ADMINISTRATION SECTION"/>
               <text>
                  <linkHtml href="#section-"/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>2.1 Adults<br/>
<content styleCode="italics">[see <linkHtml href="#Section_6">Adverse Reactions (6)</linkHtml>].</content>
                  <br/>
                  <content styleCode="italics"/>
                  <br/>The recommended dose range for patients with 
coronary artery disease is 5–10 mg once daily. In clinical studies, the majority 
of patients required 10 mg <content styleCode="italics">[see <linkHtml href="#Section_14.4">Clinical Studies (14.4)</linkHtml>]</content>. <br/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>
                  <linkHtml href=""/>2.2 Children<br/>The effective antihypertensive 
oral dose in pediatric patients ages 6–17 years is 2.5 mg to 5 mg once daily. 
Doses in excess of 5 mg daily have not been studied in pediatric patients <content styleCode="italics">[see <linkHtml href="#Section_12.4">Clinical Pharmacology (12.4)</linkHtml>, <linkHtml href="#Section_14.1">Clinical Studies (14.1)</linkHtml>]</content>.</text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="39f80cec-5fea-490c-a8e9-e4acf96649a4"/>
               <code code="34069-5" codeSystem="2.16.840.1.113883.6.1" displayName="HOW SUPPLIED SECTION"/>
               <text>
                  <linkHtml href=""/>16 HOW SUPPLIED/STORAGE AND HANDLING<br/>
                  <linkHtml href=""/><linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
                  <br/>
                  <linkHtml href=""/>
of 90<linkHtml href=""/>
                  <linkHtml href=""/>
                  <br/>
                  <br/>
                  <linkHtml href=""/>16.3 10 mg Tablets<br/>Amlodipine besylate 
tablets 10 mg (amlodipine besylate equivalent to 10 mg of amlodipine per tablet) 
are white to off white, round, flat-faced, beveled edge tablets ‘209’ debossed 
on one side and plain on the other side and supplied as follows:<br/>NDC 
51991-668-90 Bottle of 90<br/>
                  <br/>
                  <br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="3211934b-8588-4bca-bc0d-16d89c2152a1"/>
               <code code="42230-3" codeSystem="2.16.840.1.113883.6.1" displayName="SPL PATIENT PACKAGE INSERT SECTION"/>
               <text>
                  <linkHtml href=""/>PATIENT PACKAGE INSERT<br/>
                  <content styleCode="bold">
                     <content styleCode="bold">AMLODIPINE BESYLATE TABLETS 2.5 mg, 5 mg, and 
10 mg</content>
                  </content>
                  <br/>
                  <br/>
                  <content styleCode="bold">What is amlodipine besylate?</content>
                  <br/>
                  <br/>
                  <content styleCode="bold">High Blood Pressure (hypertension)</content>
                  <br/>
                  <br/>
                  <content styleCode="bold">Angina</content>
                  <br/>Angina is a pain or discomfort that keeps 
coming back when part of your heart does not get enough blood. Angina feels like 
a pressing or squeezing pain, usually in your chest under the breastbone. 
Sometimes you can feel it in your shoulders, arms, neck, jaws, or back. 
Amlodipine besylate <content styleCode="bold"/>can relieve this pain.<br/>
                  <br/>
                  <content styleCode="bold">Who should not use amlodipine besylate?</content>
                  <br/>Do not use 
amlodipine besylate if you are allergic to amlodipine (the active ingredient in 
amlodipine besylate tablets), or to the inactive ingredients. Your doctor or 
pharmacist can give you a list of these ingredients.<br/>
                  <br/>
                  <content styleCode="bold">What should I tell my doctor before taking amlodipine besylate? 
</content>
                  <br/>Tell your doctor about any prescription and non-prescription 
medicines you are taking, including natural or herbal remedies.<br/>Tell your 
doctor if you: 
<list listType="unordered" ID="ie2a63721-85e3-4273-8fd9-48d010179dd1">
                     <item>ever had heart disease</item>
                     <item>ever had liver problems</item>
                     <item>are pregnant, or plan to become pregnant. Your doctor will decide if 
amlodipine besylate is the best treatment for you.</item>
                     <item>are breast-feeding. Do not breast-feed while taking amlodipine besylate. You 
can stop breast-feeding or take a different medicine.</item>
                  </list>
                  <br/>
                  <content styleCode="bold">How should I take amlodipine besylate?</content>
                  <list listType="unordered" ID="i1c95c31f-953d-4661-8c5a-317bbc09c96a">
                     <item></item>
                     <item>It may be easier to take your dose if you do it at the same time every day, 
such as with breakfast or dinner, or at bedtime. Do not take more than one dose 
of amlodipine besylate at a time.</item>
                     <item>If you miss a dose, take it as soon as you remember. Do not take amlodipine 
besylate if it has been more than 12 hours since you missed your last dose. Wait 
and take the next dose at your regular time.</item>
                     <item>
                        <content styleCode="bold">Other medicines:</content> You can use nitroglycerin and 
amlodipine besylate together. If you take nitroglycerin for angina, don't stop 
taking it while you are taking amlodipine besylate.</item>
                     <item>While you are taking amlodipine besylate, do not stop taking your other 
prescription medicines, including any other blood pressure medicines, without 
talking to your doctor.</item>
                     <item>If you took too much amlodipine besylate, call your doctor or Poison Control 
Center, or go to the nearest hospital emergency room right away.</item>
                  </list>
                  <br/>
                  <content styleCode="bold">What should I avoid while taking amlodipine besylate?</content>
                  <br/>
                  <list listType="unordered" ID="i7c271fb0-d554-40ae-8bcd-752af260043b">
                     <item>
                        <content styleCode="bold">Do not</content> breast-feed. It is not known if amlodipine 
besylate will pass through your milk.</item>
                     <item>
                        <content styleCode="bold">Do not</content> start any new prescription or 
non-prescription medicines or supplements, unless you check with your doctor 
first.</item>
                  </list>
                  <br/>
                  <content styleCode="bold">What are the possible side effects of amlodipine 
besylate?</content>
                  <br/>Amlodipine besylate may cause the following side effects. 
Most side effects are mild or moderate:
<list listType="unordered" ID="i83cb3d3a-99ac-4f4f-8d0b-3bfcb5e29f15">
                     <item>headache</item>
                     <item>swelling of your legs or ankles</item>
                     <item>tiredness, extreme sleepiness</item>
                     <item>stomach pain, nausea</item>
                     <item>dizziness</item>
                     <item>flushing (hot or warm feeling in your face)</item>
                     <item>arrhythmia (irregular heartbeat)</item>
                     <item>heart palpitations (very fast heartbeat)</item>
                  </list>
                  <br/>It is rare, but when you first start taking amlodipine besylate or increase your 
dose, you may have a heart attack or your angina may get worse. If that happens, 
call your doctor right away or go directly to a hospital emergency room.<br/>
                  <br/>Tell your doctor if you are concerned about any side effects you experience. 
These are not all the possible side effects of amlodipine besylate. For a 
complete list, ask your doctor or pharmacist.<br/>
                  <br/>
                  <content styleCode="bold">How do I store amlodipine besylate tablets?</content>
                  <br/>
                  <br/>
                  <content styleCode="bold">General advice about amlodipine besylate</content>
                  <br/><br/>
                  <br/>You can ask your pharmacist or doctor for information about amlodipine 
besylate.<br/>
                  <br/>
                  <br/>
               </text>
               <effectiveTime value="20101104"/>
            </section>
         </component>
         <component>
            <section>
               <id root="3c8a283d-3b42-41e7-aacb-ea355b5d948e"/>
               <code code="51945-4" codeSystem="2.16.840.1.113883.6.1" displayName="PACKAGE LABEL.PRINCIPAL DISPLAY PANEL"/>
               <text>
                  <paragraph>Image of label<renderMultiMedia referencedObject="MM554"/>
                  </paragraph>
               </text>
               <effectiveTime value="20101104"/>
               <component>
                  <observationMedia classCode="OBS" moodCode="EVN" ID="MM554">
                     <text>Image of label</text>
                     <value xsi:type="ED" mediaType="image/jpeg">
                        <reference value="amlodipine besylate 5 mg alkem laboratories limited.jpg"/>
                     </value>
                  </observationMedia>
               </component>
            </section>
         </component>
      </structuredBody>
   </component>
</document>

最好的库是什么? 我发现 Everest Framework (http://everest.codeplex.com/) 非常适合此类工作,但我没有找到任何实现此目的的示例。 以前有人用过这个框架吗?我正在寻找一个例子,我可以在其中将这个 xml 文件反序列化为 ClinicalDocument class。 谢谢

我假设您使用的是视觉工作室。如果是这样,这是我认为最简单的解决方案: 1.Create 一个 c# class。 2.Then 复制所有 XML(来自您的一个 CDA)。 3.Then 转到您之前创建的 class,然后转到“编辑”>“选择性粘贴”>“将 XML 粘贴为 类。

这将根据 XML 为您创建一个 class。然后,要像复制的那样解析任何 xml (CDA),只需将其反序列化为 class 类型,它将创建一个对象,您可以从中提取所有信息。希望对您有所帮助!

编辑:http://blog.codeinside.eu/2014/09/08/Visual-Studio-2013-Paste-Special-JSON-And-Xml/

反序列化示例:(假设您创建的 class 称为 CDA)

string path = "The Path of the XML file";

XmlSerializer superCereal = new XmlSerializer(typeof(CDA));
StreamReader sr = new StreamReader(path);
CDA doc= (CDA)superCereal.Deserialize(sr);
sr.Close();

现在对象文档将包含 xml 的所有信息。

您将需要创建一个 XSLT,可用于应用 CDA 转换以输出您需要的 HTML

为此,您可以使用以下代码:

using(XmlStateReader xr = new XmlStateReader(XmlReader.Create(@"C:\path-to-file.xml")))
{
    var fmtr = new XmlIts1Formatter();
    fmtr.ValidateConformance = false;
    fmtr.GraphAides.Add(new ClinicalDocumentDatatypeFormatter());
    var parseResult = fmtr.Parse(xr, typeof(ClinicalDocument));
    // There is a variable called structure which will contain your
    var cda = parseResult.Structure as ClinicalDocument;
} 

不确定这是否会帮助您转换,但这会将 CDA 读入 ClinicalDocument class。