Je suis en train de transformer un fichier xml pour sortir un autre fichier xml, et j'ai besoin que l'attribut "compte" soit affiché de la même manière que ci-dessous. J'ai un tas de ces valeurs dans le fichier, la plupart ne fonctionnent pas.XSLT convertit mes attributs hexadécimaux en quelque chose d'autre, comment puis-je l'arrêter?
Pour les valeurs de compte comme 0x0406, la sortie est 0.0.06. Mais pour des valeurs comme 0x002d, il les laisse tranquilles et ils se présentent comme je le souhaite.
Des idées?
XML initial:
<?xml version="1.0" encoding="UTF-8"?>
...
<foo account="0x0406" other-stuff="blah" something-name="blah again"/>
...
Ceci est mon modèle xslt:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:user="http://some-internal-thing/user">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="yes"/>
...
<xsl:attribute name="account"><xsl:value-of select="@account"/></xsl:attribute>
...
Cela semble très étrange. XSLT doit toujours gérer les valeurs d'attribut en tant que chaînes de caractères à moins qu'il ne soit demandé de faire autre chose. Je ne pense pas que l'erreur soit dans la partie que vous avez collée. –
Cela ne semble pas correct, pouvez-vous nous donner un exemple complet (petit) et des instructions étape par étape pour reproduire ce résultat? – Dan
Veuillez également indiquer quelle implémentation XSLT vous utilisez. –