URIs von ungeparsten Entities

www.altova.com Alle erweitern/reduzieren Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  SPS-Datei: Zusätzliche Funktionen >

URIs von ungeparsten Entities

Wenn Sie eine DTD verwenden und darin eine ungeparste Entity deklariert haben, können Sie die mit dieser Entity verknüpfte URI für Bild- und Hyperlinkziele im SPS verwenden. Dies ist eine nützliche Methode, wenn Sie dieselbe URI mehrmals im SPS verwenden wollen. Diese Funktion bedient sich der XSLT-Funktion unparsed-entity-uri, um die URI der ungeparsten Entity von der DTD an die Ausgabe zu übergeben und steht daher nur in den Ausgabedokumenten (HTML, RTF, PDF und Word 2007+) zur Verfügung und nicht in der Authentic-Ansicht.

 

Bei Verwendung dieser Funktion müssen die DTD, das XML-Dokument und das SPS folgendermaßen geändert werden:

 

1.In der DTD, (i) müssen die ungeparsten Entities deklariert werden, wobei (i) URI und (ii) die Notation (anhand der StyleVision den Ressourcentyp der Entity ermittelt)  angegeben werden müssen.
2.Im XML-Dokument muss die ungeparste Entity referenziert werden, indem die Namen der erforderlichen ungeparsten Entities angegeben werden.
3.Im SPS können mit Hilfe von  Entities Bilder und Hyperlinks referenziert werden. Dazu werden die entsprechenden dynamischen Node-Werte als ungeparste Entities korrekt aufgerufen.

 

Deklarieren und Referenzieren von ungeparsten Entities im XML-Dokumentinhalt

Unten sehen Sie einen Ausschnitt aus einer Liste eines XML-Dokuments. Es enthält eine interne DTD-Untermenge, in der zwei ungeparste Entities, eine mit einer GIF Notation (Verweis auf ein GIF-Bild) und die andere mit einer LNK Notation (Verweis auf einen Hyperlink), deklariert sind. Die Nodes img/@src und link/@href im XML-Code referenzieren die ungeparsten Entities durch Angabe ihrer Namen.

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE document SYSTEM "UEURIDoc.dtd" [

<!ENTITY Picture SYSTEM "nanonull.gif" NDATA GIF>

<!ENTITY AltovaURI SYSTEM "http://www.altova.com" NDATA LNK>

]>

<document>

   <header>Example of How to Use Unparsed Entity URIs</header>

   <para>...</para>

   <img src="Picture"/>

   <link href="AltovaURI">Link to the Altova Website.</link>

</document>

 

SPS-Bilder und Hyperlinks, die ungeparste Entities verwenden

Bilder und Hyperlinks im SPS, die ungeparste Entity URIs referenzieren, werden folgendermaßen verwendet:

 

1.Fügen Sie das Bild oder den Hyperlink über das Menü Einfügen ein.
2.Wählen Sie im "Bearbeiten"-Dialogfeld des Objekts die Eigenschaften auf dem Register "Dynamisch" aus (Abbildung unten) und geben Sie einen XPath-Ausdruck ein, der den Node, der den Namen der ungeparsten Entities enthält, auswählt. In dem Beispiel des XML-Dokuments oben wäre dies der Node //img/@src bzw. //link/@href.

 

dlg_insert_image_unparsedEntity

 

3.Aktivieren Sie anschließend am unteren Rand des Dialogfelds das Kontrollkästchen "Als ungeparste Entity für die XSLT-Transformation behandeln", damit der Inhalt des ausgewählten Node als ungeparste Entity gelesen wird; wenn eine ungeparste Entity dieses Namens deklariert ist, wird die mit der ungeparsten Entity verknüpfte URI zum Auffinden der Ressource (Bild oder Hyperlink) verwendet.

 

Während der Verarbeitung des Stylesheet wird der Name der Entity durch die mit dem Entity-Namen verknüpfte URI ersetzt.

 

Anmerkung: Wenn die URI eine relative URI ist, erweitert der XSLT-Prozessor diese zu einer absoluten URI, indem er die Basis-URI der DTD darauf anwendet. Wenn also die ungeparste Entity mit der relativen URI "nanonull.gif" verknüpft ist, dann wird diese URI zum Pfad file:///c:/someFolder/nanonull.gif erweitert, wobei sich die DTD im Ordner someFolder befindet.

 

 

 


© 2019 Altova GmbH