-
Notifications
You must be signed in to change notification settings - Fork 0
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
a list of the individual items failing validation - linked from the validation page as an aid to data users #4
Comments
Having asked for more discussion on user stories, I must go to a technical note for a min before returning to user stories. From openactive-archive/conformance-services#14 (comment)
I see a problem here; I did some experiments and the URL passed must be exactly the same URL that contains the data; so if a publisher has many records and hence id XYZ is on page 3 of the feed, and you pass id XYZ and the base URL it won't find it. ie https://validator.openactive.io/?url=https%3A%2F%2Fbookwhen.com%2Fapi%2Fopenactive%2Fsessionseries&rpdeId=vd8vxf4ejdip fails. vd8vxf4ejdip is several pages in. I can't see a good answer here that doesn't get complex or have edge cases. Instead, we maybe store the results from the validation library ourself and can use them? This means there might be cases where there is a lag of data being published and results being calculated but that problem applies to the whole of this project and we will look at that. In this case, there are several options we could do here:
It really depends on the user story (I said I'd come back to that 😄) so please comment on that. |
If helpful here's a very common scenario:
The idea of linking to the validator was to make it really easy for a developer to jump into an environment where all validation errors are enumerated for a specific item (as often multiple validation errors tend to arise together), and where the feed JSON can be edited to test any potential fix... however that is certainly just one potential solution. The limitation of linking directly to the feed is exactly as you've outlined - it's a real-time feed so any link could possibly get out-of-date if items move (the error for "item not found" in the validator reflects this). Although some feeds are updated very frequently (e.g. ScheduledSessions feeds), many feeds - which also generally contain more properties and hence more potential for error (e.g. FacilityUses and SessionSeries) - are updated much less frequently. Hence the link becoming out-of-date is not so much of an issue in many cases. "Reorder by type of errors seen" would fit my understanding of what most developers are looking for here: "I've got some conditional logic in my feed that's triggering for certain items and causing issues, I want to know what main issues there are in my feed, and example items I can jump to in order to understand what's going on." Note that if there's an error based on conditional logic it could affect a very large number of items in the feed, so a list of IDs could be very large. Perhaps listing a representative sample of IDs that contained a particular error across the feed would be most useful? Items near the beginning of the feed are less likely to be updated, so provide a stable link, however items near the end of the feed are likely using the latest data (in the case where e.g. a data migration has occurred and all items before a certain date used a different schema). |
Thanks Nick; One question; on openactive-archive/conformance-services#14 we discuss filtering to severity === "failure". Would the same apply here? Would we not even bother storing ones which aren't "failure"? |
What would the logic be that detects that an error was one we had or had not seen before? If type, category and severity where the same? Or include message in that? |
Yes "passing" above refers to no errors returned with The challenge is that all So we'd greatly reduce storage requirements by only storing |
Possible grouping options for this:
Suggest grouping by both |
From openactive-archive/conformance-services#14:
It would be good to be slightly clearer about the user need here; please discuss
Note we'll keep this issue on results from the validation library at the moment; there may be an issue about results from the data profiles later.
The text was updated successfully, but these errors were encountered: