Re: User Hypermedia format

mike amundsen <[email protected]> Sat, 1 Mar 2014 19:15:28 -0500
Newsgroups gmane.comp.web.services.rest
Message-ID <CAPW_8m458jQnimogiJxebTk_L0uUAPp1Z_RM2bwbACiWibnt2g@mail.gmail.com>
right. transclude="true" is a hint. just like embed="true" is a hint in Cj.

as Matt points out, the client intent may not be the same as the server's
suggestion and that's fine. the server doesn't (or shouldn't) worry about
that detail.

FWIW, i talked about this idea a while back with the notion of "Aspects"[1]
where some affordance details are server-focused (idempotence [HTTP.POST v.
HTTP.PUT] & safety [HTTP.GET v. HTTP.DELETE])and some are client-focused
(mutability [HTML.A] and transclusion [HTML.IMG]). The server stuff is a
strong network promise, the  client stuff is a local promise.

anyway, in Uber the "send-format" and "receive-format" are also loose
promises. just like HTML.A@type is a loose promise (hint).

i want to offer folks the oppty to include this when they wish and let
clients and servers sort out whether they treat them as strong or weak
promises.

make sense?

[1]
http://www.w3.org/2011/10/integration-workshop/p/hypermedia-oriented-design.pdf


mamund
+1.859.757.1449
skype: mca.amundsen
http://amundsen.com/blog/
http://twitter.com/mamund
https://github.com/mamund
http://linkedin.com/in/mamund


On Sat, Mar 1, 2014 at 3:18 PM, Matt McClure <[email protected]>wrote:

>
>
> That feels right. The media type and the client requirements are somewhat
> independent, no? This affects servers also, possibly with different
> expectations.
>
> A related concept that might be valuable to express is whether a reference
> is "logically included" in the referring resource or if it's some other
> kind of relationship. Does transclusion express exactly that or merely an
> overlapping concept?
>
> Matt
>
> --
> http://matthewlmcclure.com
>
> On Mar 1, 2014, at 3:12 PM, Darrel Miller <[email protected]> wrote:
>
> A wise man once told me (and for life of me I can't remember who) that it
> is the client's decision as to whether to LE or LO.  Is transclude just a
> hint?
>
> Darrel
>
>
> On Thu, Feb 27, 2014 at 9:28 AM, mike amundsen <[email protected]> wrote:
>
>>
>>
>> Yep - Matt's got it.
>>
>> these are equivalent:
>>
>> <data url="..." rel="logo" transclude="true" />
>> and
>> <img src="..." rel="logo" />
>>
>>
>>
>> mamund
>> +1.859.757.1449
>> skype: mca.amundsen
>> http://amundsen.com/blog/
>> http://twitter.com/mamund
>> https://github.com/mamund
>> http://linkedin.com/in/mamund
>>
>>
>> On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <[email protected]>wrote:
>>
>>> Glenn,
>>>
>>> I'll let Mike correct me if I'm wrong but I believe transclusion is
>>> analogous to the behavior of an <img> or <iframe> element in HTML. It's
>>> telling the client to fetch the transcluded resource, just including it by
>>> reference instead of by value.
>>>
>>> Matt
>>>
>>> --
>>> http://matthewlmcclure.com
>>>
>>> On Feb 27, 2014, at 2:04 AM, Glenn Block <[email protected]> wrote:
>>>
>>>
>>>
>>> Hi Mike
>>>
>>> Cool to see this. I am looking over the format. I can see there's some
>>> CJ footprints there ;-)
>>>
>>> Question on transclude. What do you mean when you say that if it is true
>>> it should be embedded in the current document, do you mean it is already
>>> present inline?
>>>
>>> I am asking in reference to this example:
>>>
>>>               {
>>>                 "name" : "person",
>>>                 "rel" : "item",
>>>                 "url" : "http://example.org/people/1",
>>>                 "data" :
>>>                 [
>>>                   {"name" : "givenName", "value" : "Mike"},
>>>                   {"name" : "familyName", "value" : "Amundsen"},
>>>                   {"name" : "email", "value" : "[email protected]"},
>>>                   {"name" : "avatarUrl", "transclude" : "true", "value" : "http://example.org/avatars/1"}
>>>                 ]
>>>               },
>>>
>>>
>>> Above, transclude is true. Where is the embedding / how does it play in?
>>>
>>> Thanks
>>> Glenn
>>>
>>>
>>> On Sun, Feb 23, 2014 at 10:25 PM, mike amundsen <[email protected]>wrote:
>>>
>>>>
>>>>
>>>> yep - you got it right.
>>>>
>>>> i might add some prose that sets expectations on which level of support
>>>> for RFC6570 is needed in order to be uber-compliant. that might lower the
>>>> bar for implementation.
>>>>
>>>>
>>>>
>>>>
>>>> mamund
>>>> +1.859.757.1449
>>>> skype: mca.amundsen
>>>> http://amundsen.com/blog/
>>>> http://twitter.com/mamund
>>>> https://github.com/mamund
>>>> http://linkedin.com/in/mamund
>>>>
>>>>
>>>> On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <
>>>> [email protected]> wrote:
>>>>
>>>>> Hiya,
>>>>>
>>>>> > as for the use of @model. this is applied to the associated @url in
>>>>> the same <data> element. That means you have full control over how much is
>>>>> in the @model and how much is in the @url. That includes path segements,
>>>>> etc. just as outlined in RFC6570.
>>>>> >
>>>>> > Does this clarify things?
>>>>>
>>>>>
>>>>> Only where RFC6570 is clear. :) I guess I'm responding to the examples
>>>>> from the website where for example we've got ;
>>>>>
>>>>> <data name="search" rel="search" url="http://example.org/search"
>>>>> model="{&title}" />
>>>>>
>>>>> Which I assume is applied to that URL with a ?param structure, but
>>>>> what with ;
>>>>>
>>>>> <data name="search" rel="search" url="http://example.org/search"
>>>>> model="/{&type}/{&title}" />
>>>>>
>>>>> Will that resolve to http://example.org/search/{type}/{title}? If yes,
>>>>> then I understand how RFC6570 applies to the format. If no, I need
>>>>> education.
>>>>>
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Alex
>>>>>
>>>>> --
>>>>>  Project Wrangler, SOA, Info Alchemist, UX, RESTafarian, Topic Maps
>>>>>  http://shelter.nu/blog  |  google.com/+AlexanderJohannesen
>>>>>  http://xsiteable.org  |  http://www.linkedin.com/in/shelterit
>>>>>
>>>>>
>>>>> ------------------------------------
>>>>>
>>>>> Yahoo Groups Links
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
>
> 
>