logo       

Re: récupérer tous les enfants (directs ou "indirects") de premiers niveau : msg#00088

Subject: Re: récupérer tous les enfants (directs ou "indirects") de premiers niveau ?
En effet, et la solution est encore plus simple,

sur votre exemple, le xsl suivant :

<xsl:stylesheet  xmlns:xsl = "http://www.w3.org/1999/XSL/Transform";
version="1.0">
  <xsl:output method="xml" indent="yes"/>

  <xsl:template match="root|A">
    <xsl:copy>
      <xsl:copy-of select="@id"/>
      <xsl:apply-templates/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>


Produit :

<root>
 <A id="context">
   <A id="1">
     <A id="1.1"/>
     <A id="1.2"/>
   </A>
   <A id="2"/>
    <A id="3">
    <A id="3.1"/>
   </A>
 </A>
</root>

N'est ce pas le résultat que vous escomptez ?

Stéphane.

Tiscar Sebastien wrote:

>faux car on risque de récupérer plusieurs fois les mêmes éléments A
>à des niveaux différents
>il faut je pense executer un template de manière récursive sur chaque
>élément A qui s executera ensuite sur les enfants et ainsi de suite.
>
>
>Sébastien TISCAR ASTASIO
>
>
>
>----- Original Message -----
>From: "Stéphane Bonhomme" <s.bonhomme@xxxxxxxxxx>
>To: <xml-tech@xxxxxxxxx>
>Sent: Friday, September 23, 2005 9:31 AM
>Subject: [xml-tech] Re: récupérer tous les enfants (directs ou "indirects")
>de premiers niveau ?
>
>
>Bonjour,
>
>Le template suivant devrait convenir (avec conservation de l'attribut id)
>
><xsl:template match="root|A">
>  <xsl:copy>
>    <xsl:copy select="@id"/>
>    <xsl:apply-templates select=".//A"/>
>  </xsl:copy>
></xsl:template>
>
>Stéphane.
>
>Matthieu Ricaud wrote:
>
>  
>
>>Bonjour !
>>
>>J'ai un problème de requête xpath, il y a peut être une solution évidente
>>mais je ne la voit pas...
>>Le sujet n'étant pas très clair je m'explique.
>>Soit le xml suivant :
>><root>
>> <A id="context">
>><foo>
>>       <A id="1">
>>         <A id="1.1"/>
>>         <bar>
>>           <A id="1.2"/>
>>         </bar>
>>       </A>
>>     </foo>
>>     <A id="2"/>
>>     <fred>
>>       <waldo>
>><A id="3">
>><A id="3.1"/>
>>           </A>
>>       </waldo>
>>     </fred>
>> </A>
>></root>
>>
>>J'ai réjouté ici des id histoire de clarifier les choses mais il n'y en a
>>pas dans mon cas réél.
>>A partir du noeud <A id="context"> je voudrais récupérer "chaque premier
>>enfant A recontré" c'est à dire ici :
>><A id="1">
>><A id="2">
>><A id="3">
>>
>>En fait j'aimerais récupérer la hiérarchie des noeuds A en faisant
>>abstraction des autres neouds foo, bar, fred etc...
>>
>>J'imagine quelque chose de ce type :
>>
>><xsl:template match="root">
>> <xsl:for-each select="A//A[prédicat indiquant qu'il n'y a pas de noeud A
>>entre les deux]">
>>    A<xsl:value-of select="@id"/>
>> </xsl:for-each/>
>></xsl:template>
>>
>>Si quelqu'un a une idée ?
>>Merci d'avance,
>>
>>Matthieu.
>>
>>
>>--
>>Devenez redacteur <XML>fr et contribuez au developpement du
>>xml francophone (http://xmlfr.org/infos/redacteurs/) !
>>
>>Liste de diffusion "xml-tech@xxxxxxxxx" (http://xmlfr.org).
>>
>>Cette liste est a votre disposition pour discuter en francais de
>>tout sujet technique lie a XML.
>>
>>Pour resilier votre abonnement, envoyez un message contenant
>>la commande "unsubscribe" a xml-tech-request@xxxxxxxxx
>>(mailto:xml-tech-request@xxxxxxxxx?Subject=unsubscribe)
>>
>>
>>
>>
>>    
>>
>
>
>--
>    Stéphane Bonhomme           --           Exselt Services
>
>Formations, Conseil et Réalisations en Ingénierie Documentaire,
>   Technologies Web et Logiciels Libres
>      s.bonhomme@xxxxxxxxxx   -   http://www.exselt.com
>         04 76 17 09 40        /      06 88 57 27 08
>
>
>
>--
>Devenez redacteur <XML>fr et contribuez au developpement du
>xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
>Liste de diffusion "xml-tech@xxxxxxxxx" (http://xmlfr.org).
>
>Cette liste est a votre disposition pour discuter en francais de
>tout sujet technique lie a XML.
>
>Pour resilier votre abonnement, envoyez un message contenant
>la commande "unsubscribe" a xml-tech-request@xxxxxxxxx
>(mailto:xml-tech-request@xxxxxxxxx?Subject=unsubscribe)
>
>
>
>
>--
>Devenez redacteur <XML>fr et contribuez au developpement du
>xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
>Liste de diffusion "xml-tech@xxxxxxxxx" (http://xmlfr.org).
>
>Cette liste est a votre disposition pour discuter en francais de 
>tout sujet technique lie a XML.
>
>Pour resilier votre abonnement, envoyez un message contenant 
>la commande "unsubscribe" a xml-tech-request@xxxxxxxxx
>(mailto:xml-tech-request@xxxxxxxxx?Subject=unsubscribe)
>
>
>  
>


-- 
    Stéphane Bonhomme           --           Exselt Services

Formations, Conseil et Réalisations en Ingénierie Documentaire,
   Technologies Web et Logiciels Libres
      s.bonhomme@xxxxxxxxxx   -   http://www.exselt.com
         04 76 17 09 40        /      06 88 57 27 08





Ruby Jobs
Java Jobs
Jobs in California
more...
what
job title, keywords
where
city, state, zip
jobs by job search
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
linux.drivers.b...    security.firewa...    mathematics.lps...    web.zope.plone....    x25/2005-12/msg...    culture.tv.sout...    pld.user.polish...    qplus.devel/200...    version-control...    openbsd.bugs/20...    distributions.g...    gnu.chess.bugs/...    redhat.release....    emacs.bugs/2002...    java.bio.genera...    ataraid/2005-01...    finance.moneyda...    hardware.microc...    netbsd.ports.xe...    bug-tracking.gn...    text.xml.saxon....    kde.linux/2002-...   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo