J’ai écris cet article pour vous aider à écrire votre CV en XML et le mettre en forme via du XSL.
Une petite formation sur le XSL ? Une petite formation sur les DTD ?
Le XSL (eXtensible Stylesheet Language) est le langage de description de feuilles de style du W3C associé à XML.
Une feuille de style XSL est un fichier qui décrit comment doivent être présentés (c’est-à-dire affichés, imprimés, épelés) les documents XML basés sur une même DTD ou un même schéma.
L’objectif principal est la transformation d’un document XML vers un autre, ou un dialecte XML (XHTML, XSL-FO, HTML, etc.). Cependant, le langage XSLT permet aussi les transformations vers tout autre type de document, au format texte ou dans un format binaire (bien que ceci ne soit pas nativement prévu par la recommandation XSLT).
Source : Wikimédia
Bon, maintenant que vous en savez un peu plus sur le contexte…voyons en détails la réalisation d’un CV au format XML.
Le fichier XML:
Developpeur CIURLIK Yohann Votre email ./img/ma_photo.png 23 Française mon_status Master 1 Informatique (IUP) Génie Mathématiques et Informatique IUP de Rouen, technopôle du Madrillet (76) Licence Informatique (IUP) mention Assez Bien Génie Mathématiques et Informatique IUP de Rouen, technopôle du Madrillet (76) Office Eclipse Java Delphi C++ Visual Basic Agenda électronique / (Nokia 6600) Symbian OS - C++ - Chef de projet (5 personnes) Logiciel de publication - Html 4.01, PHP, CSS, DOM - Développeur indépendant LSA(Specimen) - Mont Saint Aignan (76) Développeur stagiaire, responsable de projet Conception et développement de 5 sites spécialisées dans la gestion de la clientelle, des partenaires distributeurs ainsi que des consultants PHP 5 P Html 4.01 Css Dom SqlServer Serveur IIS maternelle maternelle technique technique Electronique (éléctro-jazz, lougne, deep house). Echecs, Jeux de reflexion, Ski nautique.
Le fichier XML posséde une syntaxe qui doit être conforme à notre fichier de définition (DTD) ci-dessous :
rue CDATA #REQUIRED cp CDATA #REQUIRED ville CDATA #REQUIRED > fixe CDATA #IMPLIED mobile CDATA #IMPLIED fax CDATA #IMPLIED > titre CDATA #IMPLIED > jour CDATA #IMPLIED mois CDATA #IMPLIED annee CDATA #IMPLIED lieu CDATA #IMPLIED > nom CDATA #IMPLIED > nom CDATA #IMPLIED > debut CDATA #REQUIRED fin CDATA #IMPLIED > debut CDATA #REQUIRED fin CDATA #IMPLIED > nom CDATA #IMPLIED > debut CDATA #REQUIRED fin CDATA #IMPLIED > nom CDATA #REQUIRED drapeau CDATA #REQUIRED >
Rien ne vous empêche cependant de modifier la DTD fournie afin de créer de nouvelles rubriques ou sections (je ne sais pas comment vous les appelées) afin d’ajouter des éléments à votre CV XML.
Nous avons ensuite à créer un fichier XSL qui permettra de mettre en forme le fichier XML . Ce fichier nous permettra, par l’intermédiaire d’une feuille de style CSS associée, d’avoir un rendu sympatique pour notre CV.
Le fichier XSL associé :
, | Age : ans Nationalité : Permis |
- | Spécialité : | |
Poste : Mission : Moyens : , | ||
. , | ||
Projets | . | |
Oral : | Ecrit : | |
. |
et pour finir, le fichier CSS que j’utilise :
body { font:12px Verdana,Arial,Helvetica,sans-serif; margin:0; padding:0; background-color: #2C3D4F; text-align:center; }a { text-decoration:none; color:#3E5D8F; } #photo{ border: 4px solid #DEE1E4; } table { font-size:12px; } .partTitle{ font-weight:bold; background-color:#3E5D8F; border: 1px solid #1B3C6F; padding: 2px; color: white; text-transform:uppercase } table tr { border: 1px solid #3E5D8F; } .partDate{ width: 150px; border-right: 1px solid #3E5D8F; text-align:right; vertical-align:top; font-weight: bold; } .partContent{ padding-left: 10px; } #titre { font:19px Verdana,Arial,Helvetica,sans-serif; color: #1F447F; position: absolute; margin-left: 300px; padding-top: 60px; } #top{ background:url("./img/top.png") top left repeat-y ; width: 800px; height:15px; } #body{ background:url("./img/body.png") bottom left repeat-y ; width: 800px; } #body-content { width: 750px; padding-left: 25px; text-align: left; } #bottom{ background:url("./img/bottom.png") top left no-repeat; width: 800px; height:24px; } #wrapper { width:800px; margin-left:auto; margin-right:auto; } #Nom { font-variant:small-caps; font-weight:900; font-size:16px; font-size:large; }
Nous obtenons ainsi un CV très agréable visuellement tout en gardant le coté pratique du format XML.
Vous pouvez télécharger les sources de cet article ici.
17 commentaires On Faire un CV en XML via une DTD et du XSL
Bonjour,
Juste pour signaler que c’est un très bon article 😉
Bonjour,
cet article est vraiment très pertinent et le rendu de votre CV très sobre et réussi 😉
Une petite question : Comment avez vous généré la version pdf de votre CV ?
Merci d’avance
@Damien:
Malheureusement, le seul point noir de ce système c’est bien le PDF ! Il à été généré à l’aide de PDFCreator et non à la volée.
Si quelqu’un connait un système pratique et opensource pour généré un PDF en cliquant sur un bouton de votre cv, je le veux bien…
Très riche et j’aime bien voir le CV en HTML aussi si vous voulez bien actualiser le lien de téléchargement du CV ….. Merci
Article, très intéressant et instructif. Je confirme, votre Cv est très bien présenté.
Merci beaucoup pour ce compliment. 🙂
La version plus à jour est ici :
http://www.spawn-dev.com/cv.xml
ton code part en sucette. c’est illisible.
Merci beaucoup c’est résolu.
J’avais oublié du CSS quelque part 🙂
Très intéressant, je cherche à faire pareil, je vais me baser sur ton travail.
En revanche, je ne connais pas la musique « lougne »… ce ne serait pas plutôt « lounge » ?
Oupss effectivement il y à une petite coquille dans mon cv ^^
Merci beaucoup !
Merci beaucoup pour le précieux article c’est trop intéressant comme article…
De rien Rebecca 😉
impossible de lire le code directement pour moi aussi.
pour générer un pdf a la volé j'utilise ezPDF (librairie php) ou sinon FOP (java)
bonjour je n'arrive pas a telecharger la source le lien ici ne marche pas
J'ai mis le lien à jour 😉
Merci de ton retour !
effectivement c'est une méthode intéressante pour faire un cv !
Cependant pourquoi ne pas utiliser la XSLT pour obtenir du pdf ???
Rétrolien: XSL-FO, le vocabulaire XML de mise en forme « Li's Blog ()
Barre latérale coulissante
A propos de moi
Spawnrider.Net, le blog de Yohann Ciurlik, blogueur high-tech, architecte solutions, fan d'innovation, photographe enthousiaste mais surtout gadgetophile Par l’intermédiaire de ce blog, j’espère vous faire découvrir mes passions et mes trouvailles issues du Net.
Réseaux sociaux
Récemment
Des idées cadeaux Geek pour Noël
15 décembre 2017Utilisez le cardio-fréquencemètre de sa montre Garmin sur un compteur vélo iGPSPORT IGS50E
2 décembre 2017Activer le verrouillage dynamique sous Windows 10 avec un smartphone Bluetooth
22 novembre 2017Portainer, une interface pour gérer vos containers Docker
19 octobre 2017Suivez-moi sur Twitter
Mes Tweets