IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

Supprimer xmlns et <?xml-stylesheet


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Par défaut Supprimer xmlns et <?xml-stylesheet
    Bonjour,

    Cela fait maintenant plusieurs heures que je m'arrache les cheveux à essayer de faire quelque chose qui ne me semble pourtant pas si compliqué!

    J'ai ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet alternate="yes" title="Titre" href="css/titre.css"
        type="text/css"?>
    <TEI xsi:schemaLocation="http://www.tei-c.org/ns/1.0 file:tei_blabla/tei_blabla.xsd"
         xmlns="http://www.tei-c.org/ns/1.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:xs="http://www.w3.org/2001/XMLSchema"
         xmlns:xhtml="http://www.w3.org/TR/xhtml/strict"
         xmlns:teix="http://www.tei-c.org/ns/Examples"
         xmlns:ns="http://www.tei-c.org/ns/1.0"
         xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
         xmlns:aid5="http://ns.adobe.com/AdobeInDesign/5.0/"
         xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/">
      <teiHeader>
        <fileDesc>
    et je veux ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="UTF-8"?>
    <TEI>
      <teiHeader>
        <fileDesc>
    Pour les <?xml-stylesheet je ne vois pas du tout comment faire, et pour les xmlns, j'ai beau utiliser exclude-result-prefixes, ça ne fonctionne pas.

    Toute aide sera grandement appréciée!

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Pour le <?xml-stylesheet?>, normalement ils ne sont pas copiés à moins de le demander. 'Faudrait que tu nous fasses un exemple court et que tu nous le montres.
    Euh... D'ailleurs c'est le cas pour n'importe quelle question, toujours. Ça aurait dû être fait dans le premier post.

    Pour enlever les namespaces... Ben c'est pas trop dans l'ordre des choses, alors il n'y a pas de moyen direct de le faire. Tu peux faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <xsl:template match="*">
      <xsl:element name="{local-name()}">
        <xsl:apply-templates/>
      </xsl:element>
    </xsl:template>
    Du coup, si, c'est quand même assez compliqué.

    Note : exclude-result-prefixes ne sert qu'à exclure des déclarations de namespace inutilisées. En l'occurence, au moins xmlns="http://www.tei-c.org/ns/1.0" étaît sûrement encore utilisé. Et il est probable que d'autres aussi.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 11
    Par défaut
    Bonjour,

    ma feuille de tranformation n'a rien d'exceptionnel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    29
    30
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet	version="1.0" 
    xsi:schemaLocation="http://www.tei-c.org/ns/1.0 file:ASP/asp.xsd"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:xhtml="http://www.w3.org/TR/xhtml/strict" 
    xmlns:ns="http://www.tei-c.org/ns/1.0" 
    xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty" 
    xmlns:examples="http://www.tei-c.org/ns/Examples" 
    exclude-result-prefixes="xsl xsi xs xhtml ns hfp examples">
     
    	<xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="no" indent="yes" standalone="no" media-type="text/html" />
     
     
    	<xsl:strip-space elements="*"/>
     
    	<xsl:template match="node() | @*" priority="-1">
    		<xsl:copy>
    			<xsl:apply-templates select="@* | node()"/>
    		</xsl:copy>
    	</xsl:template>
     
    	<xsl:template match="TEI">
      		<xsl:element name="{local-name()}">
        		<xsl:apply-templates/>
      		</xsl:element>
    	</xsl:template>
     
    </xsl:stylesheet>
    En fait je cherche à enlever les xmlns parce que la base de données eXist n'aime pas du tout.
    Le code que tu m'as donné n'a pas l'air de fonctionner.

    Merci pour la note, je ne savais pas!

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Bérilia Voir le message
    ma feuille de tranformation n'a rien d'exceptionnel :
    Peut-être bien, mais elle contient un template pour recopier les node() tels que. <?xml-stylesheet?> est un node().

    Remplace node() par text() pour recopier le texte tels que, mais pas les processing isntructions ni les commentaires.
    Pour les éléments, je t'ai déjà donné le template.

    J'ajoute que ta stylesheet contient plein de namespaces... Pourquoi ? Je croyais que le but était de les enlever ??

    Citation Envoyé par Bérilia Voir le message
    En fait je cherche à enlever les xmlns parce que la base de données eXist n'aime pas du tout.
    Je ne m'y connais pas en bases de données XML, mais, pour résumer, ça m'étonnerait beaucoup que ce soit une bonne solution. Cherche plutôt comment faire pour que eXist aime ça.

    Citation Envoyé par Bérilia Voir le message
    Le code que tu m'as donné n'a pas l'air de fonctionner.
    Ne te laisse pas abuser par les apparences, il fonctionne parfaitement. Il faut juste ne pas déclarer de namespaces, quand on n'en veut pas.
    Vas-y, essaie ! (Je suppose que tu n'as pas essayé, puisque je ne vois pas une once de code basé sur le mien, ici.)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Supprimer un Node avec XML::Twig
    Par SearchProblem dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2014, 16h24
  2. Ajout de la balise xml-stylesheet
    Par warmup27 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 25/05/2009, 15h36
  3. [JDOM] Modifier le xml-stylesheet
    Par wwave dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 07/10/2008, 15h13
  4. supprimer ligne de fichier xml
    Par wajdiisi2007 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 22/08/2007, 17h09
  5. [DOM] ajouter le préfixe <?xml-stylesheet>
    Par phoebe dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 29/03/2004, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo