Open kjetilk opened 3 years ago
I can make a stab at defining some of the mentioned aux resource types in these terms, to make it more concrete. I use the terms in paranthesis in the list above, and use + or - to indicate whether it uses the dimension or not.
Type | LC | AC | SM | TS |
---|---|---|---|---|
Access Control | + | -(or +? (#303)) | - | - |
ShapeTree | + | + | - | - |
Redirect #136 | - | - | - | - |
Augmentation #144 | + | + | - | - |
Description (the usual one) | + | - | - | - |
Logs | - | + | + | - |
Etc.
There is a bit more comprehensive list of resource types documented here: https://github.com/solid/specification/issues/191 . I suggest using that as basis/input for the categorisation.
Yes, indeed!
Perhaps we should also be clearer about what should be an auxiliary resource and what should not. It seems to me that a few of these, like provenance, would at least sometimes be a normal contained, resource.
The resolution of the dimensions can vary. What I wrote in https://github.com/solid/specification/issues/270#issuecomment-868013522 is fairly flat and I think gives more precision on the characteristics of auxiliary resources. And, then there is additional consideration/definition about auxiliary resources which may not necessarily be a dimension - whether auxiliary resources can every be part of containment.
In the interest of resolving #177 , which is a prioritized issue, I read through many of the open issues labelled auxiliary resources. I may still have missed something. As @csarven notes, we need different relation types for different auxiliary resource types, otherwise, a client would not know what to get. In #172 , @justinwb suggested a few types. However, I have been looking for commonalities, and I think we'd resolve many issues if we took a more general approach. I think that "server managed" is one of several dimensions that auxiliary resources can map to, rather than a type in its own right. If we identify the dimensions that can be used to build auxiliary resource types, then we can in using hypermedia ( #270 ), define types in terms of those dimensions.
The four dimensions that I have identify so far are whether an auxiliary resource
can timeshift (e.g. Memento) (TS)
As we define the
Link
relation, the type URI itself should resolve to a definition based on these dimensions as well as other data.