Nous savons que XPath est créé pour une analyse XML. Qu'en est-il de HTML5 car il ne respecte pas nécessairement les règles XML? P>
3 Réponses :
XPath est pour interroger un domestique DOM EM>, pas analyser le balisage. Un DOM peut être généré à partir d'un document HTML, vous pouvez donc la demander avec XPath. P>
XPath, le langage de chemin XML, est une langue de requête pour sélectionner des nœuds à partir d'un document XML. [Wikipedia]: Notez n'importe quel dom alors!
Techniquement, XPath n'est pas défini pour fonctionner contre un DOM, mais contre son propre modèle de données, qui dans XPath 2.0 s'appelle XDM. Il existe une simple cartographie définie de XML à XDM, mais il est également possible de définir un mappage de HTML5 à XDM. Il n'y a pas de cartographie standard définie pour cela, mais pour la plupart, il est assez évident.
@MichaelKay - qu'entendez-vous par "assez évident"? Le mappage de la série HTML de HTML5 à DOM n'est pas évident du tout. Voulez-vous dire que la cartographie d'une série de sérialisation HTML Source DOM4 API à XDM est «assez évidente»?
Je veux dire que le moyen probable de mapper HTML5 à XDM est essentiellement la composition de la cartographie du HTML5 à dom et la cartographie de DOM à XDM et est assez évidente pour quelqu'un familier avec ces deux mappages.
Il y a 2 XMLS: XML lexical et XML analysé. XPath fonctionne contre une représentation XML analysée, telle que DOM ou XDM . Vous pouvez donc créer XML analysé à partir de Lexical HTML5, de cette façon, vous pouvez interroger HTML5 à l'aide de XPath. P>
Vous pouvez avec l'énorme mise en garde que vous ne devriez probablement pas si vous en avez aussi.
Prenez le suivant HTML: P>
<div> <p> Here is a paragraph <p> And another, is it inside the first, who knows? </p> </p> </div>