in
La comunità italiana dedicata a Sviluppatori e Architetti IT delle piattaforme Windows

xml e xsl treeview

Ultimo messaggio ricevuto il 04-01-2006 11.37 da theFool. 3 risposta(e).
Pagina 1 di 1 (4 elemento/i)
Ordina messaggi: Precedente Successivo
  • 02-01-2006 23.07

    xml e xsl treeview

    Ciao.
    Devo sviluppare un applicativo in vb.net 2005 che ha varie sezioni:video,pdf,audio ecc...
    Ho pensato di gestire il tutto con un sistema di sottodirectory:
    -Applicativo
    ---video
    ------training.avi
    ------training2.avi
    ---audio  
    ------training1.mp3
    ------training2.mp3
    ---pdf
    .
    .
    .
    ecc...
    dentro ogni directory volevo inserire un file xml che mi serve per descrivere il contenuto della directory e per le visualizzazioni nell'applicativo.
    Nell'applicativo volevo gestire una treeview  caricata con una trasformazione xsl dall'xml descrittore.Chiaramente avrò vari file xsl :uno per i video , uno per gli audio ecc....
    Per quanto riguarda i dati potrei fare la stessa cosa.

    In pratica l'applicativo avrà una treeview e un tab control con varie tabpages per i contenuti(video,pdf,audio eccc..)
    Ogni volta che cambio contenuto eseguo una trasformazione xsl e vado a generare i dati per i controlli.

    Cosa ne pensate? è forse una pippa mentale?
    Per aggiungere dati(e quindi modificare l'xml descrittore) come fareste?
    sempre in xml puro o appoggiarsi ad un dataset?
    e è possibile bindare controlli all'xml risultante?
    insomma volevo sentire un vostro parere prima di iniziare.
    Grazie.

    • Log
  • 04-01-2006 9.53 In risposta a

    • theFool
    • Utente Top 10
    • Registrato il 13-07-2005
    • Piacenza
    • Messaggi 127

    Idea [I] Re: xml e xsl treeview

    Ciao,
    forse è meglio mantenere un unico file indice, il quale referenzi i singoli files di dati (avi, mp3, pdf, ecc.); questi ultimi possono essere posti in una sola cartella, o ripartiti per tipologia (audio, video, documenti, ecc.) in singole cartelle.

    Per esempio:

    <?xml version="1.0"?>
    <info>
     <video path="c:\my-app\video">
      <item id="video1.avi" desc="abcd"/>
      <item id="video2.mpg" desc="efgh"/>
     </video>
     <audio path="c:\my-app\audio">
      <item id="audio1.wav" desc="ilmn"/>
      <item id="audio2.mp3" desc="opqr"/>
     </audio>
     <documenti path="c:\my-app\docs">
      <item id="documento.doc" desc="stuvz"/>
      <item id="documento.xls" desc="123"/>
      <item id="documento.ppt" desc="456"/>
     </documenti>
    </info>

    (nota come in questo esempio i nomi completi dei files siano ottenuti concatenando l'attributo id dei nodi item con l'attributo path del nodo genitore.)

    In questo modo hai il vantaggio di acquisire/processare/modificare un solo documento xml.

    Per quanto riguarda invece l'aggiornamento dei dati, ti consiglierei la via del DOM (molto più rapida e semplice che la mappatura tramite dataset).

    Spero che queste poche righe possano esserti utili.
    Ciao!

    P.S.: non è corretto definire questa tua idea come una pippa mentale... piuttosto io la chiamerei un'ottima intuizione! Smile [:)]

    • Log
  • 04-01-2006 10.30 In risposta a

    Re: xml e xsl treeview

    grazie theFool
    ha un senso creare un dtd per controllare che non manchino dati o che il tutto sia regolare?
    se si',come lo faresti?scusa se è troppo generico questa domanda,ma mi sto addentrando solo adesso nell'xml e ho magari una qualche idea ma non una panoramica ampia e approfondita.
    ciao.

    • Log
  • 04-01-2006 11.37 In risposta a

    • theFool
    • Utente Top 10
    • Registrato il 13-07-2005
    • Piacenza
    • Messaggi 127

    Re: xml e xsl treeview

    L'uso di una DTD per controllare che non manchino dati è corretto, tuttavia non necessario (soprattutto se prevedi di apportare le modifiche da codice); ad ogni modo:

    <?xml version="1.0"?>
    <!DOCTYPE info [
      <!ELEMENT info (video,audio,documenti)>
      <!ELEMENT video (item*)>
      <!ELEMENT audio (item*)>
      <!ELEMENT documenti (item*)>
      <!ELEMENT item EMPTY>
      <!ATTLIST video path CDATA #REQUIRED>
      <!ATTLIST audio path CDATA #REQUIRED>
      <!ATTLIST documenti path CDATA #REQUIRED>
      <!ATTLIST item id CDATA #REQUIRED>
      <!ATTLIST item desc CDATA #REQUIRED>
    ]>
    <info>
     <video path="c:\my-app\video">
      <item id="video1.avi" desc="abcd"/>
      <item id="video2.mpg" desc="efgh"/>
     </video>
     <audio path="c:\my-app\audio">
      <item id="audio1.wav" desc="ilmn"/>
      <item id="audio2.mp3" desc="opqr"/>
     </audio>
     <documenti path="c:\my-app\docs">
      <item id="documento.doc" desc="stuvz"/>
      <item id="documento.xls" desc="123"/>
      <item id="documento.ppt" desc="456"/>
     </documenti>
    </info>

    Sicuramente per motivi di completezza/sicurezza è sempre meglio prevedere una DTD (interna al documento, come in questo caso, oppure esterna); in alternativa ci si potrebbe anche appoggiare ad uno schema xml: ma poichè ci interessa solo un controllo formale sulla struttura del documento, una DTD è più che sufficiente.

     

    • Log
Pagina 1 di 1 (4 elemento/i)
Prelevato da http://www.devspy.com/forums/p/4034/4287.aspx
DevSpy.com 6.0 © 2001-2008 - Alcuni Diritti Riservati
Salvo diversa indicazione, tutti i contenuti sono pubblicati sotto licenza "Creative Commons Attribution-Share Alike 3.0"