Retrouvez ici les définitions de format pour les types courants (date, textes, …)
Textes
Les textes disponibles dans Apidae sont au format texte simple, sans balisage particulier. L’usage du HTML y est interdit.
Pour procéder à l’affichage des textes en environnement HTML, il est important de procéder aux tâches courantes d’échappement remplacement pour un affichage correct en HTML. En particulier, l’échappement des caractères &, <, > et le remplacement des retours à la ligne (\n, \r\n) par des retours à la ligne HTML
Dates
Les dates sont au format ISO 8601 : « 2012-06-27 ».
Dans le cas de l’utilisation du critère tousLesAns, les années ne sont pas significatives. Détail dans les Périodes d’ouverture.
Heures
Les heures (heures d’ouverture / fermeture) sur ouverture.periodesOuvertures[].horaireOuverture / ouverture.periodesOuvertures[].horaireFermeture sont au format « HH:MM:SS ».
Age et unité
Concernant le fonctionnement des champs prestations.ageMin, prestations.ageMax, prestations.uniteAgeMin, prestations.uniteAgeMax, le comportement est le suivant :
- La valeur présente dans les champs prestations.ageMin et prestations.ageMax est tout le temps exprimé en nombre de mois. Ceci permet de faciliter les traitements globaux en stockant l’information de manière uniforme ;
- Les champs prestations.uniteAgeMin et prestations.uniteAgeMax servent à préciser quel est le format préféré d’affichage de l’information. Ce format peut être en mois ou en année ;
- Les champs d’unité doivent donc être utilisé au moment de l’affichage, pour vérifier s’il est nécessaire de convertir l’âge fourni (en nombre de mois) en un nombre d’année.
Tarifs
L’interface de saisie des tarifs dans Apidae permet de définir 3 types d’intitulé :
- Les tarifs « À partir de » : identifiés par le fait que seul le champ periodes[i].tarifs[j].minimum est renseigné
- Les tarifs « Tarif unique » : identifiés par le fait que les champs periodes[i].tarifs[j].minimum et periodes[i].tarifs[j].maximum sont renseignés avec la même valeur. Les tarifs dont le champ periodes[i].tarifs[j].minimum n’est pas renseigné sont également à interpréter de en tant que « Tarif unique«
- Les tarifs « De … à … » : identifiés par le fait que les champs periodes[i].tarifs[j].minimum et periodes[i].tarifs[j].maximum diffèrent.
Ces intitulés ne sont pas renseignés dans le flux et ne peuvent être déduits qu’au travers des règles explicitées ci-dessus
Exemple
"tarifs": [
{
"devise": "EUR",
"minimum": 10.00,
"maximum": 10.00,
"precisionTarif": {
"libelleFr": "Unique"
},
...
},
{
"devise": "EUR",
"minimum": 20.00,
"precisionTarif": {
"libelleFr": "À partir de"
},
...
},
{
"devise": "EUR",
"minimum": 30.00,
"maximum": 40.00,
"precisionTarif": {
"libelleFr": "Min/Max"
},
...
}
]
Lieux
Pour des raisons de rétro-compatibilité, les lieux sont présents à deux endroits dans la structure des documents, localisation.adresse.nomDuLieu et localisation.lieu. Le nomDuLieu ne contient qu’un libellé alors que localisation.lieu indique l’identifiant du lieu ainsi que les différentes traductions du nom.
Attention : seuls les lieux issus d’un objet contiennent le nœud localisation.lieuObjetTouristique.
Nœud : localisation.adresse.nomDuLieu
"localisation" : {
"adresse" : {
"nomDuLieu" : "Le Galet",
"adresse1" : "Rue du collège",
"codePostal" : "01600",
"commune" : {
"id" : 293,
"code" : "01322",
"nom" : "Reyrieux",
"pays" : {
"elementReferenceType" : "Pays",
"id" : 532,
"libelleFr" : "France",
"ordre" : 78
},
"codePostal" : "01600"
}
}
}
Nœud : localisation.lieu
"lieu" : {
"id" : 5295,
"nom" : {
"libelleFr" : "Le Galet"
}
}