-
Notifications
You must be signed in to change notification settings - Fork 19
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
Process for discovery of suitable apps for a resource #324
Comments
Thank you for your feedback!
From what I know there is no server-side support for shapetrees available (yet). @ericprud can correct me I had a similar need lately and I ended up doing the following:
I have my initial code in this commit: elf-pavlik/sai-js@323d49e#diff-6ce17aac5f6ebf2f59677410f3993277eb8cd5ee5580002e9bb64cf5d54e650dR176 I'm not sure if that helps, but I'd like to follow up on this issue soon and look for improvement to the spec, which could make it easier. We should also look at server-side support for shape trees. |
Has the panel discussed the possibility of assigning a type to the container? Suppose .meta includes Dereferencing ex:MyShapedContainer could provide information about the applicable shape tree, but even without dereferencing, the client would already have just enough information out of band to perform basic reasoning before parsing the shape tree itself. Clients can also identify the applicable shape of an arbitrary resource through similar inheritance logic to WAC - the applicable shape can first be checked against explicit shape assertions, then shape trees associated with the container, then shape trees of parent containers etc. |
I will try to stay precise here since Is this rdf type simply a class of the container itself, something like I will be able to understand it better if you share a few concrete snippets, preferably the actual data you are working with (anonymized, of course). |
The concrete example I've been thinking about is the Umai data structures The rdf type is simply the class of the container itself, but through ontology or shapes/shape trees is intended to imply something about its properties, including types of its contained resources. |
Thanks! I will read through that issue as soon as I can. It duplicates some information that should be available via the shapetree and its shape, but I don't see a massive problem with duplication whenever it is justified. Anyway, I should read the whole original issue before commenting on it further. |
I've now also opened an issue to discuss a shape tree for Umai; NoelDeMartin/umai#22 As shown there, Umai cookbook containers contain documents that each include four different shapes.
|
I came across shapetrees/specification#38 which discusses discovery of shapetrees for a container through http vs container triples, e.g.,
The discussion is from 2021 and presumably superseded, though it doesn't seem to have a clear resolution. Edit: On rereading, the intent of using Link header is clear, mainly driven by not messing with user data and improving performance of discovery of constraints on user data. |
I've been revisiting the SAI spec, and my current understanding is that the registry set, data registries and agent registry are by design only accessible by an application if it has received the a data grant for those registries. Revisiting my original use case, emphasising the last part
Discovery via either shape tree link header or the data registration require that the user has already received a data grant to the data or the data registry respectively.
Does this sound accurate? |
In many situations, the Authorization Agent is a natural fit to take on responsibilities that require complete trust. |
I would like to confirm my understanding of use cases where a user receives a uri and wishes to check whether an app can open it, or identify an app to open it with.
My understanding is that the intention would be that the shape tree of the resource is identified, and then compared with the registered shape trees provided by application identity profile documents.
Following the spec, it appears there is no link from a data instance to its data registration. Is this correct?
Instead, this use case seems to be covered by the shape tree spec, with the link header providing the shape tree manager.
If so, is there a link between the data registration and shape tree manager that needs to be specified?
And would this link header be a should or a must? Will servers consistently provide it? (it's a must for shape trees)
As a point of comparison, I like the way I can:
I understand the need to check shapes rather than just types, but my preferred option would be to replace step (2) with looking up the shape or shape tree expressed in a single triple rather than by checking headers or loading registries. I expect that might be too simplistic, but I don't yet understand why.
The text was updated successfully, but these errors were encountered: