Справочная информация. Я создаю фрагменты намного большего XML-документа (документы HL7 CDA) с использованием SQL-запросов XML FOR. Следуя соглашению, мы должны включить комментарии раздела перед этим XML-узлом, чтобы при повторной сборке узлов в более крупный документ их было легче читать.
Вот пример ожидаемого результата:
<!--
********************************************************
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>
Вот оператор 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
Хотя я могу вставить комментарии из управляющей функции, которая собирает эти фрагменты XML, в основной документ, наша цель состоит в том, чтобы сгенерировать комментарии вместе с выводом, чтобы избежать ошибок построения документа.
Я пробовал несколько вещей, но у меня возникают проблемы при создании комментариев с помощью инструкции SELECT. Я пробовал простую строку, но не смог получить синтаксис для разрывов строк. Есть предложения?