Maison  >  Article  >  développement back-end  >  Exemple de code pour savoir comment transformer XML via XSLT

Exemple de code pour savoir comment transformer XML via XSLT

黄舟
黄舟original
2017-03-30 14:02:041520parcourir

Introduction

Abréviation de formations. XSLT est similaire au CSS en HTML, mais est plus puissant que CSS. Selon la spécification W3C

, XSLT a d'abord été conçu pour aider à convertir des documents XML en d'autres documents.

Cependant, avec l'approfondissement de l'application, XSLT n'est pas seulement utilisé pour convertir du XML en HTML ou en d'autres formats de document, mais est devenu un langage utilisé pour convertir la structure des documents XML. Les

éléments et attributs

de XSLT fournissent des déclarations pour le traitement des données XML. Vous pouvez utiliser la combinaison organique de ces deux méthodes.

La transformation XSLT 1.0 nécessite deux fichiers d'opération (document source XML et fichier de feuille de style XSLT) pour générer un document résultat.

Dans la nouvelle norme XSLT 2.0, il est permis de combiner les deux en un seul.

XSLT peut faire correspondre chaque élément et ses attributs avec HTML ou XHTML, obtenant ainsi l'affichage et la sortie corrects du contenu du document.

Une feuille de style XSLT est un document XML correct et valide qui suit le format des règles XML, et son extension est .xsl.

La syntaxe d'utilisation des feuilles de style XSLT dans les documents XML est la suivante :

2 Application de la conversion XML via XSLT

Cet exemple applique le style extensible XSLT pour convertir le fichier XML est converti en fichiers dans d'autres formats, puis sorti.

<?xml-stylesheet type="text/xsl" href="XSL样式表路径"?>
Cet exemple convertit XML via XSLT, et le résultat correspond aux données du fichier XML après la conversion du style XSLT.

Faites d'abord une déclaration XML et spécifiez le document comme document XML.

Notez que la feuille de style XSLT elle-même est un document XML, elle est donc également conforme aux règles des documents XML.

Déclarez ensuite la feuille de style XSLT et déclarez le préfixe de l'espace de noms XSLT (xsl:stylesheet).

Il existe deux manières d'écrire le préfixe de l'espace de noms XSLT : xsl:stylesheet et xsl:transform.

Sa signification et sa fonction sont exactement les mêmes, sauf que la première est plus couramment utilisée. Spécifiez l'espace de noms XSLT via l'attribut xmlns:xsl.

Définissez ensuite les règles du modèle, qui sont encapsulées à l'aide de l'élément xsl:template. L'attribut Math spécifie un modèle qui décrit à quelle entrée correspond la règle.

Enfin, le document XML est converti.

Trois codes

1. Le code pour créer le fichier cdcatalog.xsl est le suivant :

2. Le code pour créer le cdcatalog.xml est le suivant : suit :

Quatre résultats en cours
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td>
<xsl:value-of select="title"/>
</td>
<td>
<xsl:value-of select="artist"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
<cd>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<country>UK</country>
<company>CBS Records</company>
<price>9.90</price>
<year>1988</year>
</cd>
</catalog>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn