You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Spaces are logical groups of triples and by default, when querying the space, only entities that have triples in that space would be returned. If an entity described in another space is closely related to these defined in a given space, it would be natural to also include that entity in the space. This can be done by touching that entity in the given space. However, this process is tedious and requires editors to explicitly add relations for external entities one at a time. There is therefore a need for a more natural way to include entities in bulk from another space into a space, hence the idea of aggregation.
Aggregation refers to the process which determines which entities are considered when querying entities in a specific space. Specifically, the idea is that the entities considered when querying a space would not necessarily be restricted to any entity touched by the space (see [[Projects/GRC20/Entity Pluralism|Entity Pluralism]]) but could also include entities of other "verified" or "related" spaces.
For example, Coinbase makes a post that's related to DeFi. They specify DeFi as a Related space on the Post. The DeFi space has Coinbase added as a verified space. That allows us to create a query in the DeFi space that would include that post.
Initial Design
A space S can have any number of verified spaces
An entity e in any space can have a related space relation pointing to a space entity
Given a space S, the entities visible from the perspective of S (i.e.: queryable in that space) are all entities touched by S, as well as all the related entitiese such that:
e is touched by space S' and S' is a verified space of S
e has a related space relation defined in space S' pointing to space S
Open Questions
Is aggregation always applied by default? Or should it be possible to toggle it on or off?
What triples should be returned for a related entitye as defined above?
The text was updated successfully, but these errors were encountered:
cvauclair
changed the title
feat: Aggregation
feat: Entity aggregation
Feb 5, 2025
Motivations
Spaces are logical groups of triples and by default, when querying the space, only entities that have triples in that space would be returned. If an entity described in another space is closely related to these defined in a given space, it would be natural to also include that entity in the space. This can be done by touching that entity in the given space. However, this process is tedious and requires editors to explicitly add relations for external entities one at a time. There is therefore a need for a more natural way to include entities in bulk from another space into a space, hence the idea of aggregation.
Aggregation refers to the process which determines which entities are considered when querying entities in a specific space. Specifically, the idea is that the entities considered when querying a space would not necessarily be restricted to any entity touched by the space (see [[Projects/GRC20/Entity Pluralism|Entity Pluralism]]) but could also include entities of other "verified" or "related" spaces.
For example, Coinbase makes a post that's related to DeFi. They specify DeFi as a Related space on the Post. The DeFi space has Coinbase added as a verified space. That allows us to create a query in the DeFi space that would include that post.
Initial Design
S
can have any number of verified spacese
in any space can have a related space relation pointing to a space entityS
, the entities visible from the perspective ofS
(i.e.: queryable in that space) are all entities touched byS
, as well as all the related entitiese
such that:e
is touched by spaceS'
andS'
is a verified space ofS
e
has a related space relation defined in spaceS'
pointing to spaceS
Open Questions
e
as defined above?The text was updated successfully, but these errors were encountered: