Bonjour à tous,
je pose ma dernière question sur le sujet, après j'abandonne ...
Voila le contexte, j'ai un fichier xml que je transforme avec un xsl.
Je veux avec cette transformation généré un fichier de type csv avec séparateur ;
Jusque la et grâce à votre aide, je parcours bien le xml, les element sont correctement extrait, le fichier est rempli.
MAIS j'ai un souci, dans le flux récupéré, j'ai deux balises sue j'englobe dans la balise d'origine, avec un template et une mise en forme (balise html - Merci Thelvin)
Le problème sur lequel j'explose depuis 4 jours maintenant, j'ai beau essayé de passer la commande :
<xsl:output method="html" indent="no"/>
avec le "indent" à no, en mode text à la place du html, j'ai systématiquement dans mon fichier csv des saut de ligne correspondant aux balises que je récupère et met en forme avec le html.
Même en appliquant un traitement avec un template xsl ou je vire ces 2 balises, en sortie j'ai toujours des saut de ligne.
Ce qui veut dire que mon fichier csv ne fonctionne pas car pour lui la fin de la ligne et le preimer espace qu'il va trouver suite à l'indentation des éléments.
Voici le fichier pour que ce soit plus clair :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <article idArticle="lea10018796" rubrique="juridique" dateArticle="26/04/2012">
<titrearticle>Publication des droits de vote dans les sociétés par actions</titrearticle>
<chapitre>
<titrechapitre>Les sociétés par actions non cotées ne sont plus tenues, sauf exception, de publier le nombre total de leurs droits de vote.</titrechapitre>
<refchapitre>
<lien href="http://www.legifrance.gouv.fr/affichTexte.do?cidTexte=JORFTEXT000025553296&fastPos=1&fastReqId=1905001663&categorieLien=id&oldAction=rechTexte#JORFARTI000025553375">Art. 11, loi n° 2012-387 du 22 mars 2012, JO du 23</lien>
</refchapitre>
<photo src="http://photo.expert-infos.com/lea10018796.jpg"/>
<contenu>
<paragraphe>
<texteparagraphe>Excepté les SAS, toute société par actions devait, jusqu'à maintenant, informer ses actionnaires du nombre total de droits de vote existant à la date de l'assemblée générale ordinaire (AGO), au plus tard dans les 15 jours qui suivaient cette assemblée. Information qui prenait la forme d'un avis publié dans un journal d'annonces légales.</texteparagraphe>
<texteparagraphe>
<annotation>
<titreannotation>Précision*:</titreannotation>
<texteannotation>*cette information permettait aux actionnaires d'apprécier s'ils avaient ou non franchi un seuil de participation leur imposant* de procéder à une déclaration de franchissement de seuils.</texteannotation>
</annotation>
</texteparagraphe>
<texteparagraphe>La récente loi de simplification du droit a supprimé cette obligation d'information pour les sociétés non cotées lorsque le nombre de leurs droits de vote n'a pas varié par rapport à celui de la précédente AGO.</texteparagraphe>
</paragraphe>
</contenu>
</chapitre>
</article> |
Le fichier xsl pour le traitement :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="no"/>
<xsl:template match="/">
<xsl:apply-templates select="//article"/>
</xsl:template>
<xsl:template match="annotation | titreannotation | exposant | retourligne"><i><xsl:apply-templates/></i></xsl:template>
<xsl:template match="article">
<xsl:value-of select="@idArticle" />
<xsl:text>;</xsl:text>
<xsl:value-of select="@rubrique" />
<xsl:text>;</xsl:text>
<xsl:value-of select="@dateArticle" />
<xsl:text>;</xsl:text>
<xsl:value-of select="./titrearticle"/>
<xsl:text>;</xsl:text>
<xsl:value-of select="./chapitre/titrechapitre"/>
<xsl:text>;</xsl:text>
<xsl:value-of select="./chapitre/photo/@src" />
<xsl:text>;</xsl:text>
<xsl:for-each select="./chapitre/contenu/paragraphe/texteparagraphe">
<xsl:apply-templates/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet> |
et voila mon fichier csv :
1 2 3 4
| lea10018816;social;27/04/2012;La lisibilit√© du bulletin de paie bient√¥t am√©lior√©e¬?;Une loi r√©cente pr√©voit de simplifier les bulletins de paie √ compter de l'ann√©e prochaine.;http://photo.expert-infos.com/lea10018816.jpg;La r√©cente loi de simplification du droit contient un article visant √ am√©liorer la lisibilit√© du bulletin de paie et √ r√©duire le nombre de lignes quÄôil contient, notamment celles relatives aux cotisations et contributions sociales. Deux √©tapes sont pr√©vues √ cet effet.La premi√®re, consiste √ lÄôharmonisation, au plus tard le 1er¬janvier 2013, des dispositions r√©glementaires d√©finissant les √©l√©ments n√©cessaires au calcul de diff√©rentes cotisations sociales (assurances sociales, assurance ch√¥mage, retraite compl√©mentaire).Quant √ la 2de¬√©tape, fix√©e au 1er¬janvier 2015 au plus tard, elle consiste en lÄôobligation, pour les instances charg√©es de la gestion du r√©gime dÄôassurance ch√¥mage et des r√©gimes de protection sociale compl√©mentaire, de mettre en ≈ìuvre des dispositions utiles pour que les conventions et accords n√©goci√©s tiennent compte de lÄôharmonisation des assiettes sociales.
Remarque¬:
¬une maquette du futur bulletin de paie simplifi√© a √©t√© pr√©sent√©e par le ministre du Travail le 19 mars dernier. Cette maquette se signale notamment par le regroupement de lÄôensemble des cotisations sociales salariales et patronales. |
Si vous observez le résultat du fichier csv, on voit l'indentation avant "remarque" qui provoque un saut de ligne puis encore un saut de ligne pour le texte sous la remarque qui est une nouvelle balise.
Je cherche à avoir tout les élément mais sans les indentations qui générent des saut de ligne et du coup me plante completement le fichier csv pour importation.
SVP, quelqu"un peut-il m'aider ?
Merci à vous, sinon il me reste la possibilité de poser une question dans la section php pour nettoyer le fichier de ces saut de ligne avant de l'importer ??
Partager