[Auto-Complete] Investigate the validation of URL using ABNF syntax
Currently, our only validate white spaces in URLs ( to be confirmed with developers). The aim is to have a full on validation using the ABNF syntax
Yes. We currently only raise invalid whitespace error. What kind of extra validation are we looking at @RabebOthmani? ABNF is a bit general
@Onokaev ABNF itself is generic, but this ABNF description https://github.com/oasis-tcs/odata-abnf/blob/main/abnf/odata-abnf-construction-rules.txt is specific to validating OData. It contains specific syntax rules for OData URLs including validating query parameter values.
@Onokaev Do you feel like you have clarity on the task with the link provided by Darrel? Let me know if you need further details
Hey @RabebOthmani, @thewahome picked this up since he is already working on autocomplete.
@darrelmiller @RabebOthmani I do not yet know how the ABNF syntax is going to help us with validation. Calling this out as something that will slow down this task
@thewahome Libraries like apg-js are designed to create parsers from ABNF syntax. Here is an example of using the OData abnf to parse any part of an OData request https://github.com/ldthomas/apg-js-examples/tree/main/src/odata We only care about the parsing of the URL. With a library like this and the ABNF we can accurately parse an OData URL without having to do any of the work and it will accurately handle complex things like nested expands and filter expressions.
I am closing this since the investigation was successful and documented in a technical document.
A PR exists that attempts to implement the findings for this under #2044