📄 source.xml
字号:
<!-- generated by run.py --><!DOCTYPE allExamples [ <!ENTITY eacute 'é'> <!ENTITY ugrave 'ù'> <!ENTITY agrave 'à'> <!ENTITY egrave 'è'> <!ENTITY ograve 'ò'> <!ENTITY icirc 'î'> <!ENTITY ecirc 'ê'> <!ENTITY ccedil 'ç'>]><allExamples><XTutorial id="1" next="2" previous="13">
<description lang='fre'>Un document XML doit comporter un ou plusieurs éléments.</description>
<demo type="wf">
<doc>
{text}Ceci est un document XML{/text}
</doc>
<description lang='fre'>Document XML bien formé comportant un élément</description>
</demo>
<demo type="wf">
<doc>
{text}Ceci est un
{doctype}document XML{/doctype}
{/text}
</doc>
<description lang='fre'>Document XML bien formé comportant plusieurs éléments</description>
</demo>
<demo type="notwf">
<doc>
<error>???</error> Ceci est un document XML <error>???</error>
</doc><description lang='fre'>Un document XML doit comporter au moins un élément</description>
</demo>
</XTutorial><XTutorial id="10" next="11" previous="9">
<description lang='fre'>Des commentaires peuvent figurer n'importe où dans un document en dehors des autres balises. Un processeur XML peut permettre à une application, sans que cela soit une obligation, d'extraire le texte des commentaires. La chaîne de caractères "--" (deux tirets) ne doit pas figurer à l'intérieur des commentaires. </description>
<demo type="wf">
<description lang='fre'>Les commentaires peuvent comporter n'importe quel caractère à l'exception des caractères --</description>
<doc>
{!-- doc A --}
{example}
{!-- <HEAD> --}
{!-- Caractères <&< --}
{/example}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Les commentaires ne doivent pas comporter la chaîne de caractères --</description><doc>
{example}
{!-- A <error>--</error> B --}
{/example}
</doc>
</demo>
</XTutorial><XTutorial id="11" next="12" previous="10">
<description lang='fre'>Les instructions de traitement (PI - Processing instruction en anglais) permettent aux documents XML de contenir des instructions destinées aux applications. </description>
<demo type="wf">
<description lang='fre'>Instructions de traitement </description>
<doc>
{example}
{?perl lower-to-upper-case ?}
{?web-server add-header = "université" ?}
{text}vscht{/text}
{/example}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Une instruction de traitement doit se terminer par ?></description>
<doc>
{example}
{?perl run <error>_</error>}
{/example}
</doc>
</demo>
</XTutorial><XTutorial id="12" next="13" previous="11">
<description lang='fre'>Les sections CDATA permettent de ne pas traiter les blocs de texte comportant des caractères qui seraient normalement identifiés comme du balisage. Les sections CDATA commencent par la chaîne "{![CDATA[" et se terminent par la chaîne "]]}". La chaîne ']]}' ne doit pas figurer à l'intérieur d'une section CDATA. </description>
<demo type="wf">
<description lang='fre'>Section CDATA </description>
<doc>
{example}
{![CDATA[ {aaa}bb&cc<<<]]}
{/example}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Une section CDATA ne doit pas comporter la chaîne de caractères ']]}' </description>
<doc>
{example}
{![CDATA[ {aaa}bb ]]}<error>cc<<<]]}</error>
{/example}
</doc>
</demo>
</XTutorial><XTutorial id="13" next="1" previous="12">
<description lang='fre'>Les documents XML peuvent, et d'ailleurs doivent, commencer par une déclaration XML qui précise la version de la norme XML utilisée. </description>
<demo type="wf">
<description lang='fre'>Spécification de la version XML </description>
<doc>
{?xml version="1.0"?}
{text}Ce document respecte la spécification XML 1.0.{/text}
</doc>
</demo>
<demo type="wf">
<description lang='fre'>Spécification du codage</description>
<doc>
{?xml version="1.0" encoding="ISO-8859-2"?}
{text}Si aucun codage n'est indiqué, UTF-8 est pris par défaut{/text}
</doc>
</demo>
</XTutorial><XTutorial id="2" next="3" previous="1">
<description lang='fre'>Il y a exactement un élément appelé élément racine ou élément document, dont aucune partie n'apparaît dans le contenu d'un autre élément.</description>
<demo type="wf">
<doc>
{book}Ceci est un livre{/book}
</doc>
<description lang='fre'>{book} est l'élément racine </description>
</demo>
<demo type="wf">
<doc>
{list}
{item}Item 1{/item}
{item}Item 2{/item}
{item}Item 3{/item}
{/list}
</doc>
<description lang='fre'>{list} est l'élément racine</description>
</demo>
<demo type="notwf">
<doc>
<error>???</error>
{item}Item 1{/item}
{item}Item 2{/item}
{item}Item 3{/item}
<error>???</error>
</doc>
<description lang='fre'>Seul un élément racine est autorisé</description>
</demo>
</XTutorial><XTutorial id="3" next="4" previous="2">
<description lang='fre'>Le nom de la balise de fin d'un élément doit correspondre à celui de la balise de début. Les noms tiennent compte des majuscules et des minuscules</description>
<demo type="wf">
<doc>
{book}Ceci est un livre{/book}
</doc>
<description lang='fre'>La balise de fin {/book} correspond à la balise de début {book}</description>
</demo>
<demo type="wf">
<doc>
{list}
{item}Voiture{/item}
{ITEM}Avion{/ITEM}
{Item}Train{/Item}
{/list}
</doc>
<description lang='fre'>Ce document bien formé comporte 4 éléments différents {list}, {item}, {ITEM} et {Item}</description>
</demo>
<demo type="notwf">
<doc>
{list}
{item}Voiture<error>{/itm}</error>
{item}Avion<error>{/ITEM}</error>
{item}Train{/item}
{/list}
</doc>
<description lang='fre'>{item} - {/itm} et {item} - {/ITEM} ne correspondent pas</description>
</demo>
</XTutorial><XTutorial id="4" next="5" previous="3">
<description lang='fre'>Si la balise de début figure dans le contenu d'un autre élément, la balise de fin doit également figurer dans le contenu du même élément. Plus simplement, les éléments délimités par les balises de début et de fin doivent s'imbriquer correctement les uns dans les autres. </description>
<demo type="wf">
<description lang='fre'>Ces éléments sont correctement imbriqués. </description>
<doc>
{Weight}
{number}12{/number}
{unit}gramme{/unit}
{/Weight}
</doc>
</demo>
<demo type="wf">
<description lang='fre'>Autre exemple de document bien formé</description>
<doc>
{book}
{chapter}
{title}Introduction{/title}
{/chapter}
{chapter}
{title}Récit{/title}
{subChapter}
{title}Partie 1{/title}
{/subChapter}
{subChapter}
{title}Partie 2{/title}
{/subChapter}
{/chapter}
{chapter}
{title}Index{/title}
{/chapter}
{/book}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>L'élément {italic} n'est pas correctement imbriqué</description>
<doc>
{text}
{bold}{italic}XML<error>{/bold}</error>{/italic}
{/text}
</doc>
</demo>
</XTutorial><XTutorial id="5" next="6" previous="4">
<description lang='fre'>La fin de chaque élément commençant par une balise de début doit être indiquée par une balise de fin comportant le même nom que celui utilisé dans la balise de début. Le texte figurant entre la balise de début et la balise de fin est appelé le contenu de l'élément. Un élément sans contenu prend la forme spéciale suivante : {nom/} . La barre oblique devant le caract猫re } remplace la balise de fin. </description>
<demo type="wf">
<description lang='fre'>Chaque élément comporte une balise de fin ou adopte la forme spéciale. Il n'y a aucune différence entre {AAA}{/AAA} et {AAA/} en XML.</description>
<doc>
{listOfTags}
{AAA}{/AAA}
{BBB}{/BBB}
{CCC/}
{DDD/}
{/listOfTags}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Une erreur très fréquente consiste à oublier la barre oblique</description>
<doc>
{description}
Il y a des pommes {color}jaunes<error>{color}</error> et {color}rouges{/color}.
{/description}
</doc>
</demo>
</XTutorial><XTutorial id="6" next="7" previous="5">
<description lang='fre'>Les noms d'éléments peuvent comporter des lettres, des chiffres, des tirets, des traits de soulignement, des deux-points ou des points. Le caractère deux-points (:) ne peut être utilisé que dans le cas particulier où il sert à séparer des espaces de noms. Les noms d'éléments commençant par xml, XML ou une autre combinaison de la casse de ces lettres sont réservés à la norme XML. </description>
<demo type="wf">
<description lang='fre'>Document comportant des caractères autorisés</description>
<doc>
{permittedNames}
{name/}
{xsl:copy-of/}
{A_long_element_name/}
{A.name.separated.with.full.stops/}
{a123323123-231-231/}
{_12/}
{/permittedNames}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Ce document comporte plusieurs erreurs. </description>
<doc>
{forbiddenNames}
{A<error>;</error>name/}
{last<error>@</error>name}
{<error>@#$%^()%+?=</error>/}
{A<error>*</error>2/}
{<error>1</error>ex/}
{/forbiddenNames}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Les noms ne peuvent pas commencer par xml</description>
<doc>
{forbiddenNames}
{<error>xml</error>Tag/}
{<error>XML</error>Tag/}
{<error>XmL</error>Tag/}
{<error>xMl</error>Tag/}
{<error>xmL</error>Tag/}
{/forbiddenNames}
</doc>
</demo>
</XTutorial>
<XTutorial id="7" next="8" previous="6">
<description lang='fre'>Un élément peut comporter aucun, un ou plusieurs attributs. Les caractères autorisés sont les mêmes que pour les noms d'éléments. Le nom d'un attribut est séparé de sa valeur par le caractère =. La valeur de l'attribut doit être indiquée entre guillemets simples '...' ou doubles "..." . Si un guillemet simple ou double est utilisé dans la valeur d'un attribut, le délimiteur contraire doit être utilisé. </description>
<demo type="wf">
<description lang='fre'>Document comportant des attributs bien formés</description>
<doc>
{elements-with-attributes}
{el _ok = "oui" /}
{one attr = "une valeur"/}
{several first="1" second = '2' third= "333"/}
{apos_quote case1="Aujourd'hui" case2='Il lança : "Salut, tout le monde!" '/}
{/elements-with-attributes}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Document comportant des attributs incorrects</description>
<doc>
{errors}
{wrong_char a<error>*</error>b = "23432"/}
{mismatched_separator value = <error>"</error>12<error>'</error>/}
{wrong_separator_type value="aa<error>"</error>aa"/}
{wrong_separator_type value='bb<error>'</error>bb'/}
{wrong_start <error>XML</error>-ID = "xml234"/}
{/errors}
</doc>
</demo>
</XTutorial><XTutorial id="8" next="9" previous="7">
<description lang='fre'>Les caractères < et & ne peuvent pas être utilisés dans le texte, car ils sont utilisés dans le balisage. Si vous devez employer ces caractères, utilisez &lt; à la place de < et &amp; à la place de & </description>
<demo type="wf">
<description lang='fre'>Substitution de & et de <</description>
<doc>
{example}
{isLower}
23 &lt; 46
{/isLower}
{ampersand}
Dupond &amp; fils
{/ampersand}
{/example}
</doc>
</demo>
<demo type="notwf">
<description lang='fre'>Les caractères & et < ne peuvent pas être utilisés dans du texte</description>
<doc>
{example}
{isLower}
23 <error><</error> 46
{/isLower}
{ampersand}
Dupond <error>&</error> fils
{/ampersand}
{/example}
</doc>
</demo>
</XTutorial><XTutorial id="9" next="10" previous="8">
<description lang='fre'>Les caractères >, " , et ' peuvent également être remplacés par &gt; , &quot; et &apos; respectivement</description>
<demo type="wf">
<description lang='fre'>Substitutions possibles</description>
<doc>
{example}
{right-bracket} A la fois > et &gt; sont autorisés{/right-bracket}
{double-quote} A la fois " et &quot; sont autorisés{/double-quote}
{apostrophe} A la fois ' et &apos; sont autorisés{/apostrophe}
Cela est utile dans : {el value=" &apos; &quot; &apos; "/}
{/example}
</doc>
</demo>
</XTutorial></allExamples>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -