XML/DTD: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
m Update syntaxhighlight tags - remove use of deprecated <source> tags
Riga 18:
Esempio di dichiarazione di un DTD esterno in un file XML:
 
<sourcesyntaxhighlight lang="xml">
<!DOCTYPE directory SYSTEM "directory.dtd">
</syntaxhighlight>
</source>
 
Il DTD inizia con il tag:
 
<sourcesyntaxhighlight lang=xml>
<!DOCTYPE elemento-radice [
</syntaxhighlight>
</source>
 
e termina con:
 
<sourcesyntaxhighlight lang=xml>
]>
</syntaxhighlight>
</source>
 
Il DTD deve essere inserito dopo la dichiarazione XML iniziale.
Riga 38:
I commenti, come in XML, vengono inseriti come segue:
 
<sourcesyntaxhighlight lang=xml>
<!-- commenti -->
</syntaxhighlight>
</source>
 
== Elementi ==
Riga 46:
Ogni elemento del DTD è definito come segue:<ref>http://www.w3schools.com/dtd/dtd_elements.asp</ref>
 
<sourcesyntaxhighlight lang=xml>
<!ELEMENT nome-elemento qualificatore>
</syntaxhighlight>
</source>
 
Possibili qualificatori sono:
Riga 62:
(solo un telefono a persona)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (telefono)>
</syntaxhighlight>
</source>
 
* 0 o più sotto-elementi:
Riga 70:
(una persona può avere 0, 1 o più telefoni)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (telefono*)>
</syntaxhighlight>
</source>
 
* 1 o più elementi:
Riga 78:
(una persona deve avere almeno un telefono)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (telefono+)>
</syntaxhighlight>
</source>
 
* 0 o 1 articolo singolo:
Riga 86:
(una persona ha al massimo 1 telefono, potrebbe non averne uno)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (telefono?)>
</syntaxhighlight>
</source>
 
* Diversi sotto-elementi:
Riga 94:
(una persona ha un nome e un telefono)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (nome, telefono)>
</syntaxhighlight>
</source>
 
* Sotto-elementi identici o non identici:
Riga 102:
(una persona ha un nome e due numeri di telefono)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (nome, telefono, telefono)>
</syntaxhighlight>
</source>
 
* Un elemento secondario OR (esclusivo) un altro:
Riga 110:
(uno o due telefoni a persona)
 
<sourcesyntaxhighlight lang=xml>
<! ELEMENT persona (telefono|(telefono, telefono))>
</syntaxhighlight>
</source>
 
Esempio di memorizzazione di una directory di servizi. Ogni servizio ha un nome e può avere uno o più telefoni:
 
<sourcesyntaxhighlight lang="xml">
<?xml version="1.0" standalone="yes"?>
<!DOCTYPE directory [
Riga 139:
</service>
</directory>
</syntaxhighlight>
</source>
 
== Attributi ==
Riga 145:
Sono dichiarati con ATTLIST. Ad esempio, definiamo un tipo di pagamento predefinito in contanti:
 
<sourcesyntaxhighlight lang=xml>
<!ATTLIST pagamento type CDATA (assegno|liquidi) "liquidi" >
</syntaxhighlight>
</source>
 
=== Valori degli attributi ===
Riga 197:
Dichiarare un'entità consente di integrarla chiamando il suo nome preceduto da una e commerciale, dal simbolo della percentuale o dalle virgolette (<code>&</code>, <code>%</code> o <code>"</code><ref>http://xmlwriter.net/xml_guide/entity_declaration.shtml</ref>) e seguito da un punto e virgola (<code>;</code>). Per esempio:
 
<sourcesyntaxhighlight lang="xml">
<!ENTITY intro! SYSTEM "https://fr.wikibooks.org/wiki/Programmation_XML/Introduction.xml">!
 
Riga 203:
&intro;
</b>
</syntaxhighlight>
</source>
 
Questo esempio è estratto dalla specifica XHTML<ref>http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</ref> per i collegamenti ipertestuali:
 
<sourcesyntaxhighlight lang="xml">
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
...
Riga 222:
target %FrameTarget; #IMPLIED
>
</syntaxhighlight>
</source>
 
[[Categoria:XML|Document Type Definition]]