Estratto del documento

Introduzione a XML

HTTP, SMTP, FTP- XML è uno standard di pubblico dominio- Ogni software "conforme a XML" è in grado di gestire dati in formato XML- Sono disponibili numerose applicazioni e librerie open source per la manipolazione di dati in formato XML basate su diversi linguaggi di programmazione (Java, C, C#, Python, Perl, PHP...)- Una applicazione in grado di elaborare dati in formato XML viene definita elaboratore XMLDocumenti ben formati e documenti validi- In XML ci sono regole sintattiche (o meglio meta-sintattiche)- come dobbiamo scrivere le informazioni all'interno dei documenti- Ci possono essere (ma non è obbligatorio) regole semantiche- cosa possiamo scrivere in un documento XML- Un documento XML che rispetta le regole sintattiche si dice ben formato (well-formed)- Un documento XML che rispetta le regole sintattiche e le regole semantiche si dice validoStruttura logica di un documento XML- Un documento XML- è strutturato in modo gerarchico- è

composto da elementi

Un elemento rappresenta un componente logico del documento e può contenere un frammento di testo oppure altri elementi (sotto-elementi).

Ad un elemento possono essere associate informazioni descrittive chiamate attributi.

Gli elementi sono organizzati ad albero con radice root.

Ogni documento XML può essere rappresentato come un albero document-tree.

Struttura fisica di un documento XML

Un documento XML è un semplice file di testo (.xml).

La struttura del documento viene rappresentata mediante marcatori (markup).

Gli elementi sono rappresentati mediante tag, coppie di marcatori che racchiudono il contenuto dell'elemento.

I sottoelementi sono tag contenuti all'interno di un altro tag.

Gli attributi vengono rappresentati sotto forma di coppie nome-valore all'interno dei tag.

La radice è un tag che racchiude tutto il resto del documento (e quindi tutti gli altri tag).

Un documento può inoltre contenere spazi bianchi.

a capo e commenti

Aspetti di sintassi

  • Un documento XML è una stringa di caratteri ASCI o Unicode
  • Nomi di elementi, attributi e entità sono case-sensitive
  • Il mark-up è separato dal contenuto testuale mediante caratteri speciali: < > & (parentesi angolari e ampersand) " ‘ (doppi apici e apici)
  • I caratteri speciali non possono comparire come contenuto testuale e devono essere eventualmente sostituiti mediante i riferimenti a entità: &lt; (<), &gt; (>), &amp; (&), &quot; ("), and &apos; (')

Struttura formale di un documento XML

  • Un documento è costituito da due parti:
    1. Prologo: contiene una dichiarazione XML ed il riferimento (opzionale) ad altri documenti che ne definiscono la struttura o direttive di elaborazione
    2. Corpo: è il documento XML vero e proprio

Prologo: XML Declaration

  • Ogni documento XML inizia con un prologo che contiene una XML declaration
  • Forme di XML declaration: <?xml
Formattazione del testo

Formattazione del testo

version="1.0"?><?xml version="1.0" encoding="UTF-8"?>- Contiene informazioni su:- Versione: per ora solo 1.0- Set di caratteri (opzionale)

Prologo: riferimenti a documenti esterni

Il prologo può contenere riferimenti a documenti esterni utili per il trattamento del documento

Processing instruction: istruzioni di elaborazione

Esempio. Rappresentazione mediante CSS:
<?xml-stylesheet type="text/css" href="gree.css"?>

Doctype declaration: grammatica da utilizzare per la validazione del documento

grammatica contenuta in un file locale
<!DOCTYPE book SYSTEM "book.dtd">

grammatica accessibile ad un URL pubblico
<!DOCTYPE book PUBLIC "http://www.books.org/book.dtd">

Commenti

<!-- Questo è un commento -->

Vincoli di buona formazione

Affinché un documento XML sia ben formato:
- Deve contenere una dichiarazione (XML Declaration) corretta
- Il corpo deve avere un unico

elemento radice- Ogni elemento deve avere un tag di apertura e uno di chiusura- se l'elemento è vuoto si può utilizzare la forma abbreviata(<nometag/>)- Gli elementi devono essere opportunamente nidificati, cioè i tag di chiusura devono seguire l'ordine inverso dei rispettivi tag di apertura- I nomi dei tag di apertura e chiusura devono coincidere- anche in termini di maiuscole e minuscole- I valori degli attributi devono sempre essere racchiusi tra singoli o doppi apici

Che cos'è JavaScript- JavaScript è un linguaggio di scripting sviluppato per dare interattività alle pagine HTML- Può essere inserito direttamente nelle pagine Web ed è in pratica lo standard client-sideJavaScript e Java- Esistono profonde differenze- JavaScript è interpretato e non compilato- JavaScript è object-based ma non class-based- Esiste il concetto di oggetto- Non esiste il concetto di classe- JavaScript è

debolmente tipizzato (weakly typed)- Non è necessario definire il tipo di una variabile- Attenzione però: questo non vuol dire che i dati non abbiano un tipo (sono le variabili a non averlo in modo statico)

JavaScript Testing

Problema:

Javascript: ogni browser vendor crea la propria versione- Il comportamento dello stesso programma javascript può variare sostanzialmente da un browser all'altro, e anche da una versione all'altra dello stesso browser- Conseguenza- Prima di rilasciare la distribuzione finale, è necessario testare la propria applicazione web su tutti i browser che si prevede di supportare- La maggior parte degli sviluppatori- Effettua i test iniziali e lo sviluppo su Chrome o Firefox- Ma testa anche su Edge e Safari ed altri prima del rilascio finale

Cosa si può fare con JavaScript- Il codice JavaScript viene eseguito da un interprete contenuto all'interno del browser- Nasce per dare dinamicità alle pagine Web- Consente

Quindi di- Accedere e modificare elementi della pagina HTML- Reagire ad eventi generati dall'interazione fra utente e pagina- Validare i dati inseriti dall'utente- Interagire con il browser: determinare il browser utilizzato e la dimensione della finestra in cui viene mostrata la pagina, lavorare con i browser cookie, ecc.- Gli script vengono inseriti nella pagina HTML usando il tag

sendMessage
Tutor AI
tutorai_icon
Ciao! Sono il tuo Tutor AI, il compagno ideale per uno studio interattivo. Utilizzo il metodo maieutico per affinare il tuo ragionamento e la comprensione. Insieme possiamo:
  • Risolvere un problema di matematica
  • Riassumere un testo
  • Tradurre una frase
  • E molto altro ancora...
Cosa vuoi imparare oggi?
tutorai_icon
Il Tutor AI di Skuola.net usa un modello AI di Chat GPT.
Per termini, condizioni e privacy, visita la relativa pagina.