posto il testo di un articolo che ho scritto che non ho ancora pubblicato
Binding dei dati con il DSO di Xml
Un semplice esempio di scambio di dati
Quello che vado a presentare non è che un semplice esempio di scambio di dati che è possibile realizzare con il DSO (Data Source Object), oggetto che permette di richiamare i campi di un file Xml e di formattarli in una pagina Html.
Ipotizziamo di avere un file Xml in cui abbiamo una serie di campi, ad esempio un elenco di amici, e che ogni record del file sia formato dai seguenti campi:
Nome
Telefono
Per incrementare dinamicamente il file Xml è opportuno costruire un software server-side, in genere utilizzando Asp, e di potere, tramite questo, accedere ad un database tipo MS Access o Ms Sql Server.
Tuttavia, questo è solo il primo step verso questa frontiera, ci occuperemo quindi solo di mettere a video quanto detto fin ora. Utilizzeremo la tecnica del Binding dei dati.
Costruiamo il file amici.xml che ospiterà i suddetti dati:
<?xml version="1.0"?>
<Amici>
<Amico>
<Nome>Luca</Nome>
<Telefono>0123456789</Telefono>
<Email>webmaster@lukeonweb.net</Email>
</Amico>
<Amico>
<Nome>Tizio</Nome>
<Telefono>0987654321</Telefono>
<Email>webmaster@tizio.it</Email>
</Amico>
<Amico>
<Nome>Caio</Nome>
<Telefono>1357902468</Telefono>
<Email>webmaster@caio.it</Email>
</Amico>
</Amici>
Nulla di più di un normale file Xml in cui includiamo la dichiarazione iniziale, costruiamo una macrostruttura che chiamiamo Amici che ingloba la microstruttura Amico in cui sono contenuti i suddetti campi.
Costruiamo ora il file amici.htm che ci permetterà di formattare normalmente questi dati:
<html>
<head>
<title>Binding dei dati con il DSO di Xml</title>
</head>
<body>
<xml id="dsoAmici" src="amici.xml"></xml>
<h2>Binding dei dati con il DSO di Xml</h2>
<table datasrc="#dsoAmici" border="1">
<thead>
<th align="left">Nome</th>
<th align="left">Telefono</th>
<th align="left">Email</th>
</thead>
<tr>
<td><span datafld="Nome"></span></td>
<td><span datafld="Telefono"></span></td>
<td><span datafld="Email"></span></td>
</tr>
</table>
</body>
</html>
Nota: utilizziamo per l'intitolazione dei campi i tag Html thead e th per far si che, all'atto dell'apparizione dei dati, non si ripetano per ogni record.
Esaminiamo cosa c'è di nuovo in questa semplice pagina Html:
<xml id="dsoAmici" src="amici.xml"></xml>
Questa stringa di codice è il richiamo Html a file Html, assegnando un identificativo che servirà a due scopi: 1) un'applicazione Xml può richiamare in una pagina Html, o Asp, anche più di un file esterno Xml utilizzando la tecnologia del Binding tramite il DSO, 2) dobbiamo prevedere un richiamo nella struttura Html che effettuerà il stream dal file Xml.
Focalizziamo l'attenzione su quest'ultimo punto: osserviamo la stringa di codice che crea la tabella Html:
<table datasrc="#dsoAmici" border="1">
utilizziamo l'attributo datasrc (Data Source) per associare la tabella alla struttura Xml che richiamiamo, dandogli lo stesso valore dell'identificativo del richiamo al file esterno.
Ultima considerazione, ma non ultima ad aver importanza, è la stringa di codice che richiama i valori dei record dal file Xml:
<td><span datafld="Nome"></span></td>
utilizziamo l'attriuto datafld (Data Field) per richiamare il campo che ci interessa, in questo caso il campo Nome.
Che il file Xml contenga un record o centinaia di record, questo è tutto il codice Html che ci necessita!
ciao![]()