I Sie möchten den Link erstellen, indem Sie den Ordnernamen zusammen mit dem Dateinamen mit dem Hypen-Symbol verwenden. Wenn mein Ordnername Artikel/item.xsl mit,Sie müssen den Dateinamen erstellen, indem Sie den Ordnernamen und den Titel mithilfe von XSLT verwenden
Mein Eingang XML ist:
<Settings>
<code>MGT</code>
<url>http://tneb.com</url>
</Settings>
<page/>
<counter>
<enabled>true</enabled>
<text>Management Plan</text>
</counter>
XSL ich als (item.xsl) verwenden im Ordnernamen (/ Titel):
<xsl:stylesheet version="3.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:json="http://json.org/" xmlns:mf="http://example.com/mf" exclude-result-prefixes="#all">
<xsl:template match="Settings">
"Settings": {
<xsl:apply-templates/>
},
</xsl:template>
<xsl:template match="code">
"code": "<xsl:apply-templates/>",
</xsl:template>
<xsl:template match="url">
"url": "<xsl:apply-templates/>",
</xsl:template>
<xsl:template match="page"/>
<xsl:template match="counter">
"counter": {
<xsl:apply-templates/>
},
</xsl:template>
<xsl:template match="enabled">
"enabled": "<xsl:apply-templates/>",
</xsl:template>
<xsl:template match="text">
"text": "<xsl:apply-templates/>" ,
</xsl:template>
</xsl:stylesheet>
Json Output ich habe wie:
"Settings": {
"code": "MGT",
"url": "http://tneb.com",
},
"counter": {
"enabled": "true",
"text": "Management Plan ",
},
Aber ich brauche zwischen den Einstellungen und Zähler Ordner wie wie unten ein pDF-Link zu erstellen:
"Settings": {
"code": "MGT",
"url": "http://tneb.com",
},
pdf: 'files/items-Management-Plan.pdf',
"counter": {
"enabled": "true",
"text": "Management Plan ",
},
Ich brauche den PDF-Link, dass Elemente erstellen Ordnernamen an und -Management-Plan bezeichnet die Textnamen aus der Eingabedatei. Dazwischen füllt sich der Platz des Textnamens mit dem Hypensymbol in der Ausgabe.
Bitte geben Sie einen Vorschlag dazu. Danke im Voraus.
Ihre Das erste Snippet hat ein nicht passendes ' trackingSettings>', also ist es kein XML. Diese zweite "JSON" -Ausgabe hat einen nicht angegebenen "pdf" -Eigenschaftsnamen, also ist es nicht JSON. Wie beim Erstellen von JSON haben Sie "version =" 3.0 "' in Ihrem Stylesheet verwendet. Wenn Sie diese Version wirklich verwenden, gibt es bessere Möglichkeiten, JSON zu erstellen, da XSLT/XPath 3.0/3.1 Maps und Arrays haben und diese als JSON serialisieren können . –
Jetzt habe ich @MartinHonnen bearbeitet. Ist dies möglich, indem XSLT für die normale Konvertierung verwendet wird, abgesehen von der json-Ausgabe? – User501
Betrachten Sie das übergeordnete Element, das die Elemente 'Settings' und' counter' enthält. Dafür könnte man eine Vorlage schreiben, die z.B. ' ," pdf ":" Dateien/Objekte-Management-Plan.pdf ", '. –