2009-07-20 15 views
3

背景:SQL FOR XMLクエリを使用して、はるかに大きなXMLドキュメント(HL7 CDAドキュメント)を生成しています。規約に従って、このXMLノードの前にセクションコメントを含める必要があります。そのため、ノードを大きなドキュメントに再アセンブルしたときに読みやすくなります。ここでSQL FOR XMLステートメントでXMLコメントを生成

は、予想される出力のサンプルです:私はコメントを挿入することができますが

SELECT  '10153-2' AS [section/code/@code], '2.16.840.1.113883.6.1' AS [section/code/@codeSystem], 'LOINC' AS [section/code/@codeSystemName], 
         'Past Medical History' AS [section/title], 
      (SELECT  [Incident] + ' - ' + [IncidentYear] as "item" 
      FROM  [tblSummaryPastMedicalHistory] AS PMH 
      WHERE  ([PMH].[Incident] IS NOT NULL) AND ([PMH].[PatientUnitNumber] = [PatientEncounter].[PatientUnitNumber]) 
      FOR XML PATH('list'), TYPE 
      ) as "section/text" 
FROM   tblPatientEncounter AS PatientEncounter 
WHERE  (PatientEncounterNumber = 6) 
FOR XML PATH('component'), TYPE 

:ここ

<!-- 
******************************************************** 
    Past Medical History section 
******************************************************** 
--> 

<component> 
    <section> 
     <code code="10153-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> 
     <title>Past Medical History</title> 
     <text> 
      <list> 
       <item>COPD - 1998</item> 
       <item>Dehydration - 2001</item> 
       <item>Myocardial infarction - 2003</item> 
      </list> 
     </text> 
    </section> 
</component> 

は、私は上記のXMLをレンダリングするために構築されていることをXML文のSQLですこれらのXMLスニペットをメイン文書に再アセンブルする制御機能から、私たちの目標は、文書の構築ミスを避けるために出力とともにコメントを生成させることです。

私はいくつかのことを試しましたが、SELECTステートメントでコメントを生成するのに問題があります。私は単純な文字列を試しましたが、改行の構文を取得できませんでした。助言がありますか?

答えて

10

例:

SELECT [EmployeeKey] 
     ,[ParentEmployeeKey] 
     ,[FirstName] 
     ,[LastName] 
     ,[MiddleName] 
     ,[DepartmentName] AS "comment()" 
    FROM [AdventureWorksDW2008].[dbo].[DimEmployee] 
    FOR XML PATH('Employee'),ROOT('Employees') 

は生成:助けを

<Employees> 
    <Employee> 
    <EmployeeKey>1</EmployeeKey> 
    <ParentEmployeeKey>18</ParentEmployeeKey> 
    <FirstName>Guy</FirstName> 
    <LastName>Gilbert</LastName> 
    <MiddleName>R</MiddleName> 
    <!--Production--> 
    </Employee> 
    <Employee> 
    <EmployeeKey>2</EmployeeKey> 
    <ParentEmployeeKey>7</ParentEmployeeKey> 
    <FirstName>Kevin</FirstName> 
    <LastName>Brown</LastName> 
    <MiddleName>F</MiddleName> 
    <!--Marketing--> 
    </Employee> 
</Employees> 
+0

感謝を!私が実際に保存していた白いスペース、例えば返品、タブなどに実際に置いていなければなりませんでした。その性質上のコメントでは タグなどは認識されないためです –

関連する問題