Xpath XPath is a language for finding information in an XML document.

Slides:



Advertisements
Présentations similaires
Ce, Cette, Ces Ce/Cette/Ces means this, that or these. Ce is used for masculine nouns Cette is used for feminine nouns Cette is used for feminine nouns.
Advertisements

XML.
1 3.Langage XSL = XSLT + XSL-FO transformationFormatage.
DOM Document Object Model. Généralités Standard du W3C Parseur XML – Génération dun arbre dobjet – Construction totale de larbre DOM est spécifié en IDL.
Transformation de documents XML
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
Mme Prosser. Module 1: Un monde de cultures Module 2: Lenvironnement et la culture Module 3: Quelques éléments de la culture Module 4: Les expressions.
Introduction à XSLT - cours 4
Cours MIAGE Henry Boccon-Gibod 1 XML, langage de structuration documentaire Langage de transformation et langage d'interrogation.
XML schema Objectifs Valider un doc. XML pour des contraintes syntaxiques Documenter un type de documents XML caractérisé par des contraintes Encadrer.
XHTML EXtensible HyperText Markup Language. HTML et XML HTML (HyperText Markup Language) et XML (eXtensible Markup Language) sont deux spécifications.
Cours 2 : Transformation de documents XML
le langage les éléments
Les fonctions de XPath et XSLT
Domaines nominaux XSLT
Tutoriel XSLT F. Sajous ERSS – 01/04/2005.
Manipulation d’XML avec XSL
Outils de Gestion de Connaissances:XML DESS-IGSI- FC-2002/2003 B. Rothenburger Outils de Gestion de Connaissances:XML DESS-IGSI-FC-2002/2003 B. Rothenburger.
Cours XSLT/XPath - Yves Laborde
Introduction aux Web Services Partie 1. Technologies HTML-XML
XQuery 1. Introduction 2. Modèle de données 3. XQuery par l'exemple
CYCLE 3 : Alternatives Faire des choix dans un programme en C 1- AIGUILLAGE SIMPLE sur CONDITION : if-else 2-AIGUILLAGE MULTIPLE sur CONDITIONS if-else.
XML-Family Web Services Description Language W.S.D.L.
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
© 2007 P. Van Roy. All rights reserved. 1 FSAB1402: Informatique 2 La Concurrence Déclarative Peter Van Roy Département dIngénierie Informatique, UCL
Mise en œuvre du langage MDX - 1 ère partie- Présentation de lexemple et des outils utilisés -1-
Nous avons visité… Unité 3: Voyageons!.
Introduction à DOM Maroua Bouzid
Langages du Web Sémantique
Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM.
Le PHP – la base Les commentaires */ ?>. Le PHP – le terminateur dinstruction Le point virgule Le point virgule est utilisé pour terminer une"; echo instruction.
SEG 3601 Élaboration de cas d'utilisation avec UCEd
Historique de SystemC Regroupe 4 courants didées: SCENIC Project : Synopsys+UC Irvine Philips System-Level Data Types, VSIA SLD DWG IMEC, Hardware-Software.
Cours N°2 Base de Données & Langage SQL
Complément Le diagramme des classes
Arbres Rouge noir Démo : INF3105 Structures de données et algorithmes
Structures de données IFT-2000 Abder Alikacem La librairie STL du C++ Département dinformatique et de génie logiciel Édition Septembre 2009.
Xpath XML Path language par Yves Bekkers
XSLT Langage de transformation darbre par Yves Bekkers.
Mise en œuvre du langage MDX
Rappel (très) succint d’éléments techniques (XML, DTD, XSL, PHP)
1 CSI 2532 Lab5 Installation de JDBC Février 13, 2012.
M. Larooussi Formatage de documents - CSS École dété INSAT Août 2006.
Le Baromètre Zone Cours : un environnement pour la micro-évaluation de ressources pédagogiques* Jacques Raynauld Olivier Gerbé HEC Montréal, MATI Montréal.
CLS algorithm Step 1: If all instances in C are positive, then create YES node and halt. If all instances in C are negative, create a NO node and halt.
Description de documents XML multistructurés au moyen de nœuds retards Jacques Le Maitre LSIS Université du Sud Toulon-Var.
Youll be content if you learn this content. What is an adjective? What do adjectives do? Are colors adjectives?
XSLT : trier et mettre en valeur le contenu d’un document XML
Support des connaissances TP2 XSL-T
Données sous XML Stéphane Marchand-Maillet Groupe Viper Vision par Ordinateur et Multimédia CUI – Université de Genève
LANGAGE PASCAL Introduction rapide….
8 - XML Cours XML.
PHP & My SQL.
Les outils de base : XPath, XSL, XLink, XForms
Les pronoms interrogatifs. Step 1: avec des prépositions  If the expression requires a preposition, the choices of pronouns differ  Common prepositions:
XSLT : XML Stylesheet Language Transformation
XSL eXtensible Stylesheet Language Historique 1999: XSLT 1.0 et XPATH 1.0 : versions supportées par la plupart des outils depuis février 2007 XSLT 2.0.
Techniques de R éé criture et Transformations Pierre-Etienne Moreau.
Mise en œuvre du langage MDX
XPath XML Path UP Web Année universitaire
Publication et Traitement avec XSL
MJ. Blin et M. CsernelPoleInfo31 XML et ses environnements Documents XML bien formés Prologue Arbre d'éléments Attributs Commentaires Entités internes.
Sélection de colonnes (la projection)
 G. Gardarin Les outils de base: Publication avec XML 1. XPATH 2. XSLT 3. XSLFO 4. XLink, XForms, RSS, … 5. XML et la bureautique.
