Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    PROBLEMA XSLT con XML generato da word!

    Io ho un file XML generato da Microsoft Word 2003...
    vorrei poter applicare una trasformazione .xsl (xslt) per prendere solo certe informazioni del file xml in questione, solo che l'xml generato da word è molto complicato...come mi potrei comportare? Avete una soluzione in merito?

    Io per esempio ho provato a prendere solo il testo che si trova fra i tag <w:t> di <w:body>, ma non ho ottenuto i risultati aspettati....pensavo di ottenere un listato con tutti i w:t ed invece con questo codice mi ritrovo solo il primo nodo di w:t
    codice:
    <?xml version="1.0" encoding="UTF-8"?>    
    <xsl:stylesheet version="1.0" 
       xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
       xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
       xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
       xmlns:o="urn:schemas-microsoft-com:office:office">  
    
    
    <xsl:template match="/">
    <xsl:apply-templates select="//w:body"/>
    </xsl:template>
    
    <xsl:template match="*">
    <testo>
    <xsl:value-of select="//w:t"/>
    </testo>
    </xsl:template>
    
    </xsl:stylesheet>
    Spero qualcuno possa darmi una mano, o abbia qualsiasi soluzione da darmi...sono disperato!!!

  2. #2
    Sono riuscito grazie a questo codice a estrapolare w:t, anche se il mio problema è che dal body mi tira fuori anche altre cose che sono generate dalla creazione automatica dell'indice....

    codice:
    <?xml version="1.0" encoding="UTF-8"?>    
    <xsl:stylesheet version="1.0" 
       xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
       xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
       xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
       xmlns:o="urn:schemas-microsoft-com:office:office">  
    
    
    <xsl:template match="/">
    <xsl:apply-templates select="//w:body"/>
    </xsl:template>
    
    <xsl:template match="w:t">
    <xsl:value-of select=".">
    </xsl:value-of>
    </xsl:template>
    
    </xsl:stylesheet>
    Ora vorrei levare fuori anche tutti gli attributi, esiste un comando specifico?
    Ho provato con @*, ma mi da ERRORE....
    C'è qualcuno che almeno in questo caso possa aiutarmi???

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.