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

    domande xsl e problemino con: <xsl:for-each ..> + template

    Salve gente, mi sto incaponendo (lentamente) con xml + xsl e anche se per adesso più che altro mi fa perdere tempo anzichè risparmiarlo sono convinto sia una strada da percorrere.

    allora ho un problemino e qualche domanda (in fondo alla pagina)

    ################################################## #####
    - problemino:

    ho un xml con dei record che devo restituire in xhtml. al file xml collego un file xsl fatto apposta per html e un css.

    scrivo un esempio per semplificare:

    (file xml)
    ....
    <top>
    <link href="link.php">testo</link>
    <link href="link.php">testo</link>
    </top>
    ....

    i tag <link> sono un pò in tutto il documento XML, non solo nel nodo <top> d'esempio.
    dovendo ordinare i link di <top> in una lista ho pensato di fare così:

    (file xsl)
    ....
    <ul>
    <xsl:for-each select="giraz_xml/top">[*]
    <xsl:apply-templates select="top_logos"/>

    </xsl:for-each>[/list]
    ....


    il template che si attiva è qualcosa tipo:

    <xsl:template match="link">
    <xsl:element name="a">
    <xsl:attribute name="href">
    <xsl:value-of select="@href"/>
    </xsl:attribute>
    </xsl:element>
    </xsl:template>

    prevedendo che nel link possa avere ad esempio un immagine richiamo gli altri template.

    il problema è questo:
    mi aspetto di avere in uscita un codice del tipo

    <ul>[*]link[*]link[/list]

    ma con quel ciclo for-each.. invece mi sputa fuori qualcosa come

    <ul>[*]
    link
    link
    [/list]

    e cioè senza la ripetizione tag[*].
    non vorrei inserire i tag[*] nel template perchè mi sembra più giusto che sia indipendente dai tag di uscita.
    mm.. che mi dite?



    ################################################## #####
    - domande (ricchi premi per chi risponderà per primo

    1-
    i motori di ricerca con il sistema xml+xsl (presupponendo che la trasformazione sia fatta dal browser) vanno a cercare i meta tags nell'head del xsl?
    o meglio, in generale tutti i tags che mettevo nell'head dell'html li metto tranquillamente nel head del xsl o no??

    2-
    ho un db mysql e php. l'utente visita il sito
    lo mando alla pagina index.php ..giusto? (si/no)
    che mi produrrà un codice xml ..giusto? (si/no)
    quindi a ogni utente gli spedisco in pratica un testo formattato e dichiarato xml?
    (non voglio fare il parsing da php)
    poi farò uno o più come vari template del sito? o ne basta uno che prende in considerazione tutte le eventualità? o cosa?

    ..in pratica, cosa non ho capito?
    insomma qual è la procedura migliore per gestirsi fra db,xml,xsl e css?!?!?!?!?!?!?

    3-
    con xsl ho problemi a visualizzare nei diversi browser i caratteri come la C del copyright ed altri caratteri che solitamente mi bastava scivere come &agrave; o &copy; in html.
    ho letto che una soluzione è quella di dichiare delle ENTITY nel DOCTYPE e usare il formato ASCII del tipo &#260 ma non funziona del tutto.
    voi come fate?!



    scusatemi per il post lungo, spero possiate aiutarmi e che sia utile anche ad altri spaesati come me.

    grazie
    Riccardo

  2. #2

    Re: domande xsl e problemino con: <xsl:for-each ..> + template

    e cioè senza la ripetizione tag[*].
    non vorrei inserire i tag[*] nel template perchè mi sembra più giusto che sia indipendente dai tag di uscita.
    mm.. che mi dite?
    una delle cose che non capisco e' perche' vi complicate la vita con inutili apply-templates:
    codice:
    <xsl:for-each select="link">[*]<xsl:value-of select="testo" />
    </xsl:for-each>
    i motori di ricerca con il sistema xml+xsl (presupponendo che la trasformazione sia fatta dal browser) vanno a cercare i meta tags nell'head del xsl?
    o meglio, in generale tutti i tags che mettevo nell'head dell'html li metto tranquillamente nel head del xsl o no??
    bella domanda non so rispondere. non credo che il robot di google indicizzi i file XML trasformati. Credo che per lui siano dei files di testo e niente di piu'.

    (non voglio fare il parsing da php)
    è l'unica soluzione intelligente. non tutti i browser supportano correttamente le trasformate xsl

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.