Frage

Wie kann ich den Dateinamen erhalten xsl 1.0?

Ich habe versucht,

<xsl:value-of select="base-uri()" />

bekam aber "Fatal Error kann nicht Funktion finden: base-uri"

War es hilfreich?

Lösung

Es gibt keine solche XPath-Funktion, oder XSLT-Erweiterung XPath-Funktion dies in XSLT v1 / XPath v1 zu tun.

Es ist durchaus möglich, dass es keine Datei zu sein, und selbst wenn es keinen Grund für die XSLT-Engine, die Dateinamen zu haben (man denke an den Dateiinhalt in einen Puffer geladen, den Puffer in einem DOM-Parsing und dann vorbei am DOM an den XSLT-Prozessor).

Sie müssen die Dateinamen in den Prozessor zu übergeben als Parameter in der Transformation zur Verfügung stehen.

Andere Tipps

base-uri() ist eine Standard-XPath 2.0 Funktion , so dass, wenn XSLT 1.0 ausgeführt diese Funktion nicht verfügbar sein wird.

In XSLT 1.0 der Dateinamen (was?) Kann als Parameter für die Transformation übergeben werden.

Hinweis: , dass es nicht immer möglich ist, einen Dateinamen für ein Stylesheet oder für ein XML-Dokument zu erzeugen, -. Entweder oder beide können ohne zugehörige Datei im Speicher werden mit Wohnsitz

Es ist nicht klar von dem Problem, das Dateinamen erzeugt werden muss.

Hier ist, wie Dateinamen zu finden, in XPath 2.0 / XSLT 2.0 :

Der Dateiname des aktuellen Dokuments:

 base-uri()

Der Dateiname des aktuellen Sheet-Modul:

  base-uri(document(''))
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top