XML et DTD

Pour commencer

Voici la recette des spaghettis bolognaise :

Recette de Spaghettis à la sauce Bolognaise
pour 6 personnes
ingrédients : 
- 900 gr spaghettis
- 6 tomates
- 3 oignons
- 300 gr boeuf haché
- 300 gr porc haché
- huile d'olive
- ail
- thym
- sel
- poivre
- parmesan
Préparation : 20 minutes
Cuisson : 2h
Difficulté : facile

- Emincez les oignons. Faites les revenir dans une poêle à
  l'huile d'olive. Ajoutez la viande mélangée. Laissez 5 min sur feu vif.

- Ajoutez les tomates fraîches coupées en cubes, avec une gousse
  d'ail hachée et du thym. Salez, poivrez. Laissez mijoter environ 2
  heures sur feu doux

- Faites cuire les 900 gr. de spaghettis dans un grand volume
  d'eau bouillante salée, avec une cuiller à soupe d'huile
  d'olive. Surveillez la cuisson et arrêtez la quand les pâtes sont
  cuites mais craquent légèrement sous la dent ("al dente").

- Servez les spaghettis avec la sauce chaude et du parmesan
  frais rapé. Bon appétit!

Proposez une structuration en un document XML de cette recette. Conservez le résultat dans spaghettisBolo.xml.

Vous lui associerez une feuille de style pour lui donner une légère mise en forme. Regardez le rendu de votre document avec votre navigateur préféré.

Ecrivez votre CV en XML dans un document cv.xml. Vous ferez attention à l'organisation de votre document. Votre CV doit contenir, outre votre état-civil, une partie sur vos diplômes et études, une partie sur vos expériences professionnelles, et une partie sur ... tout le reste qui vous semble pertinent (langues étrangères, ...).

Ajoutez une feuille de style pour effectuer la mise en forme. Regardez également le rendu de votre document avec votre navigateur.

Définition de Type de Document

Pour vérifier la validation de documents XML, nous allons utiliser xmllint. xmllint est une commande en ligne qui permet d'analyser en document XML et, entre autres, de vérifier sa validité par rapport à une DTD. Utilisez l'option --valid (et le manuel d'aide man xmllint).

Ecrivez une DTD pour votre recette dans recette.dtd. Ajoutez à spaghettiBolo.xml une déclaration de type de document faisant référence à recette.dtd. Validez votre document.

Voici une recette de tajine d'agneau aux pruneaux :

Recette : tajine d'agneau aux pruneaux
Préparation : 20 mn
Cuisson : 1h30
Difficulté : simple
Prix : 3

Ingrédients (pour 6 personnes) :

- 500 g de pruneaux
- du thé chaud
- 500 g oignons
- huile d'olive
- 1,5 kg d'épaule d'agneau coupée en morceaux
- 2 gousses d'ail
- 1/2 cuillère à café de cannelle
- 1/2 cuillère à café de gingembre
- 1 dosette de safran
- quelques grains de coriandre écrasés
- 100 g amandes émondées
- 3 cuillères à soupe de miel


Préparation :

Faites tremper les 500 g de pruneaux dans du thé chaud. Faites revenir
les oignons émincés dans l'huile d'olive. Quand ils sont dorés,
retirez-les et remplacez-les par la viande.

Lorsque les morceaux sont bien dorés, mettez-les dans une cocotte avec
les oignons. Salez et poivrez. Ajoutez l'ail écrasé, la cannelle, le
gingembre, le safran et les grains de coriandre. Couvrez d'eau et
faites cuire 1 heure à feu doux.

Ajoutez ensuite les pruneaux égouttés, puis poursuivez la cuisson 20
min à couvert.

Faites revenir les amandes dans un peu de beurre chaud. Egouttez-les
puis ajoutez-les à la viande avec le miel.

Laissez cuire encore 5 min sans couvrir.

Servez accompagné de semoule de couscous.
	

Écrivez une version XML de cette recette dans le fichier tajine.xml. Vérifiez sa validité par rapport à la DTD recette.dtd.

Ecrivez une DTD pour votre CV dans cv.dtd. Ajoutez à cv.xml une déclaration de type de document faisant référence à cv.dtd. Validez votre document.

Oiseaux

Vous trouverez en annexe un document oiseaux.xml. Il décrit une collection de fiches d'observations ornithologiques. Dans chaque fiche, les espèces observées sont notées, avec leur nom, le nombre d'individus observés, et le nom de la famille de l'espèce. Eventuellement, peuvent être ajoutés une description et une photo. Ce document sert d'exemple et votre réponse doit pouvoir s'appliquer à d'autres documents XML ayant la même structure.

Proposez une DTD pour ce type de document.