-
Notifications
You must be signed in to change notification settings - Fork 5
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
Question on IETF definition of Profile #6
Comments
Indeed. The definition says that profiles provide constraints in addition to those provided by more generic MIME types. For example, there could be a profile saying "use FOAF to represent people" and that profile could apply to text/turtle, application/ld+json, etc. Furthermore, there is nothing that says that profiles could not work together, and thus constrain each other. So there is a flexible relationship between profiles and MIME types; this definition just separates one from the other (which is not the case of some of the other proposed profile definitions).
An IETF profile can be a JSON-LD profile; we don't see any reason to restrict it. (I do have a problem with the exclusion of JSON-LD profiles, to the point I will be making below.)
Also see earlier thinking on https://ruben.verborgh.org/articles/fine-grained-content-negotiation/#where-mime-types-fall-short The difference between structure and syntax is not black and white, but where I draw the line is "would I need a different parser?". For instance, a JSON document for which specific keys are required, would likely still be parsed with a JSON parser, not with a custom one. Hence, I see JSON as a MIME type, and the requirement of specific keys as a profile.
Constraints about what constitutes a valid (not "meaningful") document that are not covered by the parser corresponding to the MIME type. |
It feels odd to specify that I want a MIME type more than a profile when I want a profile with a certain MIME type. It's a bit like being asked whether I want an orange or to have it delivered on Tuesday. |
That is exactly the current limitation of MIME types. You can only say "orange on Tuesday", not "apple or orange" and "Tuesday or Wednesday". Hence, for backward compatibility, we include "orange on Tuesday", but now can also add "or orange" and "Tuesday or Wednesday". |
So if I want an orange on Tuesday, I have to state that I want an orange and then I have to state that I want an orange and I want it on tuesday, but I want the orange more than I want it on Tuesday. By conflating the two types of profile, you require extra ranking among what should be orthogonal desires. I suppose that ship has already sailed, but it just doesn't bode well for uptake, IMHO. |
Not really, that's just the full version for backward compatibility.
They are. By all means, drop the backward compatibility; it was a shortcoming of past solutions that they were not orthogonal. |
@aisaac Has your original questions been satisfactorily answered? There is much discussion but I haven't seen a resolution... |
@aisaac can you respond about this Issue's status? |
@aisaac this issue is now "due for closing". Last chance to say that you're not satisfied! |
@larsgsvensson I would gladly tell that I am satisfied, but I suppose a bit of due diligence is in order: can you point here to the latest definitions of profiles in the IETF draft and the Conneg spec(s) that have one, please? The links above don't work anymore, and I'm not sure I have the right pointers myself. |
The definition of "profile" in the latest IETF draft (not yet submitted to IETF) is:
In the current ED from DXWG-CNEG, the definition is:
|
This is especially for @RubenVerborgh but I'm eager to hear from others.
In w3c/dxwg#963
the new proposed definition for IETF profiles is:
And now as per this commit it is
@smrgeoinfo suggested that
@RubenVerborgh refuted that, and I note that indeed the last bit of the definition seeks to clarify that profiles are not MIME type focused.
However I am really struggling with the first part of the definition, which mentions "representations of documents" and "structural constraints". Does this part include or exclude the JSON-LD profiles that are different from our profiles, as we're trying to establish here? Can you give examples of "structural contraints that wouldn't be semantic constraints nor syntactical constraint? Maybe a reference to a definition for "structural" would help here.
The text was updated successfully, but these errors were encountered: