> Merci pour votre réponse, mais cela est assez obsur pour moi.
>
> Voici mon besoin :
> générer un PDF qui contiennent des relevés (techno avec Java et FOP).
> Chaque relevés contient x pages (x page avec un tableau des opérations, x
> page avec un cumul et une page avec une récapitulatif ).
> Chaque page d'un relevé a la meme entête (qui contient l'adresse du
> destinataire du relevé en question)
>
> Je réussi à le produire quand il n'y a qu'un RELEVE dans le fichier XML,
> mais cela plante quand il y en a plusieurs.
>
> Est-ce possible ? (ps j'utilise des conditional-page-master-reference
> page-position)
Le problème, je pense, c'est que vous regardez trop le detail dans votre
façon d'aborder le problème et pas assez le contexte général.
Votre problème est simple :
au chaque noeud ROOT/RELEVE vous générez une racine fop <fo:root>
donc s'il y a 2 RELEVE, il y a deux racines. Votre document XML produit
n'est donc pas correct.
Il est préférable d'aborder le problème de façon plus incrémentale. Quand
dois-je générer la racine (unique) de mon document FO ?
Quel est le noeud de mon document en entrée qui est unique et qui me
permet de définir un tel template ?
Le noeud racine me paraît être une bonne réponse donc :
<xsl:template match="/">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:str="http://xsltsl.org/string"
xmlns:html="http://www.w3.org/1999/xhtml">
<fo:layout-master-set>
...
</fo:layout-master-set>
</xsl:template>
Une seule racine sera donc générée, et de ce point de vue là, le document
en sortie sera correct.
Puis, vous pouvez poursuivre le raisonnement, sur un noeud RELEVE
que dois-je faire ?
Vous définissez alors le template adquat
<xsl:template match="RELEVE">
...
</xsl:template>
Sans oublier de conduire la transformation dans le template "/"
par un <apply-templates select="ROOT/RELEVE"/> par exemple
(après la définition du fo:layout-master-set par exemple)
et ainsi de suite...
construisez votre feuille de façon itérative et validez chaque étape...
cordialement
--
XPath free testing software : http://lantern.sourceforge.net
Frédéric Laurent http://www.opikanoba.org
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (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@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Thu Dec 23 13:27:03 2004