Skip to content
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

Inconsistency to specification at matches_RFC_8089_path #269

Closed
s-heppner opened this issue Apr 26, 2023 · 9 comments
Closed

Inconsistency to specification at matches_RFC_8089_path #269

s-heppner opened this issue Apr 26, 2023 · 9 comments
Labels
bug Something isn't working

Comments

@s-heppner
Copy link
Collaborator

The function matches_RFC_8089_path is supposed to check for a valid path URI.

Nevertheless, it does not allow for relative paths, which are necessary to reference supplementary files in AASX-packages:
PathType definition
AASX-Specification for Supplementary Files

Therefore, it is absolutely necessary to allow for relative paths in Path_type.

@mristin
Copy link
Contributor

mristin commented Apr 26, 2023

The relative paths in RFC 8089 start with a dot, IIRC. The pattern has been automatically translated from ABNF in the RFC document.

edit: added "IIRC" for uncertainty

@s-heppner
Copy link
Collaborator Author

Alright, then I assume the problem lies with the outdated version of our AASX-Writer. I'll double check this.

@mristin
Copy link
Contributor

mristin commented Apr 26, 2023

See also: https://stackoverflow.com/a/70031934, but this does not seem like a very reliable source.

@mristin
Copy link
Contributor

mristin commented Apr 26, 2023

Also this: https://superuser.com/a/1763925

It does seem plausible that RFC 8089 does not allow relative paths at all.

@s-heppner
Copy link
Collaborator Author

s-heppner commented May 19, 2023

The specification about PathType:

Note: for any string conformant to RFC8089, the "file" URI scheme (for relative and absolute file paths) applies.

I've tried checking RFC 8089 more extensively and this is the only mention I found of relative paths:

 base URI:   file:///c:/path/to/file.txt
 rel. ref.:  /some/other/thing.bmp
 resolved:   file:///c:/some/other/thing.bmp

 base URI:   file:///c:/foo.txt
 rel. ref.:  ../bar.txt
 resolved:   file:///c:/bar.txt

The relative paths seem not to be part of the formal specification, their existence relative to a base RFC 8089 URI does seem to be acknowledged, though.

Nevertheless, let's read the PathType definition again: It does not enforce the use of only RFC 8089 paths!
Therefore, my suggestion would be to ammend the matches_RFC_8089_path with relative paths (and possibly rename it to matches_path_type. However, I will bring the problem forward with the WS.

@mristin
Copy link
Contributor

mristin commented Jun 21, 2023

I'll close the issue as it seems resolved. Please feel free to re-open.

@mristin
Copy link
Contributor

mristin commented Aug 25, 2023

@s-heppner This issue pops up again and again. Are there any news from the AAS WS? Are RFC 8089 enforced in V3 or not?

@mristin mristin reopened this Aug 25, 2023
@s-heppner
Copy link
Collaborator Author

Let's talk about this in person when we next speak

@mristin
Copy link
Contributor

mristin commented Jan 26, 2024

As far as I know, this issue will be fixed in V3.1, but no changes in V3 are expected. I'm closing the issue as it is not related to V3, and we will consider it anyhow when we formalize V3.1.

@mristin mristin closed this as completed Jan 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants