Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Allow the definition of named graphs without @ keywords #481

Closed
RubenVerborgh opened this issue Apr 12, 2017 · 11 comments
Closed

Allow the definition of named graphs without @ keywords #481

RubenVerborgh opened this issue Apr 12, 2017 · 11 comments

Comments

@RubenVerborgh
Copy link

I'd like named graphs to become first-class citizens of JSON-LD 1.1, such that it becomes really straightforward to separate things in graphs. One reason is the separation of data, metadata, and controls, but there are several others.

If I'm not mistaken, at the moment it's not possible to define something like:

{
    "members": [ { "@id": "x" }, { "@id": "y" } ],
    "metadata": {
       "memberCount": 12300
    },
    "controls": {
        "nextPage": "/members/?page=2"
    }
}

where metadata and controls in fact correspond to different graphs.

Note also the similarly of this use case with what application/hal+json does with _links and _embedded.

It seems that #195 discusses something related, but that one seems specific for containers.

@dlongley
Copy link
Member

I think this is very important for the Verifiable Claims work and would like to see it happen as well.

@RubenVerborgh
Copy link
Author

Nanopublications are another use case.

@msporny
Copy link
Member

msporny commented Apr 12, 2017

Agreed. This is also very important for the Linked Data signatures work:

{
    "graphData": [ ... ],
    "graphProvenanceData": { ... },
    "graphSignatureData": { ... }
}

... which is important for the Verifiable Claims work and the Linked Data and Distributed Ledgers work. I'd really like to see a solution for this in JSON-LD 1.1 as our current approach requires the use of '@graph', which has been balked at, which ends up being a distraction, by a number of JSON developers.

@dlongley
Copy link
Member

I've pasted a link to a patch to jsonld.js to support simple @graph containers here:

#195 (comment)

@gkellogg
Copy link
Member

gkellogg commented Nov 9, 2017

@dlongley can you correct that reference?

@gkellogg
Copy link
Member

Issue #549 mostly addresses this.

@dlongley
Copy link
Member

@gkellogg, is a reference broken? Not sure what you mean.

@gkellogg
Copy link
Member

No, it seemed broken when checking at TPAC, it's fine.

@RubenVerborgh
Copy link
Author

@gkellogg Thanks—could you clarify “mostly”?

@gkellogg
Copy link
Member

@RubenVerborgh perhaps not the issues themselves, but @dlongley's implementation limits these to anonymously named graphs, without even a BNode identifier. That fit's the Verifiable Credentials use case, but does not support actually named graphs. Doing this would require fixing the name in the term definition using a new keyword, such as @graphName or @graphId so that that particular graph name is applied to the value. This allows the particular named graph to be referenced elsewhere (to the degree that RDF 1.1 has a concept of referencing named graphs).

@gkellogg gkellogg mentioned this issue Dec 7, 2017
4 tasks
@gkellogg
Copy link
Member

gkellogg commented Dec 7, 2017

Closed via #549.

@gkellogg gkellogg closed this as completed Dec 7, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants