Bonjour à tous,
Je travaille sur un exercice avec comme consigne de créer un document un document .xsl permettant de transformer un document XML que j'ai crée en document HTML.
Mais quand je vérifie mon code avec les outils de validation en ligne j'ai systématiquement un message d'erreur concernant mon "stylesheet" mais je n'arrive pas à comprendre où se trouve mon erreur.
CODE XML
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE cv [
<!ELEMENT cv (a_propos_de_moi?, etat_civil, contact, formations, experiences_professionnelles*, langues, competences, centres_interet)>
<!ELEMENT a_propos_de_moi (#PCDATA)>
<!ELEMENT etat_civil (nom, prenom, date_de_naissance, lieu_de_naissance, situation_familiale?)>
<!ELEMENT nom (#PCDATA)>
<!ELEMENT prenom (#PCDATA)>
<!ELEMENT date_de_naissance (#PCDATA)>
<!ELEMENT lieu_de_naissance (#PCDATA)>
<!ELEMENT situation_familiale (#PCDATA)>
<!ELEMENT contact (adresse, code_postal, ville, pays, telephone*, courriel+)>
<!ATTLIST telephone type (fixe|portable) #REQUIRED>
<!ATTLIST courriel type (personnel|professionnel) #REQUIRED>
<!ELEMENT adresse (#PCDATA)>
<!ELEMENT code_postal (#PCDATA)>
<!ELEMENT ville (#PCDATA)>
<!ELEMENT pays (#PCDATA)>
<!ELEMENT telephone (#PCDATA)>
<!ELEMENT courriel (#PCDATA)>
<!ELEMENT formations (formation+)>
<!ELEMENT formation (intitule, etablissement, ville, pays, date_de_debut, date_de_fin?)>
<!ELEMENT intitule (#PCDATA)>
<!ELEMENT etablissement (#PCDATA)>
<!ELEMENT date_de_debut (#PCDATA)>
<!ELEMENT date_de_fin (#PCDATA)>
<!ELEMENT experiences_professionnelles (experience_professionnelle+)>
<!ELEMENT experience_professionnelle (fonction_exercee, entreprise, ville, pays, date_de_debut, date_de_fin?)>
<!ELEMENT fonction_exercee (#PCDATA)>
<!ELEMENT entreprise (#PCDATA)>
<!ELEMENT langues (langue+)>
<!ELEMENT langue (nom, niveau)>
<!ELEMENT niveau (#PCDATA)>
<!ELEMENT competences (competence+)>
<!ELEMENT competence (nom, niveau)>
<!ELEMENT centres_interet (centre_interet+)>
<!ELEMENT centre_interet (#PCDATA)>
]>
<?xml-stylesheet type="text/xsl" href= A_Myriam_CV_Transformation_HTML.xsl" ?>
<cv>
#a_propos_de_moi : balise optionnelle que je n'utilise pas
<etat_civil>
<nom>A</nom>
<prenom>Myriam</prenom>
<date_de_naissance>1/9/19</date_de_naissance>
<lieu_de_naissance>Maisons-Laffitte</lieu_de_naissance>
<situation_familiale>Célibataire</situation_familiale>
</etat_civil>
<contact>
<adresse>hhhhhhhhhhh</adresse>
<code_postal>hhh</code_postal>
<ville>hhhhh</ville>
<pays>France</pays>
<telephone type="fixe">01.98.37.48.67</telephone>
<telephone type="portable">06.49.99</telephone>
#la balise courriel doit apparaître au moins une fois
<courriel type="personnel">aaocom</courriel>
</contact>
<formations>
<formation>
<intitule>Liceanques</intitule>
<etablissement>Sorbonne Université</etablissement>
<ville>Paris </ville>
<pays>France</pays>
<date_de_debut>Depuis septembre 2017</date_de_debut>
</formation>
<formation>
<intitule>C2I Niveau 1</intitule>
<etablissement>Sorbonne Université</etablissement>
<ville>Paris 17ème</ville>
<pays>France</pays>
<date_de_debut>Septembre 2017</date_de_debut>
<date_de_fin>Juin 2018</date_de_fin>
</formation>
<formation>
<intitule>Baccalauréat général série scientifique</intitule>
<etablissement>Lycée Eva</etablissement>
<ville>Se</ville>
<pays>France</pays>
<date_de_debut>Septembre 2012</date_de_debut>
<date_de_fin>Juillet 2015</date_de_fin>
</formation>
</formations>
<experiences_professionnelles>
<experience_professionnelle>
<fonction_exercee>Gestion </fonction_exercee>
<entreprise>Bs</entreprise>
<ville>Nnaterre</ville>
<pays>France</pays>
<date_de_debut>Depuis le 23 avril 2019</date_de_debut>
</experience_professionnelle>
<experience_professionnelle>
<fonction_exercee>Accom</fonction_exercee>
<entreprise>Mairie de Paris</entreprise>
<ville>Paris e</ville>
<pays>France</pays>
<date_de_debut>Septembre 2018</date_de_debut>
<date_de_fin>Janvier 2019</date_de_fin>
</experience_professionnelle>
<experience_professionnelle>
<fonction_exercee>Vendeuse</fonction_exercee>
<entreprise>UNI</entreprise>
<ville>Puteaux</ville>
<pays>France</pays>
<date_de_debut>Août 2018</date_de_debut>
<date_de_fin>Octobre 2018</date_de_fin>
</experience_professionnelle>
</experiences_professionnelles>
<langues>
<langue>
<nom>Français</nom>
<niveau>Langue maternelle</niveau>
</langue>
<langue>
<nom>Anglais</nom>
<niveau>Courant</niveau>
</langue>
<langue>
<nom>Arabe</nom>
<niveau>Débutant</niveau>
</langue>
</langues>
<competences>
<competence>
<nom>Maîtrise de l'outil informatique</nom>
<niveau>Avancé</niveau>
</competence>
<competence>
<nom>Programmation</nom>
<niveau>Débutant</niveau>
</competence>
</competences>
<centres_interet>
<centres_interet>Audiovisuel</centres_interet>
<centres_interet>Ecriture</centres_interet>
<centres_interet>Informatique</centres_interet>
<centres_interet>Sport</centres_interet>
</centres_interet>
</cv>
CODE XSLT
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="4.0" encoding="UTF-8" />
<xsl:template match="/">
<html>
<head>
<title> cv Licence </title>
</head>
<body>
<xsl:call-template name="cv"/>
</body>
</html>
</xsl:template>
<xsl:template name="cv">
<h1> Nom : <xsl:value-of select="cv/etat_civil/nom" /> Prénom : <xsl:value-of select="cv/etat_civil/prenom" /></h1>
<br/>
<p>
mail: <xsl:element name="courriel"><a href="{courriel}"><xsl:attribute name="type">personnelle</xsl:attribute>aao.com
</xsl:element>
</p>
<h2>Nombre d'expériences professionnelles</h2>
<xsl:for-each select="cv/experiences_professionnelles/experience_professionnelle">
<p><xsl:value-of select="."/></p>
</xsl:for-each>
<h2>Dernière expérience professionnelle</h2>
<p>
<xsl:param name="entreprise"/>
<xsl:param select="cv/experiences_professionnelles/experience_professionnelle/fonction_exercee[last()]"/>
<xsl:variable name="$entreprise" select="./text()"/>
</p>
<h2>Dernière formation</h2>
<p>
<xsl:param name="etablissemnt"/>
<xsl:param select="cv/formations/formation[last()]"/>
<xsl:variable name="$etablissemnt" select="./text()"/>
</p>
<h2>Toutes les expériences professionnelles</h2>
<xsl:for-each select="cv/experiences_professionnelles/experience_professionnelle">
<xsl:sort select="date_de_debut" order="ascending" data-type="text\number"/>
<h3>
<xsl:value-of select="fonction_exercee"/>
</h3>
<p>
<B>entreprise</B> - <xsl:value-of select="entreprise"/>
<br/>
<B>date de début</B> - <xsl:value-of select="date_de_debut"/>
<br/>
<B>date de fin</B> - <xsl:value-of select="date_de_fin"/>
<br/>
</p>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Quelqu'un saurait-il me dire quelles sont mes erreurs ?