Werken met XML

Laatst bijgewerkt op 7 mrt. 2022

Adobe InDesign CS5 is een van de vele toepassingen waarmee u XML kunt maken en gebruiken. Nadat u de inhoud van een InDesign-bestand hebt voorzien van labels, kunt u het bestand opslaan en exporteren als XML en de XML-inhoud vervolgens opnieuw gebruiken in een ander InDesign-bestand of in een andere applicatie. U kunt ook een XML-bestand in InDesign importeren en de XML-gegevens in InDesign weergeven en opmaken op een manier die precies aansluit op uw wensen.

Over XML

XML (Extensible Markup Language) is een manier om data in een bestand te hergebruiken of het proces te automatiseren waarbij data in het ene bestand wordt vervangen door data uit een ander bestand. XML maakt gebruik van tags om delen van een bestand te beschrijven, bijvoorbeeld een kop of een verhaal. Deze tags markeren data zodat deze kan worden opgeslagen in een XML-bestand en op de juiste manier kan worden verwerkt wanneer het wordt geëxporteerd naar andere bestanden. Beschouw XML als een vertaalmechanisme voor data. XML-tags voorzien tekst en andere content in een bestand van labels, zodat toepassingen de gegevens kunnen herkennen en presenteren.

Uitbreidbare taal

XML wordt beschouwd als een uitbreidbare taal omdat gebruikers hun eigen XML-labels kunnen maken: een label voor elk type informatie dat ze opnieuw willen gebruiken. XML-labels bevatten geen informatie over hoe gegevens moeten worden weergegeven of opgemaakt. XML-labels zijn uitsluitende bestemd voor het identificeren van inhoud.

In InCopy kunt u bijvoorbeeld een label Kop1 maken en dit label toewijzen aan elke kop op het eerste niveau in een document. Nadat het document is opgeslagen als een XML-bestand, kan de inhoud van Kop1 door elke toepassing die XML kan lezen, worden geïmporteerd en gebruikt als een webpagina, gedrukte catalogus, inventaris, prijslijst of databasetabel.

InDesign is een van de vele toepassingen waarmee u XML kunt maken en gebruiken. Nadat u de inhoud van een InDesign-bestand hebt voorzien van labels, kunt u het bestand opslaan en exporteren als XML en de XML-inhoud vervolgens opnieuw gebruiken in een ander InDesign-bestand of in een andere applicatie. U kunt ook een XML-bestand in InDesign importeren en de XML-gegevens in InDesign weergeven en opmaken op een manier die precies aansluit op uw wensen.

Adobe InCopy is een van de vele toepassingen waarmee u XML kunt maken en gebruiken. Nadat u de inhoud van een InCopy-bestand hebt voorzien van labels, kunt u het bestand opslaan en exporteren als XML en de XML-inhoud vervolgens opnieuw gebruiken in een ander InCopy- of InDesign-bestand of in een andere toepassing.

Ook als u geen ervaring hebt met XML, kunt u in InCopy XML-labels maken en delen van een document van labels voorzien. InCopy voert de XML-programmering achter de schermen uit en maakt de XML wanneer u een document exporteert in XML-indeling.

Notitie

Verwar XML-labels niet met gelabelde tekst van InCopy. Bekijk voor meer informatie over gelabelde tekst (een andere methode voor het exporteren en importeren van InCopy-inhoud) het bestand Tagged Text op www.adobe.com/go/learn_id_taggedtext_cs5_nl (dit is een PDF-bestand).

XML-gegevensstructuur

Elementen zijn de bouwstenen van XML-gegevens. Een element bestaat uit gegevens die zijn gelabeld. In XML-bestanden worden elementen genest in andere elementen, zodat een hiërarchische structuur van de gegevens ontstaat.

De structuur van XML-gegevens wordt weergegeven in het deelvenster Structuur. In dit deelvenster ziet u de hiërarchie en de volgorde van elementen. In de XML-structuur worden onderliggende elementen opgenomen in bovenliggende elementen, die zelf ook weer onderliggende elementen kunnen zijn. Of, gezien in omgekeerde richting, bovenliggende elementen bevatten onderliggende elementen en deze onderliggende elementen kunnen zelf bovenliggende elementen zijn voor andere onderliggende elementen.

Zo ziet u in de onderstaande afbeelding het element chapter dat verschillende recipe-elementen bevat (en dus boven die elementen staat). Elk recipe-element is zelf weer het bovenliggende element voor de elementen recipename, ingredients, instructions, notes en servings. Alle elementen zijn opgenomen in het element Root, dat bovenaan in het deelvenster Structuur staat.

XML in het deelvenster Structuur van InDesign (links) en geplaatst in de layout (rechts)

Zo ziet u in de onderstaande afbeelding een element chapter dat verschillende recipe-elementen bevat (en dus boven die elementen staat). Het element recipe is zelf weer het bovenliggende element voor de elementen recipename en ingredients. Alle elementen zijn opgenomen in het element Story, dat altijd bovenaan in het deelvenster Structuur staat.

InCopy-document opgemaakt met XML-labels

XML-tools

In InCopy kunt u werken met XML-inhoud in het deelvenster Structuur en het deelvenster Labels. In het deelvenster Structuur worden alle elementen in het document en de hiërarchische structuur weergegeven. Om elk element te identificeren, worden het elementlabel en een pictogram voor het type inhoud weergegeven in InCopy. Bovendien kunnen in het deelvenster Structuur de eerste paar woorden tekst in een element, een zogenaamd tekstfragment, worden weergegeven. Dit mag niet worden verward met fragmentbestanden, waarin objecten worden opgeslagen voor hergebruik.

