Notizie: scarica ora l'ultima versione disponibile di Thunderbird!

Autore Topic: Firefox e il caricamento di file esterni xml in un file xml  (Letto 3835 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Firefox e il caricamento di file esterni xml in un file xml
« Risposta #15 il: 25 Maggio 2011 11:58:24 »
Se ho capito bene come funziona, la trasformazione viene parzialmente applicata, quello che non sembra funzionare è il codice nel xls:for-each che Firefox sembra ignorare.


Ignora:

Edit: ora vedo che c'è un bel 'è' e non mi sembra tu dichiari il charset nell'header (come  fanno nellesempio su HTML.it), prova a togliere quel carattere (o ora non posso provare), magari è una stupidata, però solitamente IE ignora i charset al contrario degli altri browser.
« Ultima modifica: 25 Maggio 2011 14:17:29 da gialloporpora »

Offline klades

  • Moderatore
  • Post: 5788
    • http://www.nic-nac-project.org/~kaosmos
Re: Firefox e il caricamento di file esterni xml in un file xml
« Risposta #16 il: 25 Maggio 2011 14:16:48 »

Offline sicanof

  • Post: 8
Re: Firefox e il caricamento di file esterni xml in un file xml
« Risposta #17 il: 25 Maggio 2011 16:30:20 »
Vorrei dare qualche risposta anche se ancora non ho potuto fare tutte le prove.

Per l'esempio proposto da @PROMETEO a questo indirizzo:
http://www.abbeyworkshop.com/howto/xslt/document/index.html

ho fatto la prova e funziona, anche se questo caricamento fiene fatto
durante la trasformazione e non prima. Quindi si tratterà di incastrare
bene le varie parti del documento.
E comunque è una strada alternativa all'INCLUDE.

Ancora non ho fatto una prova come l'esempio mostrato a questo indirizzo:
http://xml.silmaril.ie/includes.html

Sarebbe interessante. Già lo uso per caricare file xslt in altri file xslt.

Infine, sto vedendo anche ciò che si può fare usando XLink e XPointer.


Sapevo che il problema fosse già noto anche se non avevo ancora visto una discussione
così nutrita come quella indicata da @Klades.

A @Gialloporpora vorrei dire che ho fatto tutte le prove che suggerisce, ma niente da fare.
D'altra parte vedo che anche lui ha cancellato il rilievo fatto in precedenza.

Io continuo con le mie prove. Se ho qualche novità, avverto.

Grazie. Ciao.



Offline prometeo

  • Moderatore
  • Post: 2538
    • https://www.tenutamontescosso.it/
Re: Firefox e il caricamento di file esterni xml in un file xml
« Risposta #18 il: 27 Maggio 2011 12:03:34 »
Scusa sicanof, ma hai letto la parte in grassetto della citazione nel mio messaggio?
Hai fatto la prova se rimuovendo la parte dichiarativa xml l'include funziona così com'é?
Ciao, Giacomo.

Offline sicanof

  • Post: 8
Re: Firefox e il caricamento di file esterni xml in un file xml
« Risposta #19 il: 27 Maggio 2011 16:28:36 »
Ciao Prometeo.

Ho fatto le prove che mi hai detto, ma in quel modo non sono riuscito
a risolvere il problema con firefox.

Comunque il mio problema l'ho risolto con un esempio tratto da un link
che mi avevi inviato l'altroieri. La soluzione funziona sia con firefox che
con Opera, ma non con Chrome.

Invio qui di seguito quattro file in cui illustro la mia soluzione:

Codice: [Seleziona]
1. file dei contenuti da caricare:   contenuto.xml

---

<?xml version="1.0" encoding="UTF-8"?>

<iniziocontenuto>
    <titolo>La mia prima pagina</titolo>
    <testo>
    Questa la home page del sito ABCDEF.xyz Questa la home page del sito ABCDEF.xyz Questa la home
       Questa la home page del sito ABCDEF.xyz Questa la home page del sito ABCDEF.xyz Questa la home
       Questa la home page del sito ABCDEF.xyz Questa la home page del sito ABCDEF.xyz Questa la home
       Questa la home page del sito ABCDEF.xyz Questa la home page del sito ABCDEF.xyz Questa la home
    </testo>
</iniziocontenuto>

---

2. file di avvio:  index.xml

---

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="index.xslt"?>

<!-- file di avvio: richiama il file di trasformazione index.xslt -->

<xxx>

</xxx>

---

3.  file di trasformazione (contiene le soluzioni): index.xslt

---

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
<xsl:output method="html" indent="yes"
    doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
    doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" />

<!-- Carica il contenuto del file 'contenuto.xml' tramite l'istruzione: -->
<!-- document('contenuto.xml')  e lo scorre da /iniziocontenuto in giu' -->
<!-- Processa il tag: titolo -->
<!-- Quindi richiama il template 'include_testo' presente nel file 'include_testo.xslt' -->
<!-- Il file 'include_testo.xslt' viene caricato tramite l'istruzione include prima della chiusura dello script -->


<xsl:template match="/">

        <html xmlns="http://www.w3.org/1999/xhtml">

           <head>
           <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
           <title></title>
           </head>
          
           <body>
          
               <xsl:for-each select="document('contenuto.xml')/iniziocontenuto">
                    <h1><xsl:value-of select="titolo" /></h1>
                    <xsl:call-template name="include_testo"/>
               </xsl:for-each>
          
           </body>
          
        </html>

</xsl:template>

<xsl:include href="include_testo.xslt"/>

</xsl:stylesheet>

---

4. secondo file di trasformazione richiamato dal primo file di trasformazione: include_testo.xslt

---

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<!-- Processa il tag testo -->

<xsl:template name="include_testo">

     <p style="color:red"><xsl:value-of select="testo" /></p>

</xsl:template>

</xsl:stylesheet>

---

Spero che questi file possano spiegare bene la mia soluzione.
Posso sentirmi abbastanza soddisfatto.

Grazie. Ciao.
« Ultima modifica: 27 Maggio 2011 16:41:34 da michro »

0 Utenti e 1 Visitatore stanno visualizzando questo topic.