This is an alternate to #86 to enable same use case: User controlled free-form representation for containers, enabling proper HATEOS when used with hypermedia. I request WG to seriously evaluate this requirement.
RFC 2387 defines multipart/related mimetype to enable transferring resource state through a compound representation. When resource's abstract data model is compound of multiple parts each having disparate data model.
Thus container's state can be modelled as compound of (server-managed containment index + user-controlled part) .
-
At the time of container creation, user will only attach user controlled part (possibly empty) in message body, just like any other resource representation. Server creates the container, and effective primary representation is set to compound of user-supplied part and server-managed lws+json index.
-
in GET response, use conneg to select whatever representation part.
-
optionally specify Prefer header values as container-index, user-provided, or like. Thus client can chose which part to get.
-
When no Accept or Prefer header is passed, can deliver compound representation with multipart/related. Or can leave to server's discretion.
If #86 is not plausible, this proposal aligns with existing direction of the spec, and just generalizes it using existing standards.
This is an alternate to #86 to enable same use case: User controlled free-form representation for containers, enabling proper HATEOS when used with hypermedia. I request WG to seriously evaluate this requirement.
RFC 2387 defines
multipart/relatedmimetype to enable transferring resource state through a compound representation. When resource's abstract data model is compound of multiple parts each having disparate data model.Thus container's state can be modelled as compound of (server-managed containment index + user-controlled part) .
At the time of container creation, user will only attach user controlled part (possibly empty) in message body, just like any other resource representation. Server creates the container, and effective primary representation is set to compound of user-supplied part and server-managed
lws+jsonindex.in
GETresponse, use conneg to select whatever representation part.optionally specify
Preferheader values ascontainer-index,user-provided, or like. Thus client can chose which part to get.When no
AcceptorPreferheader is passed, can deliver compound representation withmultipart/related. Or can leave to server's discretion.If #86 is not plausible, this proposal aligns with existing direction of the spec, and just generalizes it using existing standards.