-
Notifications
You must be signed in to change notification settings - Fork 98
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
IETF did+ld+json media type registration #208
Comments
there is almost zero chance this would go through within a reasonable amount of time.
I do not think that would work either: the Sigh... The third alternative, which is valid and easy: define a profile for the
(I have just made up the URL for the profile; that would need some bikeshedding.) in spite of its ugliness this is, In my view, the only valid, easy to administer solution. As for being ugly: I do not think these media types will be set by average users, only by server administrators and application developers. In other words, this media type will be machine generated most of the time, ie, it does not really matter. |
For the record, ActivityStreams 2.0 ended up with |
Yeah, I'm a -1 to the profile approach... it's not something that developers are used to doing wrt. media types. I'd rather we define an entirely new media type: application/did+jsonld and then state that the processing rules for it are the same as the JSON-LD media type (if IANA says that we can't do |
Sorry @manu I edited my comment after you saw it I think because I misread Ivan's. AS2 didn't use profile in the end, but a custom |
Haha, great, so we have two distasteful options to choose from. :) Has the ActivityStreams community signaled what they would have liked to see instead? |
I should look stuff up instead of relying on my memory. AS2 actually uses I can't and shouldn't try to speak for the ActivityStreams community, but actually I think most of the frustration with the custom media type comes from people having to customise JSON-LD tools to parse it as JSON-LD, but anyone treating it as JSON-only I suspect is fine with it. To be honest I'd be quite surprised if JSON-only implementations were not igorning |
@rhiaro iirc the custom media type was needed because JSON-LD 1.0 doesn't support "lists of lists" (which has thankfully been fixed in JSON-LD 1.1!!). So, developer can (and should) treat the custom media type and the profile'd one as equivalent in so far as that contained JSON doesn't include GeoJSON...which uses lists of lists... An upgrade to JSON-LD 1.1 would fix that, though. 😸 |
Here's @jasnell's comment about the compromise: |
Hmm... so if the JSON-LD community has to go through pain for this, that's probably ok (because that community is used to going through pain to address JSON-only developer concerns). So, this is good news. We should also see if we can convince JSON-LD processor implementers to treat other known media types as JSON-LD. So all these media types would be processed as "application/ld+json": "application/did+ld+json", "application/activity+json", etc. /cc @davidlehn @dlongley @gkellogg We might do that via a media type hook that fires and does pre-processing on the input document (such as injecting a known |
Just for reference, this was discussed during a meeting with the JSON-LD WG (see minutes). |
I wonder if IANA is only against considering Could this be a temporary hack until perhaps later nested suffixes can be officially introduced? |
It's legal per the rules, AFAIK. Whether or not IANA would approve it is another matter. I think we have data to say that they wouldn't approve it. :) In any case, we should ask as soon as possible. |
So to summarize..
|
ah... always fun to see long standing issues still as yet unresolved ;-) ... This all, of course, brings back up all the issues why the current media-type mechanism is broken in some fundamental ways but none of that would help resolve the more immediate issue here. One approach you could take is simple |
I prefer the option where we push IANA to fix Media Types on the Internet and allow "application/did+ld+json". The worst that could possibly happen is they say no and we implement one of the many hacks available to us. We have ~9 months to get a response from IANA, let's see if we can get them to do the right thing. I think the next step here is to have @burnburn, @brentzundel, and @iherman make the request to IANA to look into this issue on behalf of the DID WG (since it's too late for the JSON-LD WG to do anything about it in this iteration of that standard). |
Fwiw, I'd be very much in favor of an IETF draft that added |
@msporny Adding some sort of support to JSON-LD processors for other known media types sounds possible and reasonable. Perhaps various use cases (from here and elsewhere) and recommendations for implementations could go in the best practices document. How flexible are people expecting clients and servers to be? Will servers also support |
That's really interesting, I hadn't considered that as an option before, makes sense, @jasnell, you rebel, you. :)
Except for the fact that we just merged something into DID Core today that @jricher wrote that does not allow you to do "fuzzy works" solutions - no content sniffing or other fuzzy detection of content. |
In a parallel I will probably send the reply this weekend, after our JSON-LD call. We may have an answer next week, and we can plan accordingly. We are not in an extreme urgency. |
Just for info: I did ask my contacts at IANA on what the best way forward is for this issue, and she has forwarded my question to an (unnamed) IANA expert. The ball is in their courtyard on the matter. |
We need to make a call here so we can get something consistent in the specification. I'm going to start enforcing the following logically consistent layout in the specification (I think this is what we would want in the ideal case):
This will give us a consistent IANA naming convention and push the issue at IANA. If they come back and tell us we can't do that, well, we can cross that bridge when we come to it. Changing it in the spec won't be difficult, it's the getting consensus at IETF/IANA/W3C that's going to be the challenge. |
@msporny we can do that of course. Our submission to IANA for the registration of the mime types would happen at CR phase, which is still several months away, so having these in the current document as a, as you say, ideal case is fine. However, I have a problem with the fourth one, ie, If the CBOR+LD happens at some point (eg, via the JSON-LD CG + the maintenance WG), we can add this later. |
That's certainly something we could (and should 😉) pursue in the JSON-LD CG: |
We need to reach out to IANA to see what the status of this is... |
... where "we" is @iherman @msporny @burnburn and @brentzundel. Ivan, who is the contact at IANA that said they'd look at this? |
I have sent out a mail asking about the status, sorry I missed the question two weeks ago. (The contact address is simply [email protected], b.t.w., but it is, I believe, better if I continue to be the go-between. Just do not kill the messenger:-) |
I've added PR for the at risk language for I would like to see something about using regular |
I would suggest we had a separate topic call at some point to consider the media type issue and what our fallbacks are. I am not convinced about the |
This issue continues to be moved forward and discussed here: https://mailarchive.ietf.org/arch/msg/media-types/CdoZdUVL_RMTYICkiJ7dcis2D8k/ |
@iherman wrote:
Agreed... I think it might be useful to get two things sorted:
That is to say, the only sane path forward is to register "application/did+ld+json" for the JSON-LD representation. The only thing that seems like it would be a challenge at this point is the timing of the media type suffix clarification I-D becoming an IETF RFC. We are not getting strong push back on it, and we can note in the specification that the registration will happen only when the IETF Media Type folks are happy with the extension (and then publish an update to the REC when it happens using the maintenance WG). If it doesn't happen in a timely manner, then it just hangs out there until it does happen. @iherman, I believe that we've done similar things in previous WGs -- you just effectively say: "This isn't normative yet, but is expected to become normative when X happens, and at that point, the REC will be updated." So, we manage expectations on a particular feature by marking it as "at risk", saying it's non-normative for now, and is expected to become normative at some time in the future. |
While I fully agree that Once we have a consensus on the approach I will have to ask our IETF experts within the team; I am certainly not one of them! |
I've updated the draft again based on feedback on the ietf mailing list. If we can't get |
Agree.
Also agree, and that you know it's JSON-LD, |
@rhiaro -- Your multiple-suffix draft RFC looks great. I have one suggestion, which may be contradict feedback you've already received, in which case my suggestion should probably be ignored. That suggestion is to reverse the order of the subtypes and media types listed in 2.1, such that the most-refined (and most-preferred) come first, and the least-refined (and least-preferred) come last. (Some text about that order of preference could be added to the descriptive text whether or not the current ordering is changed as I suggest here.) |
Fully agree.
Just an additional data point that we should not forget about: the JSON-LD WG discussed this issue back in the days, but that WG did not have the time, nor really the possibility to introduce a radical change. However, the JSON-LD 1.1. IANA Considerations section already includes a series of predefined
I know that using such profile URI-s is a suboptimal solution at best, and I am not advocating it as the solution. But, nevertheless, we may want to consider the route of using |
by "first" do you mean left-most? If so I think what you're asking is already the case. If you mean "first" from right to left, then I think it's too late to change that given I like the "most/least-preferred" language though. I'll see if I can work that in. |
@rhiaro - By "reverse the order", I mean, change this presentation --
-- to this --
-- and change this presentation --
-- to this --
In other words, not to change any of the specific texts (not changing anything about left-most vs right-most); just to change the vertical presentation order of the three items in each of these lists. Top is most refined media type and most preferred interpretation; bottom is least refined media type and least preferred interpretation. |
ohhh sure, that works for me! |
I'm curious as to why this work is prioritizing only one representation, i.e. |
@jonnycrunch the IETF spec I drafted solves the general problem of media types with more than one suffix (aka more than one + sign). We don't have this problem for did+json or did+cbor because they have only one + so are a normal case. There is no "did in general" because |
@rhiaro -- It appears that updating the draft from
|
@TallTed yes, but I'm not getting any of the confirmation emails from the IETF system. Trying to figure out how to debug.. |
@rhiaro - Ah! Bugs do bite everywhere... Something seems to have changed, as the @jonnycrunch - You may want to take a look at the above. |
PR #524 has been merged addressing the original issue and sub-issues. Closing. |
We have received a response from IANA wrt. did+ld+json as a media type:
The DID WG now needs to decide if we should pursue the +ld+json suffix at IETF (which is the right thing to do), or we just fall back to
did+jsonld
and state that the media type is identical to ld+json (which is a hack to get around the fact that IETF hasn't ruled on this particular thing).Exciting to be on the bleeding edge, isn't it?! :)
The text was updated successfully, but these errors were encountered: