Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211

    xml -> xsl = xhtml, problemi di encoding

    Signori, sto sbattendo la testa contro questo problema:

    ho un file xml, voglio cavarne una pagina xhtml che si validi correttamente presso il w3c, possibilmente xhtml strict.
    Ho dei problemi a visualizzare le lettere accentate e gli spazi bianchi (nbsp).
    Qualcuno ha una ricetta a base di output method ed encoding che serva allo scopo?

    Grazie
    ghinz

  2. #2
    Che problema? Al posto di à usi & agrave?

  3. #3
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Il problema è che devo usare come output method "xml", se no "html" mi toglie gli slash di chiusura: ad es
    me lo fa diventare
    e il validatore del w3c dice giustamente che non è xhtml valido.

    Detto questo, se uso & agrave; il processore xsl lo toglie (probabilmente perchè non è una entità riconosciuta in xml).

    Per & nbsp; ho letto in giro che bisogna usare & #160; poi però non so come visualizzare la varie lettere accentate

    Sto cercando di capire come devo intestare il foglio di stile e che entità devo usare... il tutto in modo che il w3c sia d'accordo!
    ghinz

  4. #4
    usa il tidy
    Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina.

    E’ diviso in varie sezioni che spaziano passando dalla gastronomia, al benessere, alla vita notturna ed ai vari negozi da visitare. Le diverse sezioni renderanno più semplice la consultazione ai visitatori.

  5. #5
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Dopo diverse prove...
    uso l'encoding UTF-8, quindi nei fogli di stile non bisogna mettere & nbsp; bensì il codice del carattere & #160; (oppure in hex & #x00a0; ). Questo vale per tutte le entità che normalmente si utilizzano in html, quindi & agrave; diventa & #x00e0; etc.. etc..

    se uso questo metodo:
    codice:
    <xsl:output method="xml"
    omit-xml-declaration="yes"
    encoding="UTF-8"
    indent="yes" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
    doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
    media-type="text/html" />
    La trasformazione genera un file XHTML valido, ma alcuni javascript che ho messo per facilitare la navigazione non vanno piu... o meglio non vanno in explorer 6 (nel 5.5 si), mentre in mozilla vanno sempre.

    Per fare andare i javascript devo usare il metodo di output html:
    codice:
    <xsl:output
    method="html"
    omit-xml-declaration="yes"
    encoding="UTF-8" indent="yes"
    doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
    doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
    media-type="text/html" />
    Così javascript funzia, ma non ottengo più un file XHTML, bensì una via di mezzo tra xhtml e html standard.. e il validatore s'incazza...

    ghinz

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il fatto che qualche JS non funzioni sotto IE6, puo` essere un baco di IE.
    Ma ci saranno sicuramente le patch (di IE) oppure dei trucchi per aggirare l'ostacolo.

    Dovresti postare i pezzi di JS che non vanno, meglio a questo punto se nel forum Scripting.

    Qualsiasi encoding usi, il &amp;nbsp; deve funzionare.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Originariamente inviato da Mich_
    Il fatto che qualche JS non funzioni sotto IE6, puo` essere un baco di IE.
    Ma ci saranno sicuramente le patch (di IE) oppure dei trucchi per aggirare l'ostacolo.
    Dovresti postare i pezzi di JS che non vanno, meglio a questo punto se nel forum Scripting.
    Che bella notizia che mi dai...
    Faro qualche ricerca in tal senso... anche se obbligare un utente ad caricare delle patch per vedere il mio sito non mi sembra la soluzione ideale...
    Qualsiasi encoding usi, il &amp;nbsp; deve funzionare.
    Non mi risulta, nel senso che ho fatto delle prove ed il processore xsl mi segava di brutto il &amp;nbsp;
    Se nel mio xsl inserisco un &amp;nbsp; e poi faccio la trasformazione usando come encoding UTF-8 e output-method html (o anche xml), il processore xsl semplicemente mi sega l'entità... Ho dovuto sostituire tutti i &amp;nbsp; con &amp;#x00a0;
    Magari sbaglio qualcosa...

    Grazie dell'aiuto intanto
    ghinz

  8. #8
    omit-xml-declaration="yes"

    a che serve? :master:
    "0 è tutto finito. 1 è solo l'inizio"
    HO IL CERTIFICATO DI RESISTENZA.

  9. #9
    Utente di HTML.it L'avatar di Polley
    Registrato dal
    Jan 2005
    Messaggi
    696
    Originariamente inviato da max161
    omit-xml-declaration="yes"

    a che serve? :master:
    Toglie la dichiarazione dell'xml o intestazione, dipende da come la chiama ogni utente.

    Cosi:
    omit-xml-declaration="no"
    ottieni:
    <?xml version="1.0" encodin="" ?>
    <root>
    </root>

    Cosi:
    omit-xml-declaration="yes"
    ottieni:
    <root>
    </root>

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 © 2025 vBulletin Solutions, Inc. All rights reserved.