Maison développement back-end Tutoriel XML/RSS Une introduction détaillée à la structure et à la syntaxe XML

Une introduction détaillée à la structure et à la syntaxe XML

Mar 24, 2017 pm 05:09 PM

Pour l'instant, utilisons le Bloc-notes pour créer notre fichier XML. Regardez d'abord un fichier XML :

Exemple 1 :

〈?xml version="1.0" encoding="gb2312" ?〉
〈参考资料〉
〈书籍〉
〈名称〉XML入门精解〈/名称〉
〈作者〉张三〈/作者〉
〈价格 货币单位="人民币"〉20.00〈/价格〉
〈/书籍〉
〈书籍〉
〈名称〉XML语法〈/名称〉
〈!--此书即将出版--〉
〈作者〉李四〈/作者〉
〈价格 货币单位="人民币"〉18.00〈/价格〉
〈/书籍〉
〈/参考资料〉
Copier après la connexion

Il s'agit d'un fichier XML typique. Après l'édition, enregistrez-le sous forme de fichier avec le suffixe .xml. Nous pouvons diviser ce fichier en deux parties principales : le préambule du fichier (Prolog) et le corps du fichier. La première ligne de ce fichier est le préambule du fichier. Cette ligne est quelque chose qu'un fichier XML doit déclarer, et elle doit également être située sur la première ligne du fichier XML. Elle indique principalement à l'analyseur XML comment fonctionner. Parmi eux, la version indique le numéro de version standard utilisé dans ce fichier XML, qui est obligatoire ; l'encodage indique le type de caractère utilisé dans ce fichier XML, qui peut être omis. Lorsque vous omettez cette instruction, le suivant. le code de caractère doit être un code de caractère Unicode (il est recommandé de ne pas l'omettre). Étant donné que nous utilisons le code de caractères GB2312 dans cet exemple, l'instruction de codage ne peut pas être omise. Il y a également quelques déclarations dans le préambule du dossier, que nous présenterons plus tard.

Le reste du fichier appartient au corps du fichier et les informations sur le contenu du fichier XML sont stockées ici. Nous pouvons voir que le corps principal du fichier est composé des balises de contrôle de début et de fin . C'est ce qu'on appelle « l'élément racine » du fichier XML ; directement sous l'élément racine « Sous-élément » ; sous « Livre » se trouvent des sous-éléments tels que « Nom », « Auteur » et « Prix ». L'unité monétaire est un "attribut" dans l'élément , et "RMB" est la "valeur de l'attribut".

〈!--Ce livre sera bientôt publié--〉Cette phrase est la même que le HTML, c'est un commentaire Dans le fichier XML, la partie commentaire est placée entre les "〈!--" et les balises "--〉" entre les parties.

Comme vous pouvez le constater, les fichiers XML sont assez simples. Comme HTML, les fichiers XML sont également composés d'une série de balises. Cependant, les balises des fichiers XML sont nos propres balises personnalisées et ont des significations claires. Nous pouvons expliquer la signification du contenu des balises.

Après avoir eu une première impression des fichiers XML, parlons en détail de la syntaxe des fichiers XML. Avant de parler de grammaire, nous devons comprendre un concept important, qui est XML Parse.

1. Analyseur XML

La fonction principale de l'analyseur est de vérifier s'il y a des erreurs structurelles dans le fichier XML, de supprimer les balises dans le fichier XML et de lire le contenu correct pour passer au traitement de demande en une étape suivant. XML est un langage de balisage utilisé pour structurer les informations sur les fichiers. La spécification XML contient des règles détaillées sur la façon de marquer la structure des fichiers. L'analyseur est un logiciel écrit selon ces règles (principalement écrit en Java). Tout comme le HTML, dans le navigateur, il doit y avoir un analyseur HTML pour que le navigateur puisse « lire » diverses pages Web composées de balises HTML et les afficher devant nous. S'il y a des balises que l'analyseur HTML du navigateur ne peut pas lire, il nous renverra un message d'erreur.

Étant donné que les balises HTML actuelles sont en fait assez déroutantes et qu'il existe de nombreuses balises non standard (certaines pages Web peuvent être affichées normalement avec IE, mais pas avec Netscape Navigator), donc dès le début, les concepteurs de XML La syntaxe et la structure de XML sont strictement stipulées. Les fichiers XML que nous écrivons doivent être conformes à ces réglementations, sinon l'analyseur XML vous montrera sans pitié des messages d'erreur.

Il existe deux types de fichiers XML, l'un est le fichier XML bien formé et l'autre est le fichier XML de validation.

Si un fichier XML satisfait à certaines règles pertinentes de la spécification XML et n'utilise pas de DTD (Document Format Definition - détails plus tard), il peut être appelé Well-Formed. Et si un fichier XML est bien formé, que la DTD est utilisée correctement et que la syntaxe de la DTD est correcte, alors le fichier est en cours de validation. Correspondant aux deux fichiers XML, il existe deux analyseurs XML, l'un est l'analyseur Well-Formed et l'autre est l'analyseur Validating. IE 5 inclut un analyseur de validation, qui peut également être utilisé pour analyser des fichiers XML bien formés.

Vérifiez s'il répond aux conditions de bien formé. Nous pouvons ouvrir le premier fichier XML que nous venons de modifier avec un navigateur IE 5 ou supérieur.

Vous vous demandez peut-être pourquoi l'affichage dans le navigateur est le même que celui de mon fichier source ? C'est vrai, car pour les fichiers XML, on ne connaît que le contenu, et sa forme d'affichage est complétée par CSS ou XSL. Ici, nous n'avons pas défini son fichier CSS ou XSL pour ce fichier XML, il est donc affiché sous sa forme originale. En fait, pour l'échange électronique de données, seul un fichier XML est nécessaire. Si nous voulons l'afficher sous une forme quelconque, nous devons éditer le fichier CSS ou XSL (cette question sera abordée plus tard).

2. Fichier XML bien formé

Nous savons que le XML doit être bien formé pour être correctement analysé par l'analyseur et affiché dans le navigateur. Alors, qu’est-ce qu’un fichier XML bien formé ? Il existe principalement les directives suivantes, qui doivent être respectées lorsque nous créons des fichiers XML.

1.XML文件的第一行必须是声明该文件是XML文件以及它所使用的XML规范版本。在文件的前面不能够有其它元素或者注释。

2.在XML文件中有且只能够有一个根元素。我们的第一个例子中,〈参考资料〉... 〈/参考资料〉就是此XML文件的根元素。

3.在XML文件中的标记必须正确地关闭,也就是说,在XML文件中,控制标记必 须有与之对应的结束标记。如:〈名称〉标记必须有对应的〈/名称〉结束标记,不像HTML,某些标记的结束标记可有可无。如果在XML文件中遇到自成一个单元的标记,就是类似于HTML 中的〈img src=.....〉的这些没有结束标记的时候,XML把它称为“空元素”,必须用这样的写法:〈空元素名/〉,如果元素中含有属性时写法则为:〈空元素名 属性名=“属性值”/〉。

4.标记之间不得交叉。在以前的HTML文件中,可以这样写:

〈B〉〈H〉XXXXXXX〈/B〉〈/H〉,〈B〉和〈H〉
Copier après la connexion

标记之间有相互重叠的区域,而在XML中,是严格禁止这样标记交错的写法,标记必须以规则性的次序来出现。

5.属性值必须要用“ ”号括起来。如第一个例子中的“1.0”、“gb2312”、“人民币”。都是用“ ”号括起来了的,不能漏掉。

6.控制标记、指令和属性名称等英文要区分大小写。与HTML不同的是,在HTML中, 类似〈B〉和〈b〉的标记含义是一样的,而在XML中,类似〈name〉、〈NAME〉或〈Name〉这样的标记是不同的。

7.我们知道,在HTML文件中,如果我们要浏览器原封不动地将我们所输入的东西显示出来,可以将这些东西放到〈pre〉〈/pre〉或者〈xmp〉〈/xmp〉标记中间。这对于我们创建HTML教学的网页是必不可少的,因为网页中要显示HTML的源代码。而在XML中,要实现这样的功能,就必须使用CDATA标记。在CDATA标记中的信息被解析器原封不动地传给应用程序,并且不解析该段信息中的任何控制标记。CDATA区域是由:“〈![CDATA[”为开始标记,以“>〉”为结束标记。例如:例2中的源码,除了“〈![CDATA[”和“>〉”符号,其余的内容解析器将原封不动地交给下游的应用程序,即使CDATA区域中的开始和结尾的空白以及换行字符等,都同样会被转交(注意CDATA是大写的字符)。

例2:

〈![CDATA[飞翔的xml〉〉〉〉〉,:-)
oooo〈〈〈〈〈〈〈
>〉
Copier après la connexion

8.XML处理空白字符和HTML不一样。HTML标准规定,不管有多少个空白,都当作一个空白来处理;而在XML中规定,所有标记以外的空白,解析器都要忠实地交给下游的应用程序处理。这样,我们有时必须摒弃编写HTML文件时的缩排习惯,因为缩排的空格,解析器也要处理。如:

〈作者〉张三〈/作者〉
和
〈作者〉
张三
〈/作者〉
Copier après la connexion

上述内容对于解析器来说是不同的(后者在〈作者〉〈/作者〉标记之内除了张三这个字符以外,还包括两个换行记号以及“张三”前的文字缩排符号)。所以解析器在去掉标记后将信息传给应用程序将有不同的处理结果。

如果我们想明确地告诉XML程序,标记中的空白有明确的含义,不要随便去掉(如在一些诗中,空格有它具体的意义),则可在标记中加入一个XML内置的属性——xml:space 。如(注意属性名称和值的大小写):

〈诗歌 xml:space="preserver"〉
祖国啊! 祖国!
我的祖国!
〈/诗歌〉
Copier après la connexion

另外,在XML文件中,如果要用到表1的特殊字符,必须用相应符号代替。

表1:

特殊字符     替代符号
 &&       &
 <       &it;
 >       >
 "       "
 &#39;      &apos;
Copier après la connexion

小结:

符合上述规定的XML文件就是Well-Formed的XML文件。这是编写XML文件的最基本要求。可以看到XML文件的语法规定比HTML要严格多了。由于有这样的严格规定,软件工程师编写XML的解析器就容易多了,不像编写HTML语言的解析器,必须费尽心思去适应不同的网页写法,提高自己浏览器的适应能力。实际上,这对于我们初学者来说,也是一件好事。该怎样就怎样,不必像原来那样去疑惑各种HTML的写法。

On voit que dans les fichiers XML, la plupart des balises utilisées sont des balises personnalisées. Mais réfléchissez-y, si deux entreprises A et B du même secteur souhaitent échanger des données à l'aide de fichiers XML, l'entreprise A utilise la balise pour représenter les informations sur les prix de leurs produits, tandis que l'entreprise B peut utiliser pour représenter les informations sur le prix. Si une application XML lit les informations dans leurs fichiers XML respectifs, si elle sait seulement que la balise représente des informations sur les prix, alors les informations sur les prix de la société B ne peuvent pas être lues et une erreur se produira. Évidemment, pour les entités qui souhaitent utiliser des fichiers XML pour échanger des informations, il doit y avoir un accord entre elles - c'est-à-dire quelles balises peuvent être utilisées pour écrire des fichiers XML, quels sous-éléments peuvent être inclus dans l'élément parent, l'ordre dans lequel chaque élément apparaît, et comment définir les propriétés, etc. De cette façon, ils peuvent avoir une communication fluide lors de l’échange de données avec XML. Cette convention est appelée DTD (Document Type Definition, définition du format de document). Vous pouvez considérer une DTD comme un modèle pour écrire des fichiers XML. Pour l'échange de données XML entre une même industrie, il sera beaucoup plus pratique d'avoir une DTD fixe. Par exemple, si les pages Web XML des principaux centres commerciaux électroniques sur Internet suivent toutes la même DTD, nous pouvons alors facilement écrire une application basée sur cette DTD pour capturer automatiquement les éléments qui nous intéressent en ligne. En fait, il existe déjà plusieurs DTD bien définies, telles que MathML, SMIL, etc. mentionnées précédemment.

Si un fichier XML est bien formé et qu'il est correctement créé sur la base d'une DTD, alors le fichier XML s'appelle : Validation du fichier XML. L'analyseur correspondant s'appelle : Validating Parser.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Puis-je ouvrir un fichier XML à l'aide de PowerPoint ? Puis-je ouvrir un fichier XML à l'aide de PowerPoint ? Feb 19, 2024 pm 09:06 PM

Les fichiers XML peuvent-ils être ouverts avec PPT ? XML, Extensible Markup Language (Extensible Markup Language), est un langage de balisage universel largement utilisé dans l'échange et le stockage de données. Comparé au HTML, XML est plus flexible et peut définir ses propres balises et structures de données, rendant le stockage et l'échange de données plus pratiques et unifiés. PPT, ou PowerPoint, est un logiciel développé par Microsoft pour créer des présentations. Il fournit un moyen complet de

Convertir des données XML au format CSV en Python Convertir des données XML au format CSV en Python Aug 11, 2023 pm 07:41 PM

Convertir des données XML en Python au format CSV XML (ExtensibleMarkupLanguage) est un langage de balisage extensible couramment utilisé pour le stockage et la transmission de données. CSV (CommaSeparatedValues) est un format de fichier texte délimité par des virgules couramment utilisé pour l'importation et l'exportation de données. Lors du traitement des données, il est parfois nécessaire de convertir les données XML au format CSV pour faciliter l'analyse et le traitement. Python est un puissant

Comment gérer les formats de données XML et JSON dans le développement C# Comment gérer les formats de données XML et JSON dans le développement C# Oct 09, 2023 pm 06:15 PM

La gestion des formats de données XML et JSON dans le développement C# nécessite des exemples de code spécifiques. Dans le développement de logiciels modernes, XML et JSON sont deux formats de données largement utilisés. XML (Extensible Markup Language) est un langage de balisage permettant de stocker et de transmettre des données, tandis que JSON (JavaScript Object Notation) est un format d'échange de données léger. Dans le développement C#, nous devons souvent traiter et exploiter des données XML et JSON. Cet article se concentrera sur la façon d'utiliser C# pour traiter ces deux formats de données et les attacher.

Utiliser Python pour implémenter la vérification des données en XML Utiliser Python pour implémenter la vérification des données en XML Aug 10, 2023 pm 01:37 PM

Utiliser Python pour implémenter la validation des données en XML Introduction : Dans la vraie vie, nous traitons souvent de données diverses, parmi lesquelles XML (Extensible Markup Language) est un format de données couramment utilisé. XML a une bonne lisibilité et évolutivité et est largement utilisé dans divers domaines, tels que l'échange de données, les fichiers de configuration, etc. Lors du traitement de données XML, nous devons souvent vérifier les données pour garantir leur intégrité et leur exactitude. Cet article présentera comment utiliser Python pour implémenter la vérification des données en XML et donnera le correspondant

Convertir POJO en XML à l'aide de la bibliothèque Jackson en Java ? Convertir POJO en XML à l'aide de la bibliothèque Jackson en Java ? Sep 18, 2023 pm 02:21 PM

Jackson est une bibliothèque basée sur Java utile pour convertir des objets Java en JSON et JSON en objets Java. JacksonAPI est plus rapide que les autres API, nécessite moins de zone mémoire et convient aux objets volumineux. Nous utilisons la méthode writeValueAsString() de la classe XmlMapper pour convertir le POJO au format XML, et l'instance POJO correspondante doit être passée en paramètre à cette méthode. Syntaxe publicStringwriteValueAsString(Objectvalue)throwsJsonProcessingExceptionExampleimp

Analyse de documents XML avec des espaces de noms à l'aide de Python Analyse de documents XML avec des espaces de noms à l'aide de Python Aug 09, 2023 pm 04:25 PM

Utilisez Python pour analyser des documents XML avec des espaces de noms. XML est un format d'échange de données couramment utilisé qui peut s'adapter à divers scénarios d'application. Lors du traitement de documents XML, vous rencontrez parfois des situations avec des espaces de noms. L'espace de noms peut éviter les conflits de noms d'éléments dans différents documents XML et améliorer la flexibilité et l'évolutivité de XML. Cet article explique comment utiliser Python pour analyser des documents XML avec des espaces de noms et donne des exemples de code correspondants. Tout d’abord, nous devons importer XML.et

Quelles sont les caractéristiques syntaxiques et structurelles des expressions lambda ? Quelles sont les caractéristiques syntaxiques et structurelles des expressions lambda ? Apr 25, 2024 pm 01:12 PM

L'expression Lambda est une fonction anonyme sans nom et sa syntaxe est la suivante : (parameter_list) -> expression. Ils présentent l’anonymat, la diversité, le curry et la fermeture. Dans des applications pratiques, les expressions Lambda peuvent être utilisées pour définir des fonctions de manière concise, comme la fonction de sommation sum_lambda=lambdax,y:x+y, et appliquer la fonction map() à la liste pour effectuer l'opération de sommation.

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

See all articles