Relative Pfade für Kontextstammelemente

Ein Ausdruck in der Sprache XPath (XML Path Language) wird in einem Instanzdokument verwendet, um von einem Element auf ein anderes Element oder von einem Element auf einen Messwert (z. B. auf einen Messwertausdruck) zu verweisen. Wenn der XPath-Ausdruck auf einen Messwert verweist, müssen Sie einen relativen Pfad verwenden.

Der Datentyp 'xsd:string' wird verwendet, wenn ein Verweis von einem Element auf ein anderes in einem XML-Instanzdokument erforderlich ist. Im folgenden XML-Schema-Snippet wird beispielsweise die erforderliche Struktur für einen Zähler definiert:
<xsd:complexType name="CounterType" >
  <xsd:complexContent>
    <xsd:extension base="mon:BaseMetricType">
      <xsd:choice minOccurs="0" maxOccurs="unbounded">
        <xsd:element name="incrementedWhen" type="mon:ReferenceType" 
              minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element name="decrementedWhen" type="mon:ReferenceType" 
              minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element name="setToZeroWhen" type="mon:ReferenceType" 
              minOccurs="0" maxOccurs="unbounded"/>
      </xsd:choice>		
    </xsd:extension>
  </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="ReferenceType">
   <xsd:attribute name="ref" type="xsd:string" use="required" />
</xsd:complexType>
Das folgende XML-Snippet definiert einen Zähler mit der oben angegebenen Struktur:
<counter
displayName="Counter" id="Counter" type="xsd:integer">
  	<incrementedWhen
ref="/SimpleClaim/MDM/RootMonitoringContext/ExpressClaimActivity/ActivityStartedTransition"/>
	<incrementedWhen ref="ActivityForceRetriedTransition"/>
</counter>

Jedes Element <incrementedWhen> im Zähler <counter> enthält ein Attribut ref mit einem XPath-Ausdruck, der in einen im XML-Dokument definierten Auslöser aufgelöst werden kann. In diesem XML-Schema können absolute Pfadausdrücke (die mit einem Schrägstrich (/) beginnen) als Pfad von ID-Werten interpretiert werden, die beim Stammelement des Dokuments beginnen. Die Vorgaben für die Eindeutigkeit der ID-Attribute (siehe Vorgaben für die Eindeutigkeit von IDs) stellen sicher, dass die Pfadausdrücke in genau ein Zielobjekt aufgelöst werden.

Beachten Sie den Unterschied zwischen der Verwendung eines XPath-Ausdrucks, um einen anderen Teil eines Monitormodells zu referenzieren (wie im vorherigen Absatz beschreiben), und der Verwendung eines XPath-Ausdrucks, um einen Messwert zu referenzieren (z. B. innerhalb eines Messwertausdrucks). Im ersten Fall werden absolute Pfade unterstützt, im zweiten jedoch nicht. Im zweiten Fall müssen relative Pfade verwendet werden, was folgenden Ausdruckstypen einschließt:
  • Messwert- und Schlüsselwertausdrücke
  • Berechnen eines wesentlichen Leistungsindikators (Key Performance Indicator, KPI) auf der Basis anderer KPIs oder benutzerdefinierter XPath-Funktionen
  • Ausdrücke zum Festlegen von Attributen für ausgehende Ereignisse
  • Spezifikation von Standardwerten
  • Korrelationsprädikate (boolesche Ausdrücke)
  • Eingehende und ausgehende Ereignisfilter (boolesche Ausdrücke)
  • Auslöserbedingungen (boolesche Ausdrücke)