<oXygen/> XML Editor User Guide |
XInclude est un standard pour assembler des instances XML dans un autre document XML via l'inclusion. Il permet de créer dynamiquement des grands documents à partir de documents XML plus petits sans avoir à dupliquer physiquement le contenu des petits fichiers dans le fichier principal. L'avantage d'utiliser XInclude est que, contrairement à la méthode des entités, chaque document assemblé peut contenir une Document Type Declaration (DocType Decl.). Cela signifie que chaque fichier peut être une instance XML valide et peut être indépendamment validé. Cela signifie aussi que le document principal dans lequel sont incluses les plus petites instances peut être validé sans avoir à retirer ou mettre en commentaire la DocType Decl. comme c'est le cas avec les entités externes. Cela rend XInclude plus pratique et efficace pour gérer des instances XML qui doivent être à la fois des documents indépendants et des parties d'un document plus important.
Le principal usage de XInclude est pour les frameworks orientés document comme les manuels et les pages web. L'utilisation de XInclude permet aux auteurs et aux gestionnaires de contenu de gérer le contenu de façon modulaire comme on le fait avec les langages de programmation orientée objet comme Java, C++ ou C#.
Les avantages d'une documentation modulaire sont notamment : les unités de contenu réutilisables, plusieurs fichiers plus petits plus aisés à éditer, un meilleur suivi des versions et la possibilité de travailler à plusieurs auteurs.
Voici un exemple de fichier chaptire qui est inclus dans un fichier livre en utilisant XInclude.
Fichier chapitre introduction.xml:
<?xml version="1.0"?> <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> <chapter id="introduction"> <title>Getting Started</title> <section id="installing-oxygen"> ... </section> </chapter>
Fichier principal du livre :
La DocType Decl. définit une entité qui fait référence à un fichier contenant les informations pour ajouter le namespace xi à certains éléments définis par la DTD Docbook.
L'attribut href de l'élément xi:include spécifie que le fichier
introduction.xml
va remplacer l'élément xi:include
quand le document est traité.
Si le fichier introduction.xml
ne peut être trouvé,
la moulinette va utiliser la valeur de l'élément xi:fallback - un message
pour FIXME.
Le support de XInclude est par défaut désactivé dans <oXygen/>. Vous pouvez l'activer en utilisant dans
, l'entrée . Une fois activé, <oXygen/> pourra valider et transformer les documents comprenant du contenu XInclus.