SolidLabResearch / Challenges

24 stars 0 forks source link

Creating resources derived from the knowledge graph using Event Sourcing and CQRS patterns #27

Open pietercolpaert opened 2 years ago

pietercolpaert commented 2 years ago

Pitch

An authoritative write resource can have multiple Knowledge Graphs views on top of it. Describing -- and executing -- workflows on top of these authoritative resources creating such derived views (cfr. the architectural event sourcing pattern or CQRS pattern) can be the glue between seeing a Solid pod as a file-based system vs. a knowledge graph.

Examples of Knowledge Graph resources:

[1] @RubenVerborgh’s reflections of knowledge contains the general idea. This solution should provide one way to glue together a knowledge graph with the resource-based views on top of Solid pods.

Desired solution

Event sourcing in Solid - Event sourcing for Solid

Acceptance criteria

Pointers

Scenarios

See the use cases on chat #1 and location history #10

pietercolpaert commented 2 years ago

Through the concept of streams and processors, we’re working on a way to describe derived resources in the SDS specification: https://w3id.org/sds/specification

pheyvaer commented 2 years ago

@RubenVerborgh What changes do you expect here?

RubenVerborgh commented 2 years ago

A challenge is a technical problem applied to a concrete use case with as output a demo. I'm missing the use case and demo parts.

pietercolpaert commented 2 years ago

Could we maybe add a separate type for an architecture proposal that could be applied in multiple challenges?

I could add a use case and a demo, but then it would basically be #10, but a bit more generically described

RubenVerborgh commented 2 years ago

I think it's fine to have #10 actually, or to suggest this as a solution to #10.

One reason we're asking for a specific use case and a demo, is that those are tasks that can be finished. The technical challenge described above is fundamentally never finished: one can always find new ways to derive resources.

So can you think of the a case that demonstrates the kind of complexity you at least want? I'd suggest to keep the text above as-is, and to create a new issue. (We could later indeed decide to collect architectural proposals.)

pheyvaer commented 2 years ago

@pietercolpaert Did you have the chance to look into making the necessary changes?

pietercolpaert commented 2 years ago

I still wonder whether we’d rather call this a design issue then and document it elsewhere. For me #10 remains the concrete demo there.

pheyvaer commented 2 years ago

@RubenVerborgh What should we do with this? You said to keep the text, but does that mean that no changes are needed anymore?