Simple Xpath extraction with PHP 5

This example grabs an XML file, extracts certain elements and dumps its contents (i.e. its text and texts of child nodes within a simple "pre" tag. It will not work with php 4.x or PHP 5 without XSLT support installed. Here is the kind of input this example can deal with:
 <student>
  <exercises>
     <exercise id="" creation-day="28" creation-month="11" creation-year="02" mod-day="" mod-month="" mod-year="" mod-by="" version="" status="draft">

       <staf no="14" ex-number=" 1a "/>
       <title>Home page personnelle</title>
       <url>http://tecfa.unige.ch/perso/staf/lattion/welcome.html</url>
       <description>crťer sa homepage en xhtml</description>
       <report report-url="http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex1/comment.html"/>
     </exercise>
 .......
 <exercices>
<student>
Below is the result generated by php for the following Xpath meaning get all exercise elements (nodes) whose staf child elements have the "no='14'" attribute:
//student/exercises/exercise/staf[@no='14']/..

Alternative notation (not used here): 
    "//student/exercises/exercise/staf[@no='14']/parent::*"
The source (simple-xpatch.phps or simple-xpath.text) is in this same directory. It is freeware :)

See simple-xpath2.php for nicer looking output


      
      Home page personnelle
      http://tecfa.unige.ch/perso/staf/lattion/welcome.html
      créer sa homepage en xhtml
      
    
      
      Work Page
      http://tecfa.unige.ch/staf/staf-i/lattion/
      Mise en place de la page "travaux"
      
    
      
      Personnage et bureau MOO
      http://tecfa.unige.ch:7778/objbrowse/6949/
      créer son identité sur TecfaMOO
      
    
      
      Projet "logiciel de  classement de dvd "
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex2/Projet_dtd.html
      Projet d'un logiciel de classement de dvd avec base de donnée commune sur le web. Première étape: la dtd
    
      
      Premiers Pas Avec XML
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex2/welcome.html
      Créer un dispositif affichant un contenu sous format XML. C'est la première étape du logiciel de classement de dvd
      
    
      
      Programmation PHP
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex3/welcome.html
      Création d'un quizz on-line portant sur l'origine des superstitions.
      
    
      
      JavaScript
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex4/welcome.html
      Reprise du quizz de l'exercice précédant et mise au point d'un feedback en Javascript.
      
    
      
      Exposé
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex7/welcome.html
      Exposé traitant de l'utilité des standards du Web.
      
    
      
      VRML
      http://tecfa.unige.ch/staf/staf-i/lattion/staf14/ex5/welcome.html
      Création d'un page VRML regroupant tous les liens représentatifs de la volée Iris: Homepages, Workpages, Blogs et Portails.
      
    

D.K.S.
Last modified: Fri Jan 21 12:30:15 MET 2005