Antworten auf deine Fragen:
Neues Thema erstellen

InDesign: XML-Import and Hyperlinks

M

m.bauer588

Guest

Hello,

Ich müsste eine Liste an Daten mit XML importieren. Das Format sieht vereinfacht wie folgt aus:

<list>
<line>
<postcode>1020</postcode>
<city>Wien</city>
<name>Hotel Meier *****</name>
<kat>Wellness</kat>
<url></url>
</line>

<line>
<postcode>9020</postcode>
<city>Klagenfurt</city>
<name>Hotel Karawankenhof ***</name>
<kat>Konferenz</kat>
<url></url>
</line>

<line>
<postcode>6020</postcode>
<city>Salzburg</city>
<name>Hotel Alpenblick ****</name>
<kat>Business</kat>
<url></url>
</line>
</list>



Die finale Liste sollte dann so aussehen:

1020 Wien (Wellness)
9020 Klagenfurt (Kongress)
etc.

Gibt es einen Weg den URL-Tag direkt als Linkziel für den NAME-Tag zu verwenden?

Da ich mehrere tausend Elemente benötige kommt händisches Anlegen nicht in frage! Ich hab auch schon gesucht und eine Möglichkeit mit Tagged Text gefunden - hierzu müsste ich aber vorab die XML-Datei mit einem Script parsen und dann in Tagged Text umwandeln. Das wäre besser als nichts aber immer doppelte Arbeit vor allem wenn sich was würdern würde.

Gibt es keinen Weg der nur mit XML funktioniert oder kann man XML und Tagged Text irgendwie kombinieren?

Vielen Dank für eure Tipps
 

Design & Layout

M

m.bauer588

Guest


Danke aber das hilft mir leider nicht ein Stück weiter... Ich darf keine URL-Spalte einzeigen allein schon darum weil die URLs teilweise sehr lang sind und dafür kein Platz ist. Daher muss ich die URL auf den Namen legen.

In dem Betrag geht es aber darum alles was mit http beginnt als URL zu erkennen, das Ende der URL automatisch zu finden und zu verlinken.
 

mobbytec

Aktives Mitglied

Verstehe...
Du könntest ein xslt stylesheet anlegen und es beim Import mit einbinden. Dafür ist kein Script nötig.
 
M

m.bauer588

Guest

mobbytec

Aktives Mitglied

Verkürztes Beispiel: Erstelle eine xsl-Datei:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:fmp="http://www.filemaker.com/fmpdsoresult"
    xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/"
    xmlns:aid5="http://ns.adobe.com/AdobeInDesign/5.0/" exclude-result-prefixes="fmp">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" />

    <xsl:template match="/list">
        <root>
            <line>
                <xsl:apply-templates/>
            </line>
        </root>
    </xsl:template>
    <xsl:template match="line">
        <url>
            <xsl:variable name="url">
                <xsl:apply-templates select="url" />
            </xsl:variable>
            <link href="{$url}">
                <xsl:apply-templates select="name" />
            </link>
        </url>
    </xsl:template>
</xsl:stylesheet>
Beim Import der XML-Datei in InDesign wähle unter dem Punkt XSLT anwenden diese XSL aus.
Lade dir die beiden Script-Dateien runter (Dank an an Matthias für diesen Beitrag)

Wie Du Scripte installierst: http://indesignscript.de/indesign-skript-installieren/
Danach das Script xml2hyper starten.
 
M

m.bauer588

Guest

Vielen Dank, werde es gleich mal testen...

Wie hast du das gelernt - die Doku bei Adobe ist ja nicht gerade übersichtlich oder sehr hilfreich. Gibt es da gute Bücher oder wie kann man sich da einarbeiten?
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.636
Beiträge
1.538.496
Mitglieder
67.559
Neuestes Mitglied
hanuta
Oben