2012-04-02 19 views

Antwort

6

In XSLT 2.0 gibt es zwei relevante Funktionen: base-uri() und document-uri().

In XSLT 1.0 müssen Sie die URL oder den Dateinamen als Parameter an das Stylesheet übergeben, es sei denn, der Prozessor bietet zu diesem Zweck Erweiterungsfunktionen an.

+0

Wie es zu machen? Meine Benutzer öffnen XML im Browser. Wie man so macht, dass Parameter es automatisch übertragen wurde? –

+0

@Bush: Sie können den Entwurf ändern, so dass der Benutzer nicht direkt eine XML-Datei im Browser öffnet, aber ein Teil des Javascript-Codes ruft die Umwandlung auf und übergibt ihr die URL der Datei als Parameter. –

0

Es gibt keine Möglichkeit, den Namen oder den Pfad der Datei zu erhalten, die von XSL transformiert wird. Aufgrund der Natur von XSL stammen die zu transformierenden Daten möglicherweise nicht aus einer Datei, sondern können nur einen Datenstrom transformieren.

+0

Danke für die Antwort –

2

Mit Xalan gibt es die folgende, nicht-offizielle Funktion:

<xsl:value-of select="document-location()"/> 

ich es auf einer Transformation von einer lokalen Datei verwenden und es gibt mir den absoluten Pfad der XML-Datei umgewandelt werden. Ich habe diese Funktion beim Durchsuchen des Xalan-Codes gefunden, sie gehört zur Klasse FuncDoclocation.

+0

Vielen Dank! funktioniert wie Charme! – Krivda

Verwandte Themen