Question

J'ai essayé de lire http://www.w3.org/TR/xml -infoset / et la entrée wikipedia . Mais franchement, je ne suis toujours pas sûr de la différence.

La citation:

  

Un document XML a un ensemble d'informations   si elle est bien formée et satisfait aux   contraintes d'espace de noms. Il n'y a pas   l'exigence qu'un document XML soit   valide pour avoir une information   définir.

D'après l'entrée de Wikipédia, cela n'a pas de sens. Comment un document non valide peut-il avoir une sémantique, et donc comment peut-il s'agir d'un ensemble 'd'information'?

Qu'est-ce que cet 'infoset' qui

  

bien formé et satisfait à l'espace de noms contraint

XML a? Et en quoi cela est utile en soi. En d'autres termes, pourquoi est-il sémantiquement nécessaire de définir l'infoet XML ? Existe-t-il des informations qui ne peuvent pas être représentées en XML? Si c'est le cas, je peux voir l'ensemble limitatif de l'ensemble d'informations XML, mais si ce n'est pas sûr, l'ensemble d'informations XML est aussi vide de sens que le terme "information"?

Merci pour vos réponses intéressantes: Je ne comprends toujours pas pourquoi l’infoset XML a un but quelconque par opposition au terme infoset. Mais vous m'avez donné la réponse directe à la question .

Autres conseils

XML n'est pas du texte. XML & Quot; est & Quot; l'infoet XML. Cela peut ensuite être sérialisé en texte dans un document XML, mais c’est l’ensemble d’informations XML qui est la réalité.

L'infoset peut exister en mémoire sous forme d'arborescence DOM, par exemple. Il existe en mémoire comme implémentation d’un modèle objet abstrait.

Et si je le numérotais comme UTF-8 puis comme UTF-16. Les chances sont que les résultats seraient deux ensembles différents de bits, mais le même infoset.

Considérez également qu’avec le texte, il est logique de faire des choses comme la concaténation de chaînes. Vous ne voulez pas concaténer un & Quot; & Lt; & Quot; au milieu d'un élément XML. Vous devez d'abord l'encoder. Pourquoi devriez-vous faire cela s'il ne s'agissait que de texte? Si vous utilisiez le DOM, par exemple, vous diriez simplement element.InnerText = & "; & Lt; &" ;; Lorsqu’il est sérialisé, le & Quot; & Lt; & Quot; serait encodé en " & amp; lt; " ;. Pourtant, c'est le même jeu d'informations.

Un document XML valide répond aux exigences d'une DTD ou d'un XSD (ou d'autres normes). Si elle est bien formée, elle peut toujours être "invalide" si elle enfreint les règles de la DTD ou XSD donnée.

Éditer: cette zone de XML est nouvelle, mais il semble que l’infoset soit la description «au niveau abstrait» des parties d’un document XML, indépendamment de l’implémentation technique réelle - ce qui pourrait être, par exemple, une Implémentation du modèle d'objet de document.

Un ensemble d'informations XML est un ensemble abstrait de concepts, tels que des attributs et des entités, pouvant être utilisés pour décrire un document XML valide. Selon la spécification, & "Le jeu d'informations d'un document XML se compose d'un certain nombre d'informations; l'ensemble d'informations pour tout document XML bien formé contiendra au moins un élément d'information de document et plusieurs autres. "

Ce n'est pas parce qu'un document XML est un ensemble d'informations qu'il est conforme à un XSD et qu'il s'agit d'un document XML valide.

Veuillez consulter ce lien à partir de MSDN. http://msdn.microsoft.com/en-us/library/aa468561.aspx

C’est une très bonne explication des concepts et, je l’espère, vous le leur expliquera.

Le PDF de WCF de David Chappell est un bon exemple que je viens de trouver. . Voici comment cela fonctionne avec TCP, par exemple:

  

Pour permettre des performances optimales lorsque les deux   les parties dans une communication sont construites   sur WCF, le codage de fil utilisé dans ce   cas est une version binaire optimisée de   SAVON. Les messages sont toujours conformes à la   structure de données d'un message SOAP,   appelé son Infoset, mais leur   l'encodage utilise une représentation binaire   de cet infoset plutôt que la   angle standard entre crochets et texte   format de XML. Utiliser cette option serait   logique pour communiquer avec le   application client du centre d'appels, depuis   il & # 8217; est également construit sur la WCF, et   la performance est une préoccupation primordiale.

XML est un langage, il a donc une syntaxe et XML Infoset spécifie le modèle de données, ce qui est dû au fait que les applications ont des besoins basés sur le modèle de données plutôt que sur la syntaxe. XML vient avant XML Infoset; Référence: considérations de protocole pour l'accès Web Linkbase

Le jeu d'informations XML est indispensable à la structure du document XML sérialisé.

Le XML sérialisé peut avoir différentes formes, comme certains formats binaires ( Fast Infoset ) ou du texte. (forme la plus populaire).

Fondamentalement, pour le format de document XML (texte), chaque élément et attribut doit être défini dans l’espace de noms XSD correspondant.

Vous trouverez ici un exemple.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top