Page d'accueil Description du projet

Format de la base de donnée

Cette page présente les règles d'édition des différents fichiers nécessaires au fonctionnement de itinR

Remarques générales :

Si l'exécutable se trouve dans le répertoire exec, les fichiers de données doivent être dans le répertoire exec/horaires. Par exemple, après décompression de "itineraires.tgz" et compilation, l'exécutable "itinR" se trouve dans le répertoire "itineraires", avec le répertoire "horaires".

Dans le répertoire "horaires", on doit trouver :

Si la ligne est une ligne étendue (type TRAM) avec des horaires génériques (un tram tous les 4 a 5 min), on trouve aussi les fichiers suivants :

Fichier TAG.arrêts :

Première ligne :

#arrets = XX

où XX correspond au nombre de lignes connues par le système.

Deuxième ligne : Ligne de titre. Elle est ignorée à la lecture mais doit être présente.

Lignes suivantes :

<Id>	<Nom>			: <NbLgnPr>	<LgnPr>

Exemple :

#arrêts = 107
Id	Nom                 : NbLgnPr  LgnPr
01	Eybens              : 2	       31 12
02	Grand'Place         : 7        31 101 12 13 23 26 32
03	Docteur Martin      : 10       31 13 16 21 23 32 33 34 41 602
04	La Tronche Hopital  : 3        31 102 602
05	Jules Flandrin      : 3        31 9 602
06	Maupertuis          : 1        31
07	Centre Theologique  : 1        31
...

Les lignes présentes sont ignorées si elles ne sont pas connues par le logiciel (i.e. listées dans TAG.lignes).

Fichier TAG.lignes :

Première ligne :

#lignes = XX

où XX correspond au nombre de lignes connues par le système.

Lignes suivantes :

<No ligne> <=|*> <Nom du repertoire>	# <Nom de la ligne>

Exemple :

#lignes = 4
09 = ligne9 	# Bus 9
32 = ligne32 	# Bus 32
31 = ligne31 	# Bus 31
102 * ligneB 	# Tram B
602 = ligne602 	# VFD 602

Remarques

La distinction entre le nom du repertoire et le nom de la lignes est nécessaire pour faciliter l'affichage des arrêts.

Fichier arrets<+|-> :

Première ligne :

#arrets = XX
Où XX correspond au nombre d'arrêts.

A partir de la 2eme ligne, liste des arrêts :

<numero> = <Nom de l'arrêt>

Exemple :

#arrêts = 43
002 = Grand'Place
045 = Carrefour Viallex
046 = Maison des Anciens
047 = Verlaine
048 = Albert Reynier
049 = Bachelard
050 = Cite Paul Mistral
051 = A.Thomas
052 = Anatole France
053 = Docteur Schweitzer
054 = Salengro
...

Pour chaque ligne, il doit y avoir 2 fichiers d'arrêts dont les noms correspondent à la syntaxe suivante :

arrêts<+|->

Bien sûr, la liste des arrêts doit être cohérente avec les arrêts utilisés dans les fichiers d'horaires.

Fichier calendrier :

Les dates sont au format JJ/MM/AAAA

Exemple :

debut validite 	= 23/08/1999
fin validite 	= 14/07/2000
BLANC 	: 0
VERT 	: 4
	I 02/11/1999 05/11/1999
	I 21/02/2000 03/03/2000
	I 17/04/2000 28/04/2000
	I 03/07/2000 13/07/2000
ORANGE 	: 4
	J SAMEDI
	I 23/08/1999 03/09/1999
	I 27/12/1999 31/12/1999
	D 02/06/2000
BLEU	: 8
	J DIMANCHE
	D 01/11/1999
	D 11/11/1999
	D 25/12/1999
	D 01/01/2000
	D 08/05/2000
	D 01/06/2000
	D 14/07/2000
AUCUN	: 1
	D 01/05/2000

Première et deuxième lignes : dates de validité du calendrier.

Ensuite liste des différentes classes d'horaires :

<CLASSE>  : <Nb d'éléments>

