Visualizzazione dei risultati da 1 a 10 su 10

Discussione: collegamenti xml

  1. #1
    Utente di HTML.it L'avatar di 140483
    Registrato dal
    Jul 2005
    Messaggi
    45

    collegamenti xml

    salve a tutti..

    sono alle prime armi con xml..
    so che con questo linguaggio è possibile, tramite i tag, creare dei collegamenti tali da poter visualizzare in un file html determinate informazioni che si trovano in un file xml..

    qualcuno potrebbe spiegarmi come si fa?
    se ci sono esempi pratici da vedere sarebbe meglio..

    grazie a tutti!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    56
    ciao,

    effettivamente tramite sxlt si possono prelevare i valori degli elementi e anche degli attributi di un file xml e rappresentarli anche all’interno di tag html

    fra l'altro è un linguaggio molto semplice
    ma spiegarti come si fa non è facile

    cosa devi fare? Forse ti posso aiutare

    saluti
    Retorno

  3. #3
    Utente di HTML.it L'avatar di 140483
    Registrato dal
    Jul 2005
    Messaggi
    45
    in pratica: io ho un testo che ho suddiviso in "paragrafi" e a ogni paragrafo ho assegnato un tag..
    poi ho un elenco di domande le cui risposte corrispondono a uno dei tag che ho assegnato..

    esempio:

    <nome>Mario</nome>
    <cognome>Rossi</Rossi>

    Faq: Come ti chiami?

    Risp: Mario

    spero possa aiutarti a capire..

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    56
    Si capisco,
    ma mi servono altre indicazioni

    ad esempio,

    hai creato il file xml e poi hai creato il file xsl collegando il foglio di stile al file xml?
    poi hai creato i template all’interno dei file xsl?

    mi fai vedere un pò di codice?

    perché se non si va in ordine è inutile che ti scrivo il codice che poi non funziona...

    ad esempio si hai fatto tutto questo dovresti inserire solo:

    Come ti chiami?<xsl:value-of select="------"/>
    fra le virgole devi solo inserire il path

    poi se sono diversi i nomi, cioè è un elenco, fai un ciclo:

    <xsl:for-each select="------">
    Come ti chiami?<xsl:value-of select="------"/>
    </xsl:for-each>

    cosi prelevi i valori dell’elemento o dell’attributo.

    ciao retorno

  5. #5
    Utente di HTML.it L'avatar di 140483
    Registrato dal
    Jul 2005
    Messaggi
    45
    Non ho ancora scritto il codice..

    volevo prima cercare di capire come funzionava il meccanismo..

    partendo da zero..come si procede?

    grazie mille!

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    56
    Capisco
    quindi forse è meglio che ti do un’infarinatura generale, poi ti conviene per approfondire andare su qualche guida di xml.

    prima di tutto ti consiglierei di scaricarti qualche programma di scrittura xml (guarda un po’ nella zona download forse trovi qualcuno free)

    Poi ti fai un albero con gli elementi e gli attributi che ti servono i crei un file dtd del tipo:
    (t’illustro questo che avevo gia compilato)

    <!ELEMENT elenco (libri+)>
    <!ATTLIST elenco biblioteca CDATA #REQUIRED>
    <!ELEMENT libri (titolo,autore,descrizione)>
    <!ATTLIST libri lingua CDATA #IMPLIED >
    <!ELEMENT titolo (#PCDATA)>
    <!ELEMENT autore (#PCDATA)>
    <!ELEMENT descrizione (#PCDATA)>

    nella guida trovi le specifiche per compilarlo ma non è difficile, <!ELEMENT serve a dichiarare gli elementi ed <!ATTLIST gli attributi (in alternativa puoi dichiarare il file xml come standalone ma la struttura è meno flessibile)

    poi se il programma che stai utilizzando te lo permette crei un file xml a partire del dtd, se no ti tocca compilarlo a mano, esempio:

    <?xml version="1.0" encoding="iso-8859-1"?>

    <!DOCTYPE elenco SYSTEM "prova.dtd">

    <elenco biblioteca="Biblioteca1">

    <libri lingua="Italiano”>
    <titolo>titolo1</titolo>
    <autore>autore1</autore>
    <descrizione>descrizione1</descrizione>
    </libri>

    <libri lingua="Italiano">
    <titolo>titolo2</titolo>
    <autore>autore2</autore>
    <descrizione>descrizione2</descrizione>
    </libri>

    </elenco>

    dopo crei il file xsl, e lo richiami dal file xml con questo codice inserito dopo il <!DOCTYPE
    <?xml-stylesheet type="text/xsl" href="prova.xsl"?>

    il file xsl, ti serve ad inserire i dati nei tag html e anche a formattarli con css.
    T’inserisco un esempio e poi te lo commento brevemente:

    <?xml version="1.0" encoding="iso-8859-1"?>
    <xsl:stylesheet
    version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns="http://www.w3.org/TR/REC-html40">


    <xsl:template match="/">
    <html>
    <head>

    <style>
    table {
    border:1 solid black;
    background-color: blue;
    font-family: Arial, Verdana, Tahoma;
    font-size: 12px;
    color: black;
    }
    th {
    font-family: Arial, Verdana, Tahoma;
    font-weight: bold;
    font-size: 14px;
    color:blue;
    background-color: white;
    }
    td{
    text-align: center;
    }
    </style>
    </head>
    <body>

    <xsl:value-of select="elenco/@biblioteca"/>


    <table>
    <tr><td>Elenco libri</td></tr>
    <tr>
    <th>Titolo</th>
    <th>Autore</th>
    <th>Descrizione</th>
    <th>Lingua</th>
    <xsl:apply-templates select="elenco/libri"/>
    </tr>
    </table>
    </body>
    </html>
    </xsl:template>


    <xsl:template match="elenco/libri">
    <tr>
    <td>
    <xsl:value-of select="titolo"/>
    </td>
    <td>
    <xsl:value-of select="autore"/>
    </td>
    <td>
    <xsl:value-of select="descrizione"/>
    </td>
    <td>
    <xsl:value-of select="@lingua"/>
    </td>
    </tr>
    </xsl:template>

    </xsl:stylesheet>

    cosi crei una tabella con gli elementi titolo, autore, descrizione e l’attributo biblioteca (attributo d’elenco) lingua (attributo di libri)

    l’albero sarebbe:
    elenco (è il root)
    libri (è l’elemento figlio di root)
    titolo, autore, descrizione (elementi figli di libri)

    buh spero di esserti stata d’aiuto, ti avverto però che lo xslt viene letto solo di un parser xml che non è presente in tutti i browser (ti servirebbe forse un linguaggio server tipo php – e su questo non ti posso aiutare) ad ogni modo Explorer di solito lo fa vedere.

    In bocca al lupo.
    Retorno

  7. #7
    Utente di HTML.it L'avatar di 140483
    Registrato dal
    Jul 2005
    Messaggi
    45
    grazie mille davvero..
    leggendo mi sembra di aver capito..proverò..
    grazie ancora!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    56
    niente figurati

    fammi sapere se hai ancora qualche dubbio

    ciau
    Retorno

  9. #9
    Utente di HTML.it L'avatar di 140483
    Registrato dal
    Jul 2005
    Messaggi
    45

    ciao,
    ho provato a usare il codice che mi hai scritto per vedere un po' come funziona..
    ma non capisco


  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    56
    ... eh non è facile capire se non hai le basi.

    Prova a leggere la guida base xml qui su html.it

    poi se non sei più preciso su cosa non capisci non posso aiutarti
    cosa non funziona?

    ciau
    Retorno

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.