Module : Langage XML (21h)
XPath Intro 1 Notation 2 Exemples 3 Utilisations de XPath
XSLT. Les documents XML peuvent avoir dans leur prologue une instruction de traitement xml-stylesheet. Cette instruction de traitement indique au navigateur.
XPath XML Path language Yves Bekkers Mise à jour : 9 octobre 2003.
20 Données semi-structurées et XML
Transcription de la présentation:

Xpath XPath is a language for finding information in an XML document.

training

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

Introduction Chaque document XML est une instance d'un arbre XML. XPath est un langage général d'adressage dans cet arbre XML.

Remarques Le nœud racine est unique et obligatoire Il ne faut pas le confondre avec l'élément document, souvent appelé racine du document. Cette distinction est justifiée par le fait que quatre types de nœuds différents peuvent être fils du nœud racine. le nœud déclaration de domaine les instructions de traitement les commentaires l'élément document qui est unique Si les nœuds sont ordonnés, les attributs ne le sont pas, ainsi nous ne pourrons pas recherche le nième attributs.

LocationPath [1] LocationPath ::= RelativeLocationPath | AbsoluteLocationPath [2] AbsoluteLocationPath ::= '/' RelativeLocationPath? | AbbreviatedAbsoluteLocationPath [3] RelativeLocationPath ::= Step | RelativeLocationPath '/' Step | AbbreviatedRelativeLocationPath Un RelativeLocationPath sert à sélectionner un ensemble de noeuds basés sur leur position par rapport au noeud contextuel. Un AbsoluteLocationPath sert à sélectionner un ensemble de noeuds basées sur leur position dans le document par rapport au noeud racine.

Récursivité [1] LocationPath ::= RelativeLocationPath | AbsoluteLocationPath [2] AbsoluteLocationPath ::= '/' RelativeLocationPath? | AbbreviatedAbsoluteLocationPath [3] RelativeLocationPath ::= Step | RelativeLocationPath '/' Step | AbbreviatedRelativeLocationPath Un RelativeLocationPath sert à sélectionner un ensemble de noeuds basés sur leur position par rapport au noeud contextuel. Un AbsoluteLocationPath sert à sélectionner un ensemble de noeuds basées sur leur position dans le document par rapport au noeud racine.

Exemple /child::doc /child::chapter[position()=5]/ child:: section[ position()= 2] selects the second section of the fifth chapter of the doc document element

Exemple child::para [position()=2][attribute::pe="warning"] selects the second para child of the context node if that child has a type attribute with value warning

