Comments (13)
Why do we need a separate media type, rather than registering a profile for application/ld+json like expanded or compacted?
Frames are just JSON-LD documents that have special processing implications when applied to other JSON-LD documents.
As Framing does not have backwards compatibility requirements, I think we should consider our options. Especially with respect to w3c/dxwg#261.
from json-ld-framing.
Probably too early, but I wanted to get an issue set so we don’t forget to do it.
from json-ld-framing.
@gkellogg in as much as the direct processing model is identical to application/ld+json
) and only the context (sorry) in which it's used changes it's "meaning"--i.e. makes it a "frame" vs. a data document--I'd recommend avoiding another media type and leaning on profile
as done for compact, expanded, and flattended: https://www.iana.org/assignments/profile-uris/profile-uris.xhtml
That said, there could be a case made for the MIME type registration's value in association with editors and file extensions...but sadly you can't state a file extension for non-Web use in association with a profile=""
registry entry (which would've been nice for Web Annotation...).
from json-ld-framing.
If they're inconsistent, then we should pick one. However, I think the profile solution is likely best.
from json-ld-framing.
@gkellogg could you change the title here to reflect this new proposal? Or close in favor of an issue focused on the profile
proposal?
I'd like to get it on the agenda for a future call.
from json-ld-framing.
This issue was discussed in a meeting.
RESOLVED: Use ld+json with a profile for media type of frames, import frame keywords to syntax with reference out. {: #resolution7 .resolution}
RESOLVED: the use of the media type for a frame is RECOMMENDED not a MUST {: #resolution8 .resolution}
View the transcript
Define media profile for framesAdam Soroka: #21
Adam Soroka: #28
Gregg Kellogg: the framing document that did not become a rec has a mimetype in it
… but that was a bad idea– we have profiles!
… we have a profile param that identifies a context
… we don’t require that the context be published with that profile
… should we require that of frames?
… you might want to do that because frames use different keywords
Rob Sanderson: if you push a frame document into a regular JSON-LD proc, it should beef
Gregg Kellogg: [describes framing in general]
Rob Sanderson: ref: https://www.w3.org/TR/json-ld11-framing/ ;)
Ivan Herman: gkellogg: should this be a profile or a separate mediatype?
Ivan Herman: a mediatype points to a specific document that describes that mediatype. those docs are different in this case, so the mediatypes should be different
Gregg Kellogg: using the parameter would allow us to negotiate for a context
David Newbury: thinking about the IIIF use case, being able to request docs as either a context or a frame
Gregg Kellogg: if you reference a context but it comes back as a frame, you could change you inx model to account for that
David Newbury: IIIF use a “context” as we use a “profile”, e.g. to include a version
… but that seems okay because we could do it either way
Gregg Kellogg: we describe the behavior of downloading a context and we would need to account for this there.
Ivan Herman: if you don’t register a new mediatype for frame, we will have to change our docs, so which one requires more work?
Rob Sanderson: if we say separate mediatype, we need tests for that
… frames out there in the wild would now fail
Rob Sanderson: if that is decisive, we should rec that a profile SHOULD be used
… to avoid that
Proposed resolution: Use ld+json with a profile for media type of frames, import frame keywords to syntax with reference out. (Rob Sanderson)
Rob Sanderson: +1
Ivan Herman: +1
Harold Solbrig: +1
Gregg Kellogg: +1
Simon Steyskal: +1
Adam Soroka: +1
David I. Lehn: +1
Jeff Mixter: +1
David Newbury: +1
Benjamin Young: +1
Resolution #7: Use ld+json with a profile for media type of frames, import frame keywords to syntax with reference out. {: #resolution7 .resolution}
Proposed resolution: the use of the media type for a frame is RECOMMENDED not a MUST (Rob Sanderson)
Rob Sanderson: +1
Ivan Herman: +1
Adam Soroka: +1
Gregg Kellogg: +1
Simon Steyskal: +1
David Newbury: +1
David I. Lehn: +1
Harold Solbrig: +1
Resolution #8: the use of the media type for a frame is RECOMMENDED not a MUST {: #resolution8 .resolution}
Jeff Mixter: +1
from json-ld-framing.
@akuckartz : the idea is that the syntax document, more exactly the grammar of JSON-LD, should include the frame specific terms, too, which means that, from a media type point of view, a frame document would be a bona fide JSON-LD document. Ie, no need for a separate media type.
from json-ld-framing.
Fine with me. We can then proceed through the usual route. But I guess it is too early to register, isn't it?
from json-ld-framing.
Also fixed a wee typo in that section in 120c32b
from json-ld-framing.
A frame does have some elements that a normal JSON-LD document wouldn't, such as @default
and other flags. But, it is a subtle distinction. I could see using a profile instead of an independent type.
@BigBlueHat that wasn't a typo, but it is debatable if application/frame-ld+json
is better (or more correct) than application/ld-frame+json
.
from json-ld-framing.
@gkellogg it wasn't? 😕 The registration info was for application/ld-frame+json
, so application/frame-ld+json
seemed incorrect. Sorry if I've totally misunderstood what was being expressed there.
Regardless, I'd suggest we stick with profiles if at their core they can all be processed as application/ld+json
.
from json-ld-framing.
Related to w3c/json-ld-syntax#8
from json-ld-framing.
I do not understand the resolution. Was it in favor of a specific Media Type for frames or not?
from json-ld-framing.
Related Issues (20)
- Should tests for `@embed`: `@last` be restricted to JSON-LD 1.0? HOT 4
- Framing and Arrays HOT 4
- Ex. 41 Playground doesn't contain `@omitGraph: false` + playground does not apply `@omitGraph` HOT 3
- Pattern Matching HOT 4
- Can frames produce id maps? HOT 2
- Possible typos HOT 2
- Use a property several time when framing HOT 1
- validation errors/warnings HOT 1
- Language map with global context HOT 1
- IANA profile should be `frame` not `framed` HOT 5
- how to use the `frame` and `framed` profiles? HOT 12
- Fix invalid WebIDL HOT 1
- Change "Lexicographical Order" (and related) to "Unicode code point order". HOT 1
- Possible bug with `@json` being treated as invalid `type` in frame HOT 24
- How to use specific value inside a frame to filter out credentials those do not contain that value
- Framing on nested graphs
- Add test for `@graph` keyword aliasing
- more JSON-LD framed examples for performance testing
- Framing to a default language for the entire doc HOT 5
- test GH action
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from json-ld-framing.