Teilen über


Pipelinekomponente XML-Disassembler

Die Pipelinekomponente des XML-Disassemblers vereint XML-Analyse und Disassemblierung in einer Komponente. Sie besitzt folgende Hauptfunktionen:

  • Entfernen von Umschlägen.

  • Disassemblieren des Austausches.

  • Heraufstufen der Inhaltseigenschaften von Austausch- und einzelnen Dokumentenebenen auf den Nachrichtkontext.

    Nach dem Empfangen eines Umschlages werden in der XML-Disassemblerkomponente die folgenden Aktionen durchgeführt:

  1. Der Disassembler analysiert den Umschlag mithilfe der Umschlagschemas, die zur Entwurfszeit statisch mit der Komponente verknüpft wurden, oder zur Laufzeit dynamisch durch Ermitteln der Umschlagschemas aus dem Nachrichtentyp. Das Schema dient zum Überprüfen der Struktur des Umschlags während der Analyse des Umschlags. Wenn die Umschlagstruktur nicht definiert ist, wird sie rekursiv ermittelt, indem mithilfe des Namespace und des Basisnamens des Quellknotens die Schemas gesucht werden.

  2. Die Disassemblerkomponente analysiert jedes Dokument innerhalb des Umschlags. Für jedes Dokument wird das BizTalk-Nachrichtenobjekt mit seinem eigenen Kontext erstellt, in dem alle Eigenschaften kopiert werden, die aus dem Umschlag und dem Dokument selbst heraufgestuft wurden. Die Komponente zieht mithilfe der vordefinierten XPaths, die als Anmerkungen in den mit dem Umschlag und der Nachricht verknüpften XSD-Schemas codiert sind, die Inhaltseigenschaften aus dem Umschlag und den Nachrichtinstanzen. Diese Umschlagschemas sowie die einzelnen Dokumentschemas werden mit der Disassemblerkomponente in Pipeline-Designer verknüpft.

    Der XML-Disassembler verarbeitet nur Daten im Textteil der Nachricht. Aus diesem Grund können nur Eigenschaften aus dem Textteil höher gestuft werden. Datetime-Werte aus den Feldern, die mit den heraufstufbaren Eigenschaften verknüpft sind, werden bei der Eigenschaftsheraufstufung in das UTC-Format konvertiert. Nicht zum Textteil gehörige Teile werden unverändert in die Ausgabenachricht kopiert.

Hinweis

Die Pipelinekomponente des XML-Disassemblers erzwingt derzeit die Konvertierung aller Datetime-Eigenschaften in das UTC-Format, bevor diese den Nachrichtenspeicher erreichen. BizTalk Server verwendet intern einen SQL-datetime-Typ, der keine Informationen über die Zeitzone enthält. Wenn Sie eine Eigenschaft datetime in einer Orchestrierung generieren und anschließend versuchen, diese für die Korrelation mit nachfolgenden Nachrichten zu verwenden, funktioniert dies ggf. nicht ordnungsgemäß. Dies liegt daran, dass die Pipelinekomponente des XML-Disassemblers diese bei der Antwort in das UTC-Format konvertiert, und Microsoft SQL Server verfügt über keine Möglichkeit, die Uhrzeitfelder der ursprünglichen Nachricht und der Antwort als identisch zu erkennen. Zu ähnlichen Diskrepanzen kann es kommen, wenn Sie Daten der Nachrichtenereignis- und Dienstinstanzüberwachung anzeigen.

Informationen zum Konfigurieren der Xml Disassembler-Pipelinekomponente finden Sie unter Konfigurieren der Xml-Disassembler-Pipelinekomponente.

In diesem Abschnitt