-
Notifications
You must be signed in to change notification settings - Fork 27
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
adapter.aasx: resolution of file://
references
#72
Comments
Actually, I believe this may be a problem with the specification. In Part 5 Package File Format, it is specified that |
Some further research proves constraint that the |
I opened an Issue at aas-core. |
RFC 8089 may not allow for relative paths, have you tried to start with a |
Thanks for the investigation!
I haven't tried that yet, but |
As an ugly temporary fix, so that AASX-packages can used, we decided to remove the regex check from the schemata. |
Please note, that according to [eclipse-basyx#72], we decided not to include the `File` pattern, since the specification is wrong at this. [eclipse-basyx#72](eclipse-basyx#72)
Previously, PathType was matched towards RFC 8089, however this posed several problems, such as [basyx-python-sdk#72](eclipse-basyx/basyx-python-sdk#72). In [aas-specs#299](admin-shell-io/aas-specs#299), the proposed solution is to make PathType of type xs:anyURI. Fixes #303
When loading an AASX file, the aasx checks all submodels for
File
elements and tries to resolve the referenced files relative to the aasx container root. In Version 2.0, a document namedTestFile.pdf
in the AASX packages root would be referenced by aFile
element via the path/TestFile.pdf
.Since version 3.0, the schemata prohibit values like
/TestFile.pdf
and require thefile://
protocol to be used, e.g.file:///TestFile.pdf
. The problem is thatFile
also supports remote references to files, for example viahttps://
. This isn't allowed by the new schemata.We should discuss whether the restrictions imposed by the schemata are actually correct, and if so, change the aasx adapter and examples accordingly.
See also:
basyx-python-sdk/basyx/aas/examples/data/example_aas.py
Line 453 in 8304c2a
basyx-python-sdk/basyx/aas/examples/data/example_aas.py
Lines 470 to 471 in 8304c2a
basyx-python-sdk/basyx/aas/adapter/aasx.py
Lines 233 to 259 in 8304c2a
The text was updated successfully, but these errors were encountered: