Standard-Transformationsprozess aktualisieren
Servigistics InService bietet Transformationsformatvorlagen, die eine Standard-Anpassungsformatvorlage enthalten. Es wird empfohlen, dass Sie die Anpassungsformatvorlage verwenden, um vorhandene Definitionen oder den vorhandenen Prozess zu ändern. Befolgen Sie diese Richtlinien, um die Anpassungsformatvorlage zu aktualisieren.
Die Transformationsformatvorlage jedes Datentyps umfasst ein Formatvorlagenfragment namens customizations.xsl. Nachfolgend sehen Sie den Teil der Formatvorlage, der zeigt, wie die Anpassungsformatvorlage in die Transformationsformatvorlage eingebettet wird:
<?xml version="1.0"?>
<!--
Stylesheet to perform OOTB transformation on a source xml
-->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:stl="http://www.enigma.com/Styling" xmlns:tmpl="http://www.ptc.com/2014/Template-Document"
extension-element-prefixes="stl" version="1.0">
<xsl:output indent="yes" method="xml" />
<!--
Customization specific code will go in the stylesheet included below.
-->
<xsl:include href="customizations.xsl"/>
...
</xsl:stylesheet>
|
|
Nehmen Sie keine Änderungen an der regulären Transformationsformatvorlage vor, da diese Datei überschrieben wird, wenn eine inkrementelle Aktualisierung erfolgt.
|
Standardmäßig ist customizations.xsl eine leere Formatvorlage. Der Anpassungszweig sollte eine angepasste Version der Formatvorlage und das XSLT-Prioritätskonstrukt verwenden, um die Transformation zu überschreiben oder zu ergänzen. Wenn eine Anpassung erfolgt und das Ausgabeformat geändert werden muss, müssen abhängige Dateien aktualisiert werden. Wenn die Teiletransformationsausgabe geändert wird, muss die teilespezifische Vorlage ebenfalls geändert werden, damit beide synchronisiert werden.
XSLT beinhaltet das Konzept von Prioritäten, sodass alle Übereinstimmungen mit einer vorhandenen Vorlage einfach überschrieben werden können, indem Sie einen äquivalenten Übereinstimmungsausdruck mit höherer Priorität bereitstellen. Wenn Sie beispielsweise nur die Verarbeitung dieses vorhandenen XSL-Codes anpassen möchten:
<xsl:template match="Metadata">
Um ihn zu überschreiben, würden Sie eine Vorlage wie folgende hinzufügen:
<xsl:template match="Metadata" priority="2">
In der angepassten Formatvorlage können Sie customizations.xsl modularisieren und jede beliebige Anzahl von zusätzlichen XSLT-Formatvorlagenfragmenten hinzufügen. In diesem Fall kann customizations.xsl einfach eine Reihe zusätzlicher xsl:include-Aussagen umfassen. Das Ergebnis dieser Einfügungen nach der Verarbeitung der Dateien durch die XSLT-Engine ist Folgendes: Die Vorlagenübereinstimmung mit dem höchsten Prioritätswert löst die Transformation aus. Alle anderen Übereinstimmungen für denselben Inhalt werden ignoriert.
Auf diese Weise können Sie alle Elemente in der vorhandenen Verarbeitung effizient überschreiben, beginnend mit dem Stamm des Dokuments, oder einfach selektiv einige spezifische Verarbeitungsvorgänge durchführen, wie das Ändern einer Eigenschaft/Wert-Paar-Zuordnung.
Eine weitere Anpassungskonvention in der Transformationsformatvorlage ist, bestimmte Property/@token-Werte in kommagetrennten Zeichenfolgen hinzuzufügen. Diese sind in XSLT-Variablen gespeichert, um Opt-in- oder Opt-out-Funktionalität zu unterstützen (wie die Auswahl der zu propagierenden Soft-Attribute).