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

Frame Matching & Blank Nodes #9

Closed
gkellogg opened this issue Aug 31, 2018 · 1 comment
Closed

Frame Matching & Blank Nodes #9

gkellogg opened this issue Aug 31, 2018 · 1 comment

Comments

@gkellogg
Copy link
Member

The current draft for JSON-LD framing (January 2018) does not mention blank nodes in the frame matching algorithm specification and a strict interpretation of the first test goes a bit against the semantics of RDF in case a frame includes blank nodes:

1 Node matches if it has an @id property value which is also a value of the @id property in frame.

According to its definition, a frame is a JSON-LD document, meaning it can include blank nodes. if it happens, blank nodes in the frame will match blank nodes in a document only if they have the same ID and I believe that the Ruby implementation performs simple string comparison.

In RDF, shared blank nodes require a special handling and we loose that specificity here. It would be good to either redefine JSON-LD frames such that blank nodes are not allowed or precise the specification of frame matching. I would be in favor of the latter approach.

Blank nodes in JSON-LD frames might be useful when nodes have multiple relations to each other. For instance, nodes matching the following frame represent all alumni of a university who still work for that university:

{
  "@context": "http://schema.org",
  "@type": "Person",
  "alumniOf": {
    "@id": "_:univ",
    "@type": "CollegeOrUniversity"
  },
  "worksFor": { "@id": "_:univ" }
}

Original issue json-ld/json-ld.org#579.

@elf-pavlik
Copy link
Member

Blank nodes in JSON-LD frames might be useful when nodes have multiple relations to each other. For instance, nodes matching the following frame represent all alumni of a university who still work for that university

I think N3 and SPARQL would use variables in such cases ?univ

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

3 participants