Freigeben über


Eigenschaftsschemas

In Microsoft BizTalk Server ermöglichen höhergestufte Eigenschaften verschiedenen BizTalk Server Komponenten den Zugriff auf wichtige Datenelemente, die in diesem Kontext als distinguished Fields und Eigenschaftenfelder bezeichnet werden, die in einer instance Nachricht eingehen, ohne wissen zu müssen, wie sie in der Nachricht selbst gesucht werden sollen. Für verschiedene Nachrichtentypen können Sie bestimmen, welche Datenelemente auf eine sichtbarere Ebene höher gestuft werden müssen. Je nach dem, auf welche Weise diese Felder höher gestuft werden sollen, müssen Sie möglicherweise ein zugeordnetes Eigenschaftsschema erstellen und definieren.

Hinweis

Sich wiederholende Elemente/Attribute können nicht höher gestuft werden.

Der Zugriff auf gekennzeichnete Felder ist nur in Orchestrierungen möglich und erfordert nicht die Erstellung eines entsprechenden Eigenschaftsschemas. Wenn Sie innerhalb einer Orchestrierung nur auf höher gestufte Nachrichtendaten zugreifen müssen, können Sie die Daten als ein oder mehrere gekennzeichnete Felder höher stufen.

Auf Eigenschaftenfelder kann aus den verschiedenen BizTalk Server-Komponenten (darunter auch Pipelines und Orchestrierungen) zugegriffen werden. Eigenschaftenfelder können auch zum Weiterleiten von Nachrichten verwendet werden. Wenn Sie außerhalb von Orchestrierungen auf höher gestufte Nachrichtendaten zugreifen müssen, müssen Sie mindestens ein Eigenschaftsschema erstellen, um die höher zu stufenden Daten zu beschreiben.

Ein Eigenschaftsschema ist ein besonderes Schema, das Sie einem Nachrichtenschema zuordnen. Es wird verwendet, um bestimmte Werte aus einer Instanznachricht in den Nachrichtenkontext höher zu stufen. Die Eigenschaftsheraufstufung bietet einen zentralisierten Mechanismus für das Herausfiltern wichtiger Informationen (nach Ihrer Definition) aus einer Instanznachricht. Diese Informationen werden dann für BizTalk Server-Komponenten, die die Nachricht beim Durchlaufen durch BizTalk Server bearbeiten, leichter zugänglich gemacht.

Übersicht über das Erstellen von Eigenschaftenschemas

Mit dem Feature "Schnelle Heraufstufung" von BizTalk Server können Sie automatisch ein standardmäßiges Eigenschaftsschema erstellen. Dies ist die einfachste Methode zum Erstellen des Eigenschaftsschemas, mit dem Eigenschaftenfelder höher gestuft werden. Weitere Informationen zum Ausführen von Schnellaktionen finden Sie unter Kopieren von Daten in den Nachrichtenkontext als Eigenschaftenfelder.

Sie können auch ein neues Eigenschaftenschema erstellen. Wenn ein BizTalk-Projekt geöffnet ist, wählen Sie das BizTalk-Projekt aus, klicken Sie mit der rechten Maustaste darauf, und wählen Sie Hinzufügen, klicken Sie auf Neues Element und dann auf Schema.

Hinweis

  • Wenn ein Eigenschaftsschema zu einem Nachrichtenschema zugeordnet wird, müssen sich beide im selben BizTalk-Projekt befinden. Die Trennung eines Eigenschaftsschemas von seinem zugeordneten Nachrichtenschema in unterschiedlichen BizTalk-Projekten wird nicht unterstützt.

  • Wenn zwei Eigenschaftsschemas mit demselben Namespace vorhanden sind, werden die Schemas zur Laufzeit nicht ordnungsgemäß aufgelöst, auch wenn sie in verschiedenen Assemblys definiert sind. In diesem Fall wird zur Laufzeit ein Routingfehler gemeldet.

Distinguished fields and property fields

Es gibt zwei Arten von Eigenschaftsaufstufung: Distinguished Fields und Eigenschaftenfelder. Der letztere verwendet Eigenschaftsschemas. Im BizTalk-Editor verwalten Sie beide Arten von Eigenschaftenaufstufung mithilfe des Dialogfelds Eigenschaften höher heraufstufen , auf das Sie mithilfe der Eigenschaft Eigenschaften höherstufen des Knotens Schema zugreifen.

