Validation du format NeTEx IdFM
Contrôles avant import
Certains contrôles critiques sont effectués en amont du lancement de l’import. Ceux-ci alertent l’utilisateur dans le cas d’une erreur :
l'archive importée doit respecter l'organisation des dossiers et des fichiers définie dans la NT44
les lignes contenant de l’offre doit appartenir au périmètre fonctionnel de l’Organisation
OperatingPeriod doit définir une période dont la date 'FromDate' doit être strictement inférieure à la date 'ToDate'
Contrôles pendant l’import
Un import NeTEx IdFM est soumis à une liste de contrôles vérifiant le format et l’intégrité des données NeTEx. Ces contrôles permettent la production d’un rapport de contrôles accessible sur la page de l'import.
Cette liste de contrôles est détaillée ci-dessous :
Libellé | Code | Prérequis | Détail | Criticité |
Conformité XML |
| néant | les fichiers xml doivent respecter la syntaxe XML du W3C | ERROR |
Conformité XSD NeTEx |
| néant | les fichiers xml doivent respecter la XSD NeTEx | ERROR |
Organisation des frames du fichier commun.xml |
| présence du fichier commun.xml | le fichier commun doit respecter l'organisation en frame de la NT44 | ERROR |
Organisation des frames du fichier calendriers.xml |
| néant | le fichier de calendrier doit respecter l'organisation en frame de la NT44 | ERROR |
Organisation des frames des fichiers offre_xxx.xml |
| néant | les fichiers d'offre doivent respecter l'organisation en frame de la NT44 | ERROR |
Contrôle de la syntaxe des identifiants |
| néant | L'identifiant d'un objet NeTEx doit respecter la syntaxe définie et le type d'objet doit correspondre à la balise NeTEx de l'objet | ERROR |
Contrôle de l'attribut 'changed' |
| attribut 'changed' renseigné | La date de mise à jour d'un objet NeTEx ne doit pas être dans le futur (J+n (n >0) par rapport à la date d'import) | WARNING |
Contrôle de l'attribut 'modification' |
| attribut modification renseigné | la valeur 'delete' de l'indicateur de modification est interdite | ERROR |
Contrôle de la syntaxe des références |
| néant | La référence (attribut 'ref') doit respecter le motif [CODESPACE]:[type d'objet]:[identifiant Technique]:LOC pour un objet local à l'import ou l'un des motifs REFLEX ou CODIFLIGNE pour les références à ces types d'objets. | ERROR |
Contrôle de l’attribut 'version' pour les références internes |
| néant | L'attribut 'version' doit être renseigné pour une référence interneLa balise ne doit pas avoir de contenu | ERROR |
Contrôle de l’attribut 'version' pour les références externes |
| néant | L'attribut 'version' ne doit pas être renseigné pour une référence externe, la version est fournie dans le contenu de la balise sous la forme 'version="[VERSION de l'objet]"' | ERROR |
Contrôle de l'existence des références internes |
| néant | En dehors des références CODIFLIGNE et REFLEX, l'objet référencé par une référence externe doit exister au sein d'un lot de fichiers cohérents.Les références CODIFLIGNE et REFLEX doivent correspondre à des objets existants dans le BOIV | ERROR |
Contrôle de l'objet DayType : complétude |
| néant | L'objet DayType doit être référencé dans au moins un objet DayTypeAssignment | WARNING |
Contrôle de l'objet DayType : types de jour sur période |
| néant | Si l'objet DayType est en relation avec au moins un objet OperatingPeriod, alors il doit définir au moins un PropertyOfDay de valeur Monday, Tuesday, Wednesday, Thursday, Friday, Saturday ou Sunday | ERROR |
Contrôle de l'objet DayTypeAssignment : OperatingDayRef |
| néant | La référence OperationDayRef ne doit pas être renseignée | ERROR |
Contrôle de l'objet DayTypeAssignment : IsAvailable |
| néant | L'attribut IsAvailable ne peut pas être renseigné à 'false' si la référence OperatingPeriodRef est renseignée | ERROR |
Contrôle de l'objet DayTypeAssignment : doublon de dates |
| néant | L'objet DayTypeAssignment contient une date déjà définie dans un autre DayTypeAssignment. | ERROR |
Contrôle de l'objet DayTypeAssignment : doublon de périodes |
| néant | L'objet DayTypeAssignment contient une période déjà définie dans un autre DayTypeAssignment. | ERROR |
Contrôle de l'objet Direction : Name |
| néant | L'objet Direction doit avoir son attribut Name renseigné. | ERROR |
Contrôle de l'objet Direction : Attributs interdits |
| néant | L'objet Direction doit avoir ses attributs DirectionType et OppositeDirectionRef non renseignés. | ERROR |
Contrôle de l'objet Notice : présence de l'attribut Text |
| néant | L'attribut Text de l'objet Notice doit être renseigné | ERROR |
Contrôle de l'objet Notice : TypeOfNoticeRef |
| néant | Seules les Notices de type ServiceJourneyNotice sont importées | WARNING |
Contrôle de l'objet PassengerStopAssignment : complétude |
| néant | Les attributs ScheduledStopPointRef et QuayRef ou StopPlaceRef doivent être renseignés | Error |
L2_NeTExSTIF_VehicleJourneyStopAssignment_1 |
| néant | Les attributs de l’objet ScheduledStopPointRef doivent référencer pour :
| WARNING |
Contrôle de l'objet PassingTime : complétude |
| néant | L'attribut DepartureTime de l'objet PassingTime doit être renseigné. | ERROR |
Contrôle de l'objet PassingTime : chronologie |
| Atrribut ArrivalTime renseigné | l'Attribut DepartureTime de l'objet PassingTime doit être supérieur ou égal à l'attribut ArrivalTIme | ERROR |
Contrôle de l'objet Route : DirectionType |
| Attribut DirectionType renseigné | L'attribut DirectionType doit prendre l'une des 2 valeurs 'outbound' ou 'inbound' | ERROR |
Contrôle de l'objet Route : cohérence des routes inverses |
| Attribut InverseRouteRef renseigné | Les Routes associées comme routes inverses doivent se référencer mutuellement.Les DirectionType des Routes en sens opposés doivent être différent (Note : DirectionType non renseigné = outbound) | ERROR |
Contrôle de l'objet Route : Séquence des arrêts |
| néant | L'ordre des arrêts (ScheduledStopPoint) issus des StopPointInJourneyPattern des ServiceJourneyPattern de la Route doit être croissant | ERROR |
Contrôle de l'objet ServiceJourneyPattern : Interdictions de montée et descente |
| néant | Les attributs ForAlighting et ForBoarding d'un StopPointInJourneyPattern doivent être identiques pour des arrêts partagés entre plusieurs ServiceJourneyPattern de la même Route | WARNING |
Contrôle de l'objet RoutingConstraintZone : complétude |
| néant | Au moins deux ScheduledStopPointRef doivent être renseignés | ERROR |
Contrôle de l'objet RoutingConstraintZone : attribut ZoneUse |
| Attribut ZoneUse renseigné | L'attribut ZoneUse ne peut prendre pour valeur que 'cannotBoardAndAlightInSameZone' | ERROR |
Contrôle de l'objet ServiceJourney : JourneyPatternRef |
| néant | L'attribut JourneyPatternRef de l'objet ServiceJourney doit être renseigné. | ERROR |
Contrôle de l'objet ServiceJourney : trainNumbers |
| néant | L'attribut trainNumbers de l'objet ServiceJourney ne peut pas être définit plusieurs fois | ERROR |
Contrôle de l'objet ServiceJourney : complétude des passingTimes |
| néant | La liste des PassingTime du ServiceJourney doit contenir le même nombre d'éléments que la liste des StopPointInJourneyPattern du ServiceJourneyPattern associé. | ERROR |
Contrôle de l'objet ServiceJourney : chronologie des passingTimes |
| néant | La chronologie horaires des PassingTime du ServiceJourney doit être croissante. Note : lorsque ArrivalTime n'est pas renseigné, on considère ArrivalTime=DepartureTime | ERROR |
Contrôle de l'objet ServiceJourneyPattern : RouteRef |
| néant | L'attribut RouteRef de l'objet ServiceJourneyPattern doit être renseigné. | ERROR |
Contrôle de l'objet ServiceJourneyPattern : pointsInSequence |
| néant | L'attribut pointsInSequence de l'objet ServiceJourneyPattern doit contenir au moins 2 StopPointInJourneyPattern | ERROR |
Contrôle de l'objet ServiceJourneyPattern : ServiceJourneyPatternType |
| néant | L'objet ServiceJourneyPattern doit avoir son attribut ServiceJourneyPatternType renseigné. | ERROR |
Contrôle de l'objet ServiceJourneyPattern : ordre des StopPointInJourneyPattern |
| néant | L’attribut “order” des StopPointInJourneyPattern peuvent être discontinus mais ils doivent être toujours croissants | ERROR |
Contrôles de l’objet VehicleJourneyStopAssignment : attributs ScheduledStopPointRef, QuayRef et VehicleJourneyRef |
| néant | Les attributs ScheduledStopPointRef, QuayRef et VehicleJourneyRef de l'objet VehicleJourneyStopAssignment doivent être renseignés. | ERROR |
Contrôles de l’objet VehicleJourneyStopAssignment : Cohérence VehicleJourneyRef |
| néant | Les attribut(s) VehicleJourneyRef doivent correspondre à des courses présentes dans l'offre | ERROR |
Contrôles de l’objet VehicleJourneyStopAssignment : Cohérence ScheduledStopPointRef |
| néant | L'attribut ScheduledStopPointRef doit correspondre à un horaire de passage présent dans la/les course(s) référencée(s) | ERROR |
Contrôles de l’objet VehicleJourneyStopAssignment : Cohérence QuayRef |
| néant | L'attribut QuayRef doit correspondre à un arrêt dans le référentiel d'arrêt | Warning |
Ce document est la propriété d'enRoute et ne peut être reproduit sans son accord écrit