2010-10-07 5 views
0

Voici le code XML d'entrée:xml ne pas montrer dans le navigateur

<?xml version="1.0" encoding="ISO-8859-1"?> 
<?xml-stylesheet type="text/xsl" href="value-of.xsl"?> 
<MemeberDetails> 
    <Employee> 
     <Name>Madhu</Name> 
     <Sex>Male</Sex> 
     <DOB>2/10/1982</DOB> 
     <Address>JP Nagar ,Bangalore</Address> 
     <MemberId>094631</MemberId> 
     <Designation>SSE</Designation> 
     <Department>SG</Department> 
    </Employee> 
</MemeberDetails> 

où, je veux parler fichier value-of.xsl à l'aide HREF xml ci-dessus. et ce fichier réside dans le même dossier.

est inférieure à la valeur fichier of.xslt:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 
    <xsl:output indent="yes"/> 
    <xsl:template match="/"> 
     <CGIEmployeeDetails> 
      <PersonalDetails> 
       <Name> 
        <xsl:value-of select="/MemeberDetails/Employee/Name"/> 
       </Name> 
       <Gender> 
        <xsl:value-of select="/MemeberDetails/Employee/Sex"/> 
       </Gender> 
       <ResidentialAddress> 
        <xsl:value-of select="/MemeberDetails/Employee/Address"/> 
       </ResidentialAddress> 
      </PersonalDetails> 
      <WorkingDetails> 
       <PSAID> 
        <xsl:value-of select="//MemberId"/> 
       </PSAID> 
       <Designation> 
        <xsl:value-of select="/MemeberDetails/Employee/Designation"/> 
       </Designation> 
       <Department> 
        <xsl:value-of select="/MemeberDetails/Employee/Department"/> 
       </Department> 
      </WorkingDetails> 
     </CGIEmployeeDetails> 
    </xsl:template> 
</xsl:stylesheet> 

Quand je cours au-dessus de xml dans le navigateur, la sortie se traduira sous forme de texte, mais pas au format XML. Si j'utilise un éditeur comme Oxygen et transforme le même fichier xml, la sortie sera XML.

Je ne comprends pas pourquoi le navigateur ne parvient pas à transformer une sortie XML? Y a-t-il quelque chose à voir avec le navigateur?

+0

Quel navigateur et la version utilisez-vous? – Kane

+0

Mozilla Firefox et IE8 –

Répondre

4

Dans les navigateurs, la vue "format XML" est principalement une feuille de style ajoutant une coloration syntaxique et des gestionnaires d'événements Emacscript (afficher et masquer les nœuds chlids, etc.). Par conséquent, lorsque le document contient une feuille de style XSLT PI, les navigateurs n'exécutent pas cette feuille de style "format XML", mais ils essaient de restituer le résultat de la transformation. Cette intention n'est pas la même pour chaque navigateur. Une seule chose est garantie: si c'est du XHTML ou du HTML, le rendu est tel quel. Si le résultat de la transformation n'est pas correct XHTML ou HTML (texte brut, autre vocabulaire XML), le mécanisme de rendu varie d'un à l'autre: par exemple, Chrome est le seul à ne rien afficher pour le vocabulaire XML inconnu. de toute façon (rendu seulement le texte).

0

Utilisez-vous Internet Explorer? C'est le seul navigateur que je connaisse qui ignore complètement votre feuille de style XSL

+0

Oui, j'utilise IE8 et Firefox aussi. Donc, il n'y a aucun moyen que je peux voir la sortie en XML dans le navigateur autre que l'utilisation de l'IDE? –

+0

Firefox devrait fonctionner très bien. Si vous ne voyez pas la bonne sortie, cela signifie qu'il y a une erreur - vérifiez que le fichier est accessible. Si vous voulez que cela fonctionne dans IE8, vous devrez regarder dans une solution côté serveur faisant la transformation. – Razor

+0

je ne vois aucune erreur dans la transformation. Je peux voir la sortie appropriée dans l'éditeur d'oxygène, merci. –

0

@Alejandro a fourni une bonne explication.

En utilisant IE, vous pouvez voir le résultat de la transformation XSLT par un clic droit sur la fenêtre Internet Explorer et en sélectionnant « Afficher la source »

+0

En réalité, IE ne le fait pas. Vous devez avoir l'ancien plug-in "Transformation Viewer" ou utiliser la barre des développeurs. D'autres navigateurs ont l'élément "Inspect" intégré, mais encore une fois pour Chrome, il ne montre rien avec un vocabulaire inconnu. –

+0

@Alejandro: Je l'ai fait hier. J'ai IE8. –

+0

L'option "Afficher la source" devrait vous montrer le document XML entrant avant la transformation (la source). Dans IE8, vous pouvez utiliser "Developer Tools" intégré pour voir le résultat de la transformation DOM. Je viens de tester avec mon [site] XML/XSLT (http://www.aranedabienesraices.com.ar) –

Questions connexes