Si Nb d'éléments = 0 : la classe d'horaires correspondante devient celle par défaut (BLANC dans l'exemple). Sinon, Nb d'éléments correspond au nombre d'éléments définissant cette classe.

Les différents éléments peuvent être un jour, une période ou un jour de la semaine. Le tableau suivant décrit la syntaxe utilisée :

Signification Symbole Type Exemple
DateDDate D 01/11/1999
D 02/09/2000
IntervalleIDate Date I 21/02/2000 03/03/2000
I 17/04/2000 28/04/2000
Jour de la semaineJJour J DIMANCHE
J SAMEDI

Dans l'exemple, la période bleue est specifiée par 8 éléments : le DIMANCHE et 7 dates particulières (jours fériés).

Fichier horaires :

Première ligne : nb horaires = XX

Deuxième ligne : nb arrêts = YY

Troisième ligne : identifiant des arrêts de référence, en lignes.

A partir de la quatrième ligne : horaires de passage, en colonnes.

Exemple :

nb horaires = 64
nb arrets = 4
97      101     83      107
0612    0617    0625    0629
0637    0642    0650    0654
0659    0704    0712    0716
0719    0725    0733    0737
0739    0745    0753    0757
...

Ici, on a un bus dont les passages sont donnés pour 4 arrêts : 97, 101, 83 et 107. Il y a 64 passages : on passe à l'arrêt 83 à 6h25, 6h50, etc...

Si un arrêt n'est pas desservi, on note 9999 l'horaire invalide. On considère alors qu'aucun arrêt jusqu'à l'arrêt de référence suivant n'est desservi.

Exemple :

nb horaires = 27
nb arrêts = 7
02      48      56      03      63      75      82
0620    0626    0633    0640    0647    0654    9999
0651    0657    0704    0711    0718    0726    9999
0722    0728    0735    0742    0749    0757    9999
...

L'arrêt 82 n'est pas desservi pour ces 3 horaires.

Lorsqu'on a affaire à une ligne qui passe toutes les 4 ou 5 minutes, on note 8888 la ligne d'arrêts. Les fréquences sont définies dans le fichier frequences

Exemple :

0654    0700    0708    0712
0701    0707    0715    0719
0707    0714    0721    0725
8888    8888    8888    8888
1927    1933    1941    1945
1934    1940    1948    1952
1940    1946    1954    1958
...

Ici, entre 0707 et 1927 le tram B passe de facon générique.

Il doit y avoir 2 fichiers pour chaque classe d'horaires. Par exemple, horaires+.bleu et horaires-.bleu pour les horaires d'aller et de retour de la période bleue.

La syntaxe des noms de fichiers est la suivante:

horaires<+|->.<classe>
où <classe> représente la classe d'horaires et appartient à {bleu,blanc,vert,orange}.

Fichier frequences :

Suite de lignes de la forme :

<CLASSE> = <temps en minute>

Exemple :

BLANC = 5
ORANGE = 7
BLEU = 9999
VERT = 9999

Dans le fichier ci-dessus : le tram B passe toutes les 5 minutes en période blanche, toutes les 7 minutes en période orange et ne passe pas de facon "fréquencée" en période bleue et verte. On utilise une date invalide.

Fichier temps.trajet :

Ce fichier décrit le temps de trajet moyen entre les arrêts de référence. Il est utilisé pour interpoler les temps de trajets sur les lignes génériques. Les arrêts de référence doivent être les mêmes que pour les horaires.

Exemple :

#arrêts = 4
97
	0006
101
	0008
83
	0004
107

Première ligne :

#arrêts = XX
où XX correspond au nombre d'arrêts de référence.

Les lignes suivantes correspondent aux temps intermédiaires entre les arrêts de référence. De la forme suivante :

<Numero d'arrêt1>
<tabulation> <Temps de trajet>
<Numero d'arrêt2>
...
Ou <temps de trajet> correspond au temps (format habituel) entre l'<arrêt1> et l'<arrêt2>.