Structuurvenster (links) en Tagspaneel (rechts)

A. Driehoekje voor het uitvouwen of samenvouwen van elementen B. Element (geplaatst in layout) C. Element (niet in layout) D. Tekstfragment E. Element-tag 

Structuurvenster (links) en Tagspaneel (rechts)

A. Driehoekje voor het uitvouwen of samenvouwen van elementen B. Element geplaatst in layout C. Tekstfragment D. Elementtag 

In het deelvenster Structuur kunt u XML-elementen weergeven, bewerken en beheren. U kunt in het deelvenster Structuur op verschillende manieren werken met XML. Als u bijvoorbeeld XML-inhoud in de layout wilt plaatsen, kunt u elementen uit het deelvenster Structuur rechtstreeks naar een pagina slepen. U kunt het deelvenster Structuur ook gebruiken om de hiërarchie van de elementen aan te passen. In het deelvenster kunt u elementen, kenmerken, opmerkingen en verwerkingsinstructies toevoegen.

Het deelvenster Labels bevat elementlabels. U kunt labels importeren, exporteren, toevoegen, verwijderen en hernoemen. Met het deelvenster Labels kunt u elementlabels toepassen op inhoud die u wilt exporteren naar XML. U kunt ook labels toepassen op kaders voordat u XML-inhoud in de kaders gaat importeren.

Het deelvenster Labels bevat elementlabels. U kunt labels importeren, exporteren, toevoegen, verwijderen en hernoemen. Met het deelvenster Labels kunt u elementlabels toepassen op inhoud die u wilt exporteren naar XML.

Over DTD-bestanden

Als u XML-gegevens wilt delen met anderen, moet u het eens worden over een standaardset labelnamen en elementkenmerken, zodat de labels door ieder groepslid op dezelfde wijze worden gebruikt en toegepast. DTD-bestanden (Document Type Definition-bestanden) vormen één methode voor het omgaan met gedeelde XML-gegevens.

Een DTD-bestand bevat een set elementen en kenmerken die door de groepsleden kunnen worden gebruikt. Het bestand bevat ook vastgestelde regels voor de posities van elementen in de structurele hiërarchie. In het DTD-bestand is bijvoorbeeld vastgelegd dat het element Titel ondergeschikt moet zijn aan het element Artikel, omdat de titel onderdeel vormt van het artikel. Als u vervolgens een label koppelt aan een titel, maar niet aan het artikel waarin de titel voorkomt, wordt het element Titel door het DTD-bestand gemarkeerd als ongeldig. Met een DTD-bestand kunt u zoeken naar structurele fouten in een InDesign-bestand en deze fouten markeren. Dit proces wordt valideren genoemd.

Als u een DTD-bestand wilt gebruiken (als uw document nog geen DTD-bestand bevat), moet u het DTD-bestand in uw document laden. Hierdoor worden de elementnamen van het DTD-bestand naar het deelvenster Labels geïmporteerd. De andere groepsleden die hetzelfde DTD-bestand hebben geladen, beschikken over dezelfde elementnamen, waardoor iedereen gebruikmaakt van dezelfde elementen. De geïmporteerde elementen worden vergrendeld, zodat ze niet kunnen worden verwijderd of hernoemd, tenzij het DTD-bestand uit het document wordt verwijderd.

Hoewel u geen DTD-bestand kunt importeren in InCopy, zijn de DTD-bestanden die u importeert in InDesign, beschikbaar wanneer u het artikel bewerkt in InCopy. U kunt het DTD-bestand weergeven in InCopy en artikelen valideren met dit bestand om te controleren of de labels op de juiste wijze zijn toegepast.

DTD-bestand geopend voor weergave in InCopy

XML-regelsets

XML-regelsets zijn reeksen instructies geschreven in een scripttaal (zoals JavaScript of AppleScript) die XML-gegevens evalueren en bepaalde acties ondernemen als die gegevens aan bepaalde voorwaarden voldoen.Elke regel bestaat uit ten minste één voorwaarde en ten minste één actie. Een regel evalueert de XML-gegevens aan de hand van de voorwaarden en onderneemt de juiste actie als aan een voorwaarde wordt voldaan.Met een XML-regel kunt u bijvoorbeeld opgeven dat wanneer het element Alinea onder het element Subkop staat (een voorwaarde), een bepaalde stijl wordt toegepast (een handeling). U kunt ook opgeven dat wanneer het element Product wordt weergegeven (een voorwaarde), een nieuw kader wordt gemaakt en een productafbeelding wordt geïmporteerd (handelingen). XML-regels zijn een middel om dynamisch lay-outs te maken en op te maken op basis van XML.

XML-bestanden voorbereiden voor K4- of InCopy-workflows

Als u bestanden met XML-labels wilt voorbereiden voor gebruik binnen de K4- of InDesign/InCopy-workflowomgeving, moet u mogelijk de wijze aanpassen waarop u de structuur voorbereidt en XML in InDesign-bestanden importeert.

Er zijn twee methoden voor het importeren van XML in InDesign: samenvoegen en toevoegen. Bij samenvoegen kan de bestaande structuur worden vervangen, terwijl bij toevoegen de bestaande structuur wordt aangevuld. In beide gevallen is het belangrijk dat het basiselement niet aan een tekstkader is gekoppeld. Gebruik het standaardelement genaamd "Root" of wijzig zo nodig de naam van het element op basis van uw huidige workflow of vereisten. Zorg er daarbij opnieuw voor dat het element niet aan een tekstkader is gekoppeld.

Neem contact op met uw systeembeheerder voor meer informatie over het gebruik van XML in K4- of InCopy-workflows.