[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Qualche - facciamo qualche considerazione su XML e HTML, proprio embrionali, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma sulla base del file OPML dei feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Siamo nel blog IAMARF e andiamo nella solita pagina OPML che ho razionalizzato: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,a questo punto il percorso, per semplificare, ho lasciato un solo file aggiornato Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,con tutti i blog fino a qualche giorno fa. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Cioè, ci sono tutti quelli presenti sino ad ora Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e in futuro, chi vuole eventuali -- chi vuole aggiungere eventuali nuovi blog Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,potrà farlo a mano, o imparare a farsi un file. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Apriamo questo file col browser Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e vediamo che invece che una pagina web si apre un testo, sostanzialmente: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,è il codice del file OPML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Facciamo una cosa più comoda, che comunque poi dovremo fare sempre Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,quando vogliamo utilizzare questo file per includerlo in un aggregatore, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,cioè cliccare con il tasto destro del mouse e salvarlo sul disco Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,sul desktop -- a me va bene, mi va bene. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Sì, l'avevo già salvato allora lo sostituisco. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,E vado ad aprirlo - eccolo qua: ltis13.opml - vado ad aprirlo. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Io uso di solito un editore che si chiama Vim, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma uso Notepad++ perché è quello che avevo in qualche maniera suggerito, per chi volesse, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,di usarlo. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Strano che non l'abbia capito da sé, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma io lo informo che il linguaggio in cui è scritto questo oggetto è XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Ecco: così ho la sintassi colorata e su questo possiamo dire due parole. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora siccome abbiamo un pochino -- vabbé, molti di voi hanno anche gioccherellato con il file XML, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma più fattivamente con qualche briciola di HTML, molti hanno effettivamente aggeggiato per davvero, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,per esempio per scrivere a mano i link, per -- usando il tag link -- Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,oppure per scrivere in grassetto o in corsivo, con i caratteri colorati, ecc. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Beh, leggendo questo, certamente, qualcuno può dire: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,"Uh guarda, questo è HTML." Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,No. Questo è XML. Qual è la differenza? Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora, andiamo pure a prendere le definizioni in Wikipedia. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Le preparo un attimo. Eccoci. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora rammentiamoci che HyperText Markup Language è HTML, linguaggio marcato con ipertesto. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Che vuol dire "ipertesto"? Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,È un testo che quando io lo rappresento, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e per far questo ci vuole un browser del Web: Firefox, Internet Explorer, Safari sul Mac, ecc., Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,allora parte di testo diventano sensibili alla presenza del mouse, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,dicendomi che quelli sono diventati bottoni. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Se li clicco con il tasto sinistro del mouse, io sfondo la pagina Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,- è come se passassi in una dimensione ortogonale a quella del foglio - Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e vado in un'altra pagina. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Questo è l'ipertesto. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Quindi HTML è testo marcato in maniera da dire Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,come si deve rappresentare su una pagina Web l'informazione, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e diviene -- il testo così diviene ipertesto, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,naturalmente con tutta una serie di possibili formattazioni che già conoscete: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,testo in grassetto, ecc. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,In questa stessa pagina ci sono dei commenti. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,XML: Extensible Markup Language, linguaggio marcato estensibile, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,cioè questo è un'altra cosa. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,È un sistema per codificare informazione in generale, non per rappresentarla. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Tant'è che quando la provate a rappresentare in un browser, come abbiamo visto prima, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,viene semplicemente il codice, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,come se fosse un editore di testo, anche se poi non si può editare sul browser. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Un'enormità di informazioni vengono codificate in XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Il file OPML, per esempio, è un tipo di applicazione di codice XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,I feed stessi - magari ve ne farò vedere uno - è un, è scritto in codifica XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,I verbali fatti col sistema elettronico del mio ateneo, quando vengono salvati, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,sono salvati in formato XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Il file di molti Word Processor - LibreOffice, OpenOffice - Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,sono in realtà codificati in formato XML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Andiamo a vedere il nostro esempio. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Anche in XML abbiamo il sistema dei tag, con la stessa logica: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,tag di apertura e tag di chiusura. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Apertura. Chiusura. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,La caratteristica dell'XML è che mentre, nel caso dell'HTML, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,l'insieme dei tag è fisso, è pubblicato per ciascuna versione di HTML, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,in XML sono -- in realtà, i tag vengono definiti volta per volta, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,quindi rendendo il sistema completamente flessibile. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Qui, sostanzialmente, con questa dichiarazione si stabilisce una serie di tag Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,che dipendono dal fatto che è un file OPML. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,E in parte sono analoghi all'HTML: ogni -- anche nell'HTML c'è un tag e un tag , Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma ci sono anche altre cose. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,L'elemento fondamentale è Outline. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,È Outline che apre qualcosa e poi si va a chiudere, seguendo questa riga Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,- vedete che gli editori specializzati aiutano molto, ecco - Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e qui si chiude questo gruppo Outline. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Ma in realtà Outline può essere anche realizzato con un unico tag: eccolo qua. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Questo sarebbe il tag d'inizio, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ma il fatto che io l'abbia, qui, marcato con una barra,vuol dire che si chiude. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,E nel suo interno, ci sono gli attributi. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Gli attributi dicono come una certa informazione -- descrivono una certa informazione. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Per esempio, in questo caso del file OPML, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ogni elemento Outline, in realtà, descrive un feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Si possono utilizzare vari, vari attributi, ma io qui ho messo i minimi, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ho elaborato il file in maniera da avere un minimo insieme, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e questo garantisce il fatto che poi questo file venga letto da aggregatori diversi: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,nel nostro caso, RSSOwl, applicazione -- aggregatore sotto forma di applicazione libera Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,installata in un computer - oppure Bloglines, servizio Web. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora, il minimo è un titolo del feed, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,il nome del proprietario, diciamo, del blog a cui il feed si riferisce, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e il feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora la variabile xmlUrl contiene, contiene l'indirizzo del feed, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,mentre la variabile title contiene il nome del proprietario. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Diamo un'occhiata all'indirizzo del feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,È un indirizzo internet, percé il feed è una cosa che si va a pescare in internet, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ed ha la struttura tipica di un indirizzo internet, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,ovvero: http://www... ecc., blabla; Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e poi c'è, alla fine, feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Questo è l'indirizzo del feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Andiamo a pren-- ora qui ho preso un blog particolare, un blog non di quelli standard. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Prendiamo questo, quello di Claude. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Allora: http://almansi.wordpress.com Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e fin qui, questo è l'indirizzo del blog, quello che si chiama lo Uniform Resource Locator, URL del blog. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Se ci mettiamo anche - se ci mettiamo anche feed Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,- allora io inavvertitamente l'ho cancellato perché sono un pasticcione, ecco - Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,allora questo è l'indirizzo di un qualcosa all'interno del blog, in particolare, dei suoi feed. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,E se andiamo a cercare - ecco - i commenti, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,oppure, per esempio, un altro oggetto che possiamo avere è, nel blog almansi.wordpress.com, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,il feed dei commenti che ha questo tipo di indirizzo. Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,Ecco: questo video è servito solamente per rinfrescarsi la memoria Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e approfondire un pizzico di più la differenza fra XML e HTML, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,perché ci ritorneremo, credo, se possibile, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e per mettere a fuoco un pochino meglio la differenza fra indirizzo del blog Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e indirizzo dei feed, nel blog, Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,che sono due cose che sono distinte Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,e in un certo senso, una sta dentro l'altra: Dialogue: 0,9:59:59.99,9:59:59.99,Default,,0000,0000,0000,,l'indirizzo dei feed è l'indirizzo di un qualcosa che sta dentro il blog.