Hinweis

  • Wenn Sie Werte höher stufen möchten, müssen Sie einige Einschränkungen beachten. Weitere Informationen finden Sie in der Tabelle unter Höherstufen von Eigenschaften.

  • Gekennzeichnete Felder werden in Filterausdrücken nicht angezeigt. Hier werden nur Eigenschaftenfelder angezeigt.

Eigenschaftsschemas sind im Vergleich zu Nachrichtenschemas einfach strukturiert. In der Schemastruktur dürfen Sie Feldelementknoten nur als direkte untergeordnete Knoten des Schemaknotens einfügen, wodurch eine Struktur erstellt wird, die zwei Ebenen tief ist. In den meisten Fällen legen Sie die Eigenschaften der Field-Elementknoten wie bei Feldelementknoten fest, die in einem Nachrichtenschema angezeigt werden. Sie können hierbei nur einfache XSD-Typen verwenden.

Wichtig

Ein Schema, das von einem anderen Schema verwendet wird, sollten Sie nicht umbenennen. Dazu gehören auch Eigenschaftsschemas, die bereits höher gestuft wurden. Im Falle einer Umbenennung kann das verwendete Schema das andere Schema nicht finden, da der enthaltene Name nicht mehr korrekt ist.

Die Eigenschaft Schema-Basiseigenschaft ist für Field-Elementknoten eindeutig, wie sie in Eigenschaftenschemas angezeigt werden. Diese Eigenschaft ist standardmäßig leer, kann aber entweder auf MessageDataPropertyBase oder MessageContextPropertyBase festgelegt werden, was dazu führt, dass dem fieldInfo-Anmerkungselement ein propSchFieldBase-Attribut mit einem oder einem anderen dieser Werte hinzugefügt wird.

Wenn das propSchFieldBase-Attribut auf MessageDataPropertyBase festgelegt ist, bedeutet dies, dass der Wert der heraufgestuften Eigenschaft Daten in der Nachricht entspricht, z. B. dem Wert eines Felds. Wenn das propSchFieldBase-Attribut auf MessageContextPropertyBase festgelegt ist, bedeutet dies, dass der Wert der heraufgestuften Eigenschaft möglicherweise von einer anderen Stelle stammt, z. B. einem Umschlag, oder dass er von einer Pipelinekomponente festgelegt wird.

Field Element-Knoten in Eigenschaftenschemas verfügen auch über eine Eigenschaft namens Vertrauliche Informationen, die bei Festlegung auf Ja verhindert, dass der entsprechende Wert in BizTalk Explorer- und Nachrichtenereignis- und Dienst-instance-Nachverfolgung sichtbar ist, wodurch seine vertrauliche Natur beibehalten wird. Weitere Informationen finden Sie unter Vertrauliche Informationen in der Referenz zu Benutzeroberflächen und API-Namespace für Entwickler .

Das folgende Beispiel für XSD-Sprache (XML-Schemadefinition) in einem Eigenschaftsschema enthält eine Anmerkung, die dem Schemaelement zugeordnet ist, das dieses Schema als Eigenschaftsschema identifiziert (schema_type="Eigenschaft"). Es enthält auch drei Feldelementknoten unterhalb des Schemaknotens . Der erste Field Element-Knoten mit dem Namen PromProp1 verfügt nicht über einen Wert, der für seine Eigenschaft Schema Base-Eigenschaft definiert ist, aber für die beiden letzten Field Element-Knoten ist diese Eigenschaft auf MessageDataPropertyBase bzw . MessageContextPropertyBase festgelegt.

<?xml version="1.0" encoding="utf-16" ?>   
<xs:schema xmlns="http://BizTalk_Server_Project1.PropertySchema1"  
           xmlns:b="http://schemas.microsoft.com/BizTalk/2003"  
           targetNamespace="http://BizTalk_Server_Project1.PropertySchema1"  
           xmlns:xs="http://www.w3.org/2001/XMLSchema">  
    <xs:annotation>  
       <xs:appinfo>  
  
        </xs:appinfo>  
    </xs:annotation>  
    <xs:element name="" type="xs:string">  
        <xs:annotation>  
            <xs:appinfo>  
  
            </xs:appinfo>  
        </xs:annotation>  
    </xs:element>  
    <xs:element name="" type="xs:string">  
        <xs:annotation>  
            <xs:appinfo>  
  
            </xs:appinfo>  
        </xs:annotation>  
    </xs:element>  
    <xs:element name="" type="xs:string">  
        <xs:annotation>  
            <xs:appinfo>  
  
            </xs:appinfo>  
        </xs:annotation>  
    </xs:element>  
</xs:schema>  
  

Weitere Informationen

Verschiedene Typen von BizTalk-Schemas