Visualizzazione dei risultati da 1 a 3 su 3

Discussione: XSL ordinare output

  1. #1

    XSL ordinare output

    ciao a tutti
    devo ordinare, un maniera particolare, l'output per questo file xml
    codice:
    <?xml version='1.0' encoding='ISO-8859-1' standalone='no' ?>
    <ricerca>
     <documento dnome='doc1'>
        <tag tname='t1'>
           <match>1</match>
        </tag>
        <tag tname='t2'>
           <match>1</match>
        </tag>
         <tag tname='t3'>
           <match>1</match>
        </tag>
    </documento>
    <documento dnome='doc2'>
        <tag tname='t1'>
           <match>0</match>
        </tag>
        <tag tname='t2'>
           <match>1</match>
        </tag>
             <tag tname='t3'>
           <match>0</match>
        </tag>
    </documento>
    <documento dnome='doc3'>
        <tag tname='t1'>
           <match>1</match>
        </tag>
        <tag tname='t2'>
           <match>0</match>
        </tag>
        <tag tname='t3'>
           <match>1</match>
        </tag>
    </documento>
     <documento dnome='doc4'>
        <tag tname='t1'>
           <match>0</match>
        </tag>
        <tag tname='t2'>
           <match>0</match>
        </tag>
         <tag tname='t3'>
           <match>0</match>
        </tag>
    </documento>
     <documento dnome='doc5'>
        <tag tname='t1'>
           <match>1</match>
        </tag>
        <tag tname='t2'>
           <match>1</match>
        </tag>
         <tag tname='t3'>
           <match>0</match>
        </tag>
    </documento>
     <documento dnome='doc6'>
        <tag tname='t1'>
           <match>0</match>
        </tag>
        <tag tname='t2'>
           <match>0</match>
        </tag>
         <tag tname='t3'>
           <match>1</match>
        </tag>
    </documento>
     <documento dnome='doc7'>
        <tag tname='t1'>
           <match>1</match>
        </tag>
        <tag tname='t2'>
           <match>1</match>
        </tag>
         <tag tname='t3'>
           <match>1</match>
        </tag>
    </documento>
    </ricerca>
    viene creato dinamicamente, quindi il numero dei ducumeti e dei tag puo' anche essere diverso.

    ho creato un sembplice xsl
    codice:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html"/>
      <xsl:template match="/">
        <html>
          <body>
            <xsl:apply-templates select="ricerca/documento"/>
          </body>
        </html>
      </xsl:template>
      <xsl:template match="documento">
        <h1>
          <xsl:value-of select="."/>
          <xsl:value-of select="@dnome"/>
        </h1>
      </xsl:template>
    </xsl:stylesheet>
    il quale mi crea il sequente output.
    codice:
    1 1 1 doc1
    0 1 0 doc2
    1 0 1 doc3
    0 0 0 doc4
    1 1 0 doc5
    0 0 1 doc6
    1 1 1 doc7
    io vorrei che l'output venisse fatto in modo tale che le occorrenze di tutti 1 venissero stampate in mezzo, mentre man mano che gli 1 sono meno, venissero stampati verso gli esterni.
    se i tag sono tutti 0, non stampo il nome del ducumento.
    quindi l'output da me richiesto dovrebbe essere questo:
    codice:
    0 1 0 doc2
    1 0 1 doc3
    1 1 1 doc1
    1 1 1 doc7
    1 1 0 doc5
    0 0 1 doc6
    come posso fare???
    grazie

  2. #2
    io sto cominciando ad usare xsl e per ordinare l'output sto usando questo metodo :

    nel body della pagina faccio una serie di chiamate del tipo :
    <xsl:template match="/">
    <xsl:call-template name="doc1" />
    <xsl:call-template name="doc2" />
    <xsl:call-template name="doc3" />
    </xsl:template>


    <xsl:template name="doc1">
    parser per doc1
    </xsl:template>

    <xsl:template name="doc2">
    parser per doc1
    </xsl:template>

    <xsl:template name="doc3">
    parser per doc1
    </xsl:template>


    ....vedi un po!!!

    Buon sbattimento!

    Duckerized

  3. #3
    si, anch'io pensavo di fare una cosa simile, ma poi ho abbandonatyo l'idea, siccome il numero dei documenti sara' variabile(come quello dei tag), vistoche il file xmllo genoro dinamicamente.

    e' un po' un casino....

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.