La réponse originale de @Mike Moulckers:

Scott,
L'astuce consiste à utiliser la syntaxe appropriée pour accéder aux différents champs du message DICOM. Dans l'exemple ci-dessous, nous extrayons des données du message DICOM pour les insérer dans un message de demande de planification simple produit en XML. La même syntaxe peut être utilisée en sens inverse, en écrivant de HL7 vers DICOM. Comme le message DICOM n'est pas entièrement défini dans Ensemble/HealthShare, la vue graphique de l'éditeur DTL n'est pas très jolie...

Class Test.Transform.DICOMToPatientSchedule Extends Ens.DataTransformDTL [ DependsOn = (EnsLib.DICOM.Document, Test.Msg.PatientScheduleReq) ]
{ 
   Parameter IGNOREMISSINGSOURCE = 1; 
   Parameter REPORTERRORS = 1; 
   Parameter TREATEMPTYREPEATINGFIELDASNULL = 0; 
   XData DTL [ XMLNamespace = "http://www.intersystems.com/dtl" ]
   {
      <transform sourceClass='EnsLib.DICOM.Document' targetClass='Test.Msg.PatientScheduleReq' targetDocType='2.3.1:ADT_A01' create='new' language='objectscript' >
         <assign value='source.GetValueAt("DataSet.PatientID")' property='target.PID' action='set' />
         <assign value='"DICOM"' property='target.MessageSource' action='set' />
         <assign value='source.GetValueAt("DataSet.PatientName")' property='target.PatientName' action='set' />
         <assign value='source.GetValueAt("DataSet.ScheduledProcedureStepSequence[1].ScheduledProcedureStepStartDate")' property='target.ExamDateTime' action='set' />
         <assign value='source.GetValueAt("DataSet.ScheduledProcedureStepSequence[1].ScheduledProcedureStepStartDate")' property='target.FileDate' action='set' />
         <assign value='source.GetValueAt("DataSet.ScheduledProcedureStepSequence[1].ScheduledProcedureStepDescription")' property='target.ExamType' action='set' />
         <assign value='source.GetValueAt("DataSet.AccessionNumber")' property='target.AccessionNumber' action='set' />
         <assign value='source.GetValueAt("DataSet.StudyInstanceUID")' property='target.VisitId' action='set' />
         <assign value='source.GetValueAt("DataSet.ScheduledProcedureStepSequence[1].ScheduledPerformingPhysicianName")' property='target.AttendingPhysician' action='set' />
      </transform>
   }
}