Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Separate condition check and graph construct call in ModelRead #157

Open
dlamoris opened this issue Sep 26, 2024 · 0 comments · May be fixed by #174
Open

Separate condition check and graph construct call in ModelRead #157

dlamoris opened this issue Sep 26, 2024 · 0 comments · May be fixed by #174

Comments

@dlamoris
Copy link
Contributor

dlamoris commented Sep 26, 2024

Similar to #100, the gsp ModelRead should check conditions and get target graph first and use the concrete graph uri to get the model.
https://github.com/Open-MBEE/flexo-mms-layer1-service/blob/develop/src/main/kotlin/org/openmbee/flexo/mms/routes/gsp/ModelRead.kt

The result should be similar to what ModelQuery and LockQuery does https://github.com/Open-MBEE/flexo-mms-layer1-service/blob/develop/src/main/kotlin/org/openmbee/flexo/mms/UserQuery.kt#L27

According to the spec, the underlying graph store, if there's a gsp endpoint, should allow a GET call instead of needing a construct query https://www.w3.org/TR/sparql11-http-rdf-update/#http-get

The following two operations are considered to be equivalent

GET /rdf-graph-store?graph=..graph_uri.. HTTP/1.1
Host: example.com
Accept: text/turtle; charset=utf-8

CONSTRUCT { ?s ?p ?o } WHERE { GRAPH <graph_uri> { ?s ?p ?o } }

This would allow us to use the GET directly instead of the construct query, though not sure if there's any performance benefit, depending on the backend

@dlamoris dlamoris added this to Flexo Sep 26, 2024
@github-project-automation github-project-automation bot moved this to New in Flexo Sep 26, 2024
@dlamoris dlamoris moved this from New to Backlog in Flexo Sep 26, 2024
@dlamoris dlamoris mentioned this issue Sep 26, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
Status: Backlog
Development

Successfully merging a pull request may close this issue.

1 participant