-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
As Open Data Hub I would like to have a new OTP demo instance, that imports public transport data through NeTEx / SIRI instead GTFS / GTFS-RT #191
Comments
Relevant also for @leonardehrenfried |
As soon as you have the feeds, can you post the URLs here? |
Is there an update? Are the NeTEx feeds available somewhere? |
@leonardehrenfried for testing purposes you can start working with this NeTEx file. |
@leonardehrenfried as discussed today, please consider this NeTEx export and not the one provided 2 days ago. This is the one provided to the NAP of Italy, compliant with EPIP. |
I took a look at this today and I am happy to report that importing the feed is going to be possible (with some caveats). This is what it looks like: Features currently not implemented by OTP
I spoke to the upstream developers and it's going to be possible to implement those two. Validation errorsThe last file you posted successfully validates against both the NeTEx and EPIP XSDs. Very good! However, OTP has picked up on quite a few validation errors, some of which are cosmetic but also a few serious ones. Smaller errors
Suspicious data
Serious errors956
I would speak to Mentz to ask them how this discrepancy can be explained. SummaryAll in all I am pleasantly surprised how well all of this works given that you're the first organisation that tries to import EPIP into OTP. What is difficult to say is if there are hidden problems with the feed. The best way to find out is to actually use the data, which we currently do. We can also discuss using a more structured approach to find errors but for now I'm pretty pleased with the progress. |
I have to correct myself about the service links (shapes). EPIP does structure them a bit differently from the Nordic profile but the problem is that in the latest data feed the According to the profile specification, the but in the supplied data file they look like this: <StopPointInJourneyPattern id="it:apb:StopPointInJourneyPattern:01B06_.24a-1-0071303:" version="1" order="3">
<ScheduledStopPointRef ref="it:apb:ScheduledStopPoint:it-22021-2167-0-5267:" version="any" />
<ForAlighting>true</ForAlighting>
<ForBoarding>true</ForBoarding>
<RequestStop>false</RequestStop>
<StopUse>access</StopUse>
</StopPointInJourneyPattern> Note the element |
@leonardehrenfried thanks for the notification. So at the end is just the field |
If you have the time, I'm available for a call today. Maybe that is quicker than comment ping-pong. |
OK, I need to check in the data I provided. Typically we support this ( |
@leonardehrenfried I check this. For the Italian NAP, we removed the structure |
There are also other problems of varying severity (see post above). Do you have any information about that? |
@leonardehrenfried not yet, I will give you a feedback on all points. |
If you have a stable URL from where to download the regularly updated NeTEx feed I can add it to the OTP test instance. |
@dulvui we would like that the testing environment of the OTP back-end (https://otp.opendatahub.testingmachine.eu/) is fed for the public transport data not with GTFS data, but with NeTEx data. So please work with @leonardehrenfried to set up this. Relevant also for @clezag |
@dulvui All I need from you is a permantent URL where I can download the latest version of the NeTEx feed. The rest I can do myself. |
@leonardehrenfried this is something I can do. At present these NeTEx file stay on an FTP owned by another organizations, i.e. ftp://ftp01.sta.bz.it/netex/2024/plan/All/ Here you find the daily exports, you should always consider the latest one. Can you tell me if you can access there? |
Yes, I can access it. HTTP with a stable URL pointing towards the newest version would be the best but I can work around it with some scripting. The full path its then this one? |
@leonardehrenfried good! Yes, unfortunately they want to use this FTP system... yes the current one is the one you have indicated. But as said, every day we generate a new export, so you should consider the new one for the import in OTP. So you should read the current day in the file name and consider this for the choice of the file. |
Yes, I will compute the file name from the current date. |
Do you happen to know if the path |
@leonardehrenfried this will change... |
I would like to increase the severity of problem because I noticed it today. Previously I said
At first I thought this is just cosmetic, but I believe that all times are off by 1 or 2 hours depending on whether it's summer or winter. It would be very good if you could set the time zone in the feed as I suggested in my comment. |
And since @dulvui just merged my PR, here we have a fresh OTP instance with NeTEx data: https://tinyurl.com/27f8o653 |
I noticed another problem with the NeTEx data: I see no bus stops or bus routes in the city of Trento while there are plenty in Merano, Bolzano and Bressanone. Let me give you an example: Piazza Dante near Trento railway station has several bus stops and they are all called a variation of "Piazza Dante". I would expect at least one of them to be present in the data but I see zero stops called "Piazza Dante". I just checked and it's the same with the GTFS feed. Is this expected? |
@leonardehrenfried this is correct; the NeTEx is just related to the Province of Bolzano, not the Province of Trento. In the dataset there are some bus stops in other regions, but these are used just for the railway services. |
Good to know! I thought this feed covers all of South Tyrol. |
Yes, it is. Trento is not in South Tyrol, is in Trentino :-) |
How embarrassing - I must read up on the difference between an Italian province and a region again! https://en.wikipedia.org/wiki/Trentino-Alto_Adige/S%C3%BCdtirol |
Regarding all these open points:
|
Since this issue is getting quite large, I took the liberty to open separate tickets for the NeTEx problems. |
@leonardehrenfried yes please I wanted to do the same once the issues are clarified |
Here they are: https://github.com/noi-techpark/odh-mentor-otp/issues/created_by/leonardehrenfried You may want to add a label to give readers a bit of context. |
@leonardehrenfried thanks! I have created a new label and labelled the issues. I will give a feedback to you in the next weeks |
For SIRI: current end-point is https://efa.sta.bz.it/sirilite (in JSON). |
@leonardehrenfried we have finally stable end-points for the NeTEx / SIRI data:
There is now also a SIRI-SX interface (Situation Exchange), implemented according to the German / Swiss profile (VDV-736):
Can you in these days these end-points test and try to integrate them in OTP, especially the SIRI end-point? For the NeTEx data, there has been some update by 5T in relation to compliance with NeTEx EPIP in the Italian profile, more details on Friday. For sure there is still something to fix in the data we provide... |
I can take a look at this in the next few days. Is SIRI only available as SIRI light, where you download everything at once, or also in the Request/Response flow where you create a subscription and get only the latest updates? Request/response is the only one supported by OTP. However, SIRI light is such a simple protocol that it would also not be very hard to implement it. |
@leonardehrenfried we have both. At the moment I have shared you just the SIRI light end-points, but in case we can also go in direction subscription. Maybe for a first attempt wouldn't it be easier to work with SIRI light, as done typically in the Nordics? |
The Nordics use request/response. |
But they also use SIRI light, or? As said, if you prefer the complex approach with request / response, this can be easily activated |
They offer SIRI light but don't actually use it. I guess they have it because it's easy to consume. On a country-level request/response has much better performance because you only need to retrieve the latest updates rather than every update for the entire country every minute (even those, where nothing changed). I would be fine with either. If the turnaround on activating request/response is as slow as making SIRI available at all, I think I will be faster adding support for SIRI light to OTP. :) |
@leonardehrenfried the activities around importing NeTEx data according to the Italian profile are more and more intense at national level. I had some contacts last week with 5T, also Brede was there. At national level they published a new version of the profile (unfortunately in Italian, see annex) with an annex on which are the specific aspects to be considered in order to ensure a smooth import in OTP v2 (see chapter "Appendice A –NeTEx e OTP v.2+"). I would like to discuss this shorty with you, in order to really consolidate what we need to improve in our NeTEx data and eventually provide additional inputs to these national discussions (e.g. the topic parking). As far as I have been told, the current stable OTP version available on github can fully ensure the import of NeTEx data according to these recommendations - is this something that you can confirm? Let's discuss this today... 241104_Linee guida compilazione NeTEx IT v.4.1.0.pdf An additional point: we are also in close contact with the team at SBB / SKI+ on various topics. They have also had a look to our NeTEx data, in particular Matthias Guenther and Stefan de Konink, you probably know them, They provided us the following inputs: TimetabledPassingTime must have an id It is a bad idea not not give id to TimetabledPassingTime. Especially, when version is added.
Using ScheduldedStopPoints as RoutePointRef is not allowed ScheduldedStopPoints are no RoutePoints
We will have a look also at this, but probably this is not so relevant for the import in OTP, or? |
Next steps defined on 15.11:
|
Tasks agreed on 30.8.
Reference sources for NeTEx and SIRI:
NeTEx
https://web01.sta.bz.it/netex/api/v4/downloadVersion?level=4&agencyCode=IT-ITH1
username = rapuser
password = rappass
SIRI
SIRI ET (XML): https://efa.sta.bz.it/siri-lite/estimated-timetable/xml
SIRI ET (JSON): https://efa.sta.bz.it/siri-lite/estimated-timetable
SIRI SX (XML): https://efa.sta.bz.it/siri-lite/situation-exchange/xml
SIRI SX (JSON): https://efa.sta.bz.it/siri-lite/situation-exchange
The text was updated successfully, but these errors were encountered: