Le but de ce projet est de convertir par un programme en Python, au format XML, un ensemble de données brutes (fichier CSV) décrivant la structure du métro parisien, puis d’extraire de ces données converties, à l’aide de XSLT, des cartes des différentes lignes du métro en SVG – sur le modèle des cartes horizontales affichées dans les rames.
Principales fonctionnalités
- Un script Python scanne le fichier csv et crée un fichier xml avec une représentation du réseau du métro parisien. Dans le fichier csv il y a beaucoup d’informations qui se répètent (l’adresse de chaque gare, les trajets des lignes qui n’ont pas de différence dans leur parcours aller/retour apparaissent deux fois (une fois pour chaque sens, etc.) et donc le minimum d’informations possible est conservé dans le fichier xml.
- Un Schéma XML a été préparé pour vérifier que le fichier XML généré est correct. Un fichier DTD a également été préparé mais naturellement les capacités de test de ce fichier sont plus limitées.
- On détermine pour le fichier XSLT la carte de quelle ligne on veut afficher, puis le code XSLT convertit le fichier XML en une carte graphique de la ligne demandée, en SVG.
- Le fichier XSLT sait reconnaître quand les sens aller et retour ne sont pas les mêmes et agit en conséquence afin d’afficher une carte adaptée (ligne 10 par exemple).
- Le code XSLT sait afficher une carte correcte même lorsqu’il s’agit de lignes dont le parcours est divisé en deux destinations différentes (lignes 13 et 7)
- Pour chaque station, la liste des autres lignes de métro qui s’y arrêtent est affichée.