Naviguer dans les documents XML avec XPath Le langage dadressage utilise des chemins pour désigner un ensemble dobjets Une étape de localisation se fait en 3 temps : un axe, est un chemin à travers l'arbre du document, débutant au nœud origine et suivant une relation particulière entre les nœuds. un filtre, qui spécifie le type du noeud obtenus par l'étape de localisation 0 ou n prédicats, qui sont des expressions arbitraires pour raffiner l'ensemble des noeuds

Exemples child::para[ position()=5][attribute::type="warning"] selects the fifth para child of the context node if that child has a type attribute with value warning Une étape de localisation se fait en 3 temps : un axe, est un chemin à travers l'arbre du document, débutant au nœud origine et suivant une relation particulière entre les nœuds. un filtre, qui spécifie le type du noeud obtenus par l'étape de localisation 0 ou n prédicats, qui sont des expressions arbitraires pour raffiner l'ensemble des noeuds

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

AxisName Un AxisName est utilisé dans un Step pour identifier un chemin à suivre depuis un nœud donné vers les autres nœuds liés. AxisName ::= | 'ancestor' | 'ancestor-or-self' | 'attribute' | 'child' | 'descendant' | 'descendant-or-self' | 'following' | 'following-sibling' | 'namespace' | 'parent' | 'preceding' | 'preceding-sibling' | 'self'

| 'ancestor'

1 2

'ancestor-or-self'

'ancestor-or-self' 2 3 1

| 'child'

1 2

| 'descendant'

| 'descendant-or-self'

| 'following'

1 32 4

| 'following-sibling'

1 2

| 'parent'

1

| 'preceding'

3 12

| 'preceding-sibling'

1

| 'self' 1

AxisSpecifier Un AxisSpecifier est soit un nom d'axe, soit une abréviation pour un nom d'axe. Il définit une direction de navigation à travers le document en définissant une liste ordonnée de nœuds qui peuvent être visités. AxisSpecifier ::= AxisName '::' | AbbreviatedAxisSpecifier [13] AbbreviatedAxisSpecifier ::=

Exemple ancestor:: spécifie l'axe ancêtre Preceding-sibling:: Spécifie l'axe enfant spécifie l'axe attribut

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

Predicate Un prédicat est une expression qualificative utilisée pour sélectionner un sous ensemble des noeuds d'une ensemble de noeuds ou de Step. [8] Predicate ::= '[' PredicateExpr ']' # noter les []PredicateExpr [9] PredicateExpr ::= ExprExpr

Exemple Para[ 1] ou Para[ position()=1] Le premier élément enfant du noeud contextuel para[ last()] le dernier élément enfant du noeud contextuel.

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //CCC/self::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //CCC/child::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //CCC/parent::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //DDD/descendant::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //DDD/ancestor::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //GGG/preceding::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //GGG/preceding-sibling::*

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute //*[attribute::id]

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

FilterExpr FilterExpr est utilisé pour appliquer un ou plusieurs Predicates à un ensemble de noeuds, en sélectionnant un sous ensemble de ces noeuds satisfaisant certaines conditions. [20] FilterExpr ::= PrimaryExpr| FilterExpr PredicatePrimaryExprFilterExprPredicate

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute Les filtres: /, *, element Les prédicats: [expression], les opérations: +, -, *, div, mod, >, >=, <, <=, =, != Syntaxe abrégée: /AAA/*/DDD/*

Naviguer dans les documents XML avec XPath Introduction Les axes Les filtres Les prédicats Les fonctions prédéfinies Syntaxe abrégée

Naviguer dans les documents XML avec XPath (3) Les axes: self, child, parent, descendant, descendant-or-self, ancestor, ancestor-or-self, preceding, preceding-sibling, following, following-sibling, attribute Les filtres: /, *, element Les prédicats: [expression], les opérations: +, -, *, div, mod, >, >=, <, <=, =, != Syntaxe abrégée: //BBB[attribute::id=bbb]

Syntaxe abrégée./totoself::toto totochild::toto (et non //toto/descendant-or-self::node()/child::toto.//totodescendant-or-self::node()/child::toto toto[2]child::toto[position() = 2]