-
Notifications
You must be signed in to change notification settings - Fork 0
Description
TODO: This is a placeholder
The overall motivation of this challenge is to develop theory around materlialization-style reasoning across public and private data with various privacy restrictions.
The goal would be to give fast access to many different views on implicit data based based on a description of the explicit data a user has access to.
Pitch
In order to enable fast access to growing amounts of data in the Solid ecosystem; POD hosts are going to need an efficient way of materialising data which contains different views and access controls. Concretely, there needs to be a way of performing materialisation over all documents within a POD, each of which have varying level of access control, such that I can instantly look up, "what is the graph, including implicit data, that I see if I am user X trying to access documents A, B, and C"
The way I see the first version of this being implemented is:
- Implementing this specifically in terms of document views without bringing access controls into it. That is, fast and memory efficient lookups of what is the implicit data if I look at just document A, just document B, document A and B. In the 2 document of this is fairly straightforward incremental reasoning; with 1 index for implicit data for document A, another for the implicit data of document B, and then a 3rd for the implicit data that can only be generated using the union of document A and B. The main challenge for this case is avoiding duplicating data that is returned if document A and document B have an overlap in facts. For this reason it may be better to have a single annotated index rather than multiple indexes. This also becomes more complex when dealing with bigger permutations and combinations of indices.
- Seeing what changes are needed for this to handle triple-level permissions and access controls