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 :

Xml vers Html via xslt en Dublin Core


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2018
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Xml vers Html via xslt en Dublin Core
    Bonjour,

    Je cherche à parser un fichier xml via une feuille xslt et xpath, j'arrive à afficher uniquement le titre mon document contient plusieurs balises en format Dublin core avec des balises préxées par des "dc:title", "dc:creator" etc.
    J'arrive à afficher uniquement le titre je ne sais pas pourquoi,

    j'ai remarqué que ce URI "http://www.w3.org/1999/xhtml.xsd" mène vers une page sans ressource, faut t-il le redéfinir en local / l'ignorer ?

    Merci d'avance pour l'aide !

    j'avoue que je suis novice dans le web sémantique.

    Voici mon code :
    fiche.xml
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet href="fiche.xslt" type="text/xsl"?>
     
    <metadata
      xmlns="http://www.w3.org/1999/xhtml"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.w3.org/1999/xhtml http://www.w3.org/1999/xhtml.xsd"
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      xmlns:dcterms="http://purl.org/dc/terms/">
     
     
    <dc:title>Heros</dc:title>
    <dc:creator> Jean-Jack</dc:creator>
    <dc:subject xml:lang="fr">Mythologie</dc:subject>
    <dc:subject xml:lang="fr">Grecque</dc:subject>
    <dc:description xml:lang="fr">Célébration des Dieux de l'Olympe</dc:description>
    <dc:publisher>Maison des artistes</dc:publisher>
    <dc:contributor>Jean, Patrick, Gérard</dc:contributor>
    </metadata>
    Fichier fiche.xslt
    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
     
    <xsl:stylesheet version="1.0" 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   
        xmlns:dc="http://purl.org/dc/elements/1.1/">
     
        <xsl:template match="metadata">
            <html>
               <head>
                  <xsl:apply-templates select="dc:title"/>
                  <link rel="stylesheet" type="text/css" href="fiche.css"/>
               </head>
               <body>
               </body>
            </html>
        </xsl:template>
     
        <xsl:template match="dc:title">    
            <title>
                <xsl:apply-templates />
            </title>
        </xsl:template>
     
    </xsl:stylesheet>

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    octobre 2011
    Messages
    1 490
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 1 490
    Points : 2 616
    Points
    2 616
    Par défaut
    En fait, l'écriture du xslt pose plus de problèmes que ce qu'on pense en regardant le rendrement dans un navigateur. Voici comment faire pour corriger tout ça.
    Code xslt1 : 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
    <xsl:stylesheet version="1.0" 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:ns="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/1999/xhtml"
        exclude-result-prefixes="dc ns">
     
        <xsl:output method="html" encoding="utf-8" omit-xml-declaration="yes" indent="yes" />
        <xsl:template match="ns:metadata">
            <html>
               <head>
                  <xsl:apply-templates select="dc:title"/>
                  <link rel="stylesheet" type="text/css" href="fiche.css"/>
               </head>
               <body>
               </body>
            </html>
        </xsl:template>
     
        <xsl:template match="dc:title">    
            <title>
                <xsl:apply-templates />
            </title>
        </xsl:template>
     
    </xsl:stylesheet>

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2018
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci pour ta réponse,
    En effet, je suis habitué au standards HTML/CSS, le xml/xslt est un prisme différent.

    Mon navigateur en local affiche effectivement une liste de mes données ! (pas sur un serveur distant)

    J'ai donc mis en forme le fichier xslt pour avoir ce qui ressemblerai à un formatage HTML CSS
    Mais le rendu est toujours sur une seule ligne !

    Nom : xml-xslt.png
Affichages : 22
Taille : 3,3 Ko

    Voici le fichier avec les nouvelles modifs :

    fiche.xslt
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <xsl:stylesheet version="1.0" 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   
        xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:ns="http://www.w3.org/1999/xhtml"
        xmlns="http://www.w3.org/1999/xhtml"
        exclude-result-prefixes="dc ns">
     
        <xsl:output method="html" encoding="utf-8" omit-xml-declaration="yes" indent="yes" />
        <xsl:template match="ns:metadata">
            <html>
                <head>
                    <link rel="stylesheet" type="text/css" href="fiche.css"/>
                </head>
                <body>
     
                <div class="titre">
                    <h2>Titre :</h2> 
                    <xsl:apply-templates select="dc:title"/>
                </div>
                <div class="createur">
                    <h2>Créateur :</h2> 
                    <xsl:apply-templates select="dc:creator"/>
                </div>
                <div class="sujet">
                    <h2>Sujet :</h2>
                    <xsl:apply-templates select="dc:subject"/>
                </div>
                <div class="publicateur">
                    <h2>Publié par :</h2>
                    <xsl:apply-templates select="dc:publisher"/>
                </div>
                <div class="contribution">
                    <h2>A contribué : </h2>
                    <xsl:apply-templates select="dc:contributor"/>
                </div>
                </body>
            </html>
        </xsl:template>
     
    </xsl:stylesheet>
    fiche.xml
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet href="fiche.xslt" type="text/xsl"?>
     
    <metadata
      xmlns="http://www.w3.org/1999/xhtml"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.w3.org/1999/xhtml http://www.w3.org/1999/xhtml.xsd"
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      xmlns:dcterms="http://purl.org/dc/terms/">
     
     
    <dc:title>Heros</dc:title>
    <dc:creator> Jean-Jack</dc:creator>
    <dc:subject xml:lang="fr">Mythologie</dc:subject>
    <dc:subject xml:lang="fr">Grecque</dc:subject>
    <dc:description xml:lang="fr">Célébration des Dieux de l'Olympe</dc:description>
    <dc:publisher>Maison des artistes</dc:publisher>
    <dc:contributor>Jean, Patrick, Gérard</dc:contributor>
    </metadata>
    Code CSS : 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
    .container {
        display: grid;
        grid-template-columns: 2fr 1fr;
    }
     
    .item {
        padding: 20px;
    }
    .item:nth-child(odd) {
     
        background: rgb(130,180,250);
    }
    .créateur {
        padding: 20px;
    }
    .Sujet {
        padding: 20px;
    }
    .publictauer {
        padding: 20px;
    }
    .contribution {
        padding: 20px;
    }
     
    item:nth-child(enven) {
     
        background: rgb(100,200,200);
    }

Discussions similaires

  1. xml vers html via xslt
    Par julien.63 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 23/10/2007, 10h16
  2. [XSLT] Affichage des balises xml en html via une xslt
    Par Eileen dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 20/04/2007, 15h53
  3. [XSLT] XML vers HTML
    Par SONY30 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 05/04/2007, 08h54
  4. [XSLT] probleme de copie de balise de XML vers HTML via XSL
    Par Clercq dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 27/11/2006, 13h52
  5. newbie : fichier xml vers html via command-line
    Par morti dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 08/11/2005, 07h34

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