Loading ...
Sorry, an error occurred while loading the content.
 

User Hypermedia format

Expand Messages
  • mike amundsen
    /* pardon the cross-posting */ I just published a first working draft of a new hypermedia format I am (humbly) calling Uber Hypermedia [1]. I m maintaining it
    Message 1 of 25 , Feb 23, 2014
      /* pardon the cross-posting */

      I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

      It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

      Here is some text from the opening:
      <snip>
      The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

      The Uber message model has a number of design goals:
      - Keep the message structure as lean as possible.
      - Support all the H-Factors [HFactor] in hypermedia controls.
      - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
      - Maintain fidelity for more than one base message format (XML, JSON, etc.)
      </snip>

      I'm looking for any/all feedback here or in the repo space.  Thanks in advance.


    • Alexander Johannesen
      Hi there, I like it a lot, and might just rewrite some of my stuff into using this instead of my own (similar) format, just for the heck of it. :) Quick
      Message 2 of 25 , Feb 23, 2014
        Hi there,

        I like it a lot, and might just rewrite some of my stuff into using this instead of my own (similar) format, just for the heck of it. :)

        Quick question; using the @model, is it assumed the model works as an extension to the current URI? Ie, if the current URI is "http://test.com/page" and there's a model there "?param=data" we just plonk it on the current URI, but using a more RESTful approach can often be @model="/{fiddle}/{foo}" so would that work as an appender to the current URI? I have a lot of URI templates around that use the structure like this, so would be good to just confirm that. 


        Cheers,

        Alex


        On Mon, Feb 24, 2014 at 12:35 PM, mike amundsen <mamund@...> wrote:
         

        /* pardon the cross-posting */

        I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

        It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

        Here is some text from the opening:
        <snip>
        The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

        The Uber message model has a number of design goals:
        - Keep the message structure as lean as possible.
        - Support all the H-Factors [HFactor] in hypermedia controls.
        - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
        - Maintain fidelity for more than one base message format (XML, JSON, etc.)
        </snip>

        I'm looking for any/all feedback here or in the repo space.  Thanks in advance.





        --
         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
      • Matt McClure
        Hi Mike, Are the values of value properties always strings? It looks so in all the examples, but I don t see that explicitly stated. Matt ... -- Matt McClure
        Message 3 of 25 , Feb 23, 2014
          Hi Mike,

          Are the values of "value" properties always strings? It looks so in all the examples, but I don't see that explicitly stated.

          Matt



          On Sun, Feb 23, 2014 at 8:35 PM, mike amundsen <mamund@...> wrote:
           

          /* pardon the cross-posting */

          I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

          It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

          Here is some text from the opening:
          <snip>
          The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

          The Uber message model has a number of design goals:
          - Keep the message structure as lean as possible.
          - Support all the H-Factors [HFactor] in hypermedia controls.
          - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
          - Maintain fidelity for more than one base message format (XML, JSON, etc.)
          </snip>

          I'm looking for any/all feedback here or in the repo space.  Thanks in advance.





          --
          Matt McClure
          http://matthewlmcclure.com
          http://www.mapmyfitness.com/profile/matthewlmcclure
        • mike amundsen
          hmm... yes, it s implied, but not clear and possibly not right. in XML innerText is untyped unless more info is provided (via the message or a schema). in
          Message 4 of 25 , Feb 23, 2014
            hmm...

            yes, it's implied, but not clear and possibly not right. in XML innerText is "untyped" unless more info is provided (via the message or a schema). in JSON it's easier to express type w/o metadata ("value":13}, {"value":false}, "value":"mike"}).

            hmm....

            what's the smart thing to do here (given i'd like to keep fidelity across serilization formats as much as possible)?





            On Sun, Feb 23, 2014 at 8:50 PM, Matt McClure <matthewlmcclure@...> wrote:


            Hi Mike,

            Are the values of "value" properties always strings? It looks so in all the examples, but I don't see that explicitly stated.

            Matt



            On Sun, Feb 23, 2014 at 8:35 PM, mike amundsen <mamund@...> wrote:
             

            /* pardon the cross-posting */

            I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

            It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

            Here is some text from the opening:
            <snip>
            The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

            The Uber message model has a number of design goals:
            - Keep the message structure as lean as possible.
            - Support all the H-Factors [HFactor] in hypermedia controls.
            - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
            - Maintain fidelity for more than one base message format (XML, JSON, etc.)
            </snip>

            I'm looking for any/all feedback here or in the repo space.  Thanks in advance.





            --
            Matt McClure
            http://matthewlmcclure.com
            http://www.mapmyfitness.com/profile/matthewlmcclure



          • mike amundsen
            Matt: I reviewed the JSON serializations and made a couple corrections. thanks for the catch and would appreciate your scan again to catch any remaining
            Message 5 of 25 , Feb 23, 2014
              Matt:

              I reviewed the JSON serializations and made a couple corrections. thanks for the catch and would appreciate your scan again to catch any remaining problems.

              I've also added some text to the "value" definition to say JSON format MUST only be set to string, number, or literals (true, false, null) and MUST NOT be set to object or array. What is then implied (not yet stated in the prose) is that, to pass arrays or objects in the "value" attribute, you need to *escape* the object/array and pass as a string. 

              Does this make sense?




              On Sun, Feb 23, 2014 at 10:41 PM, mike amundsen <mamund@...> wrote:
              hmm...

              yes, it's implied, but not clear and possibly not right. in XML innerText is "untyped" unless more info is provided (via the message or a schema). in JSON it's easier to express type w/o metadata ("value":13}, {"value":false}, "value":"mike"}).

              hmm....

              what's the smart thing to do here (given i'd like to keep fidelity across serilization formats as much as possible)?


              On Sun, Feb 23, 2014 at 8:50 PM, Matt McClure <matthewlmcclure@...> wrote:


              Hi Mike,

              Are the values of "value" properties always strings? It looks so in all the examples, but I don't see that explicitly stated.

              Matt



              On Sun, Feb 23, 2014 at 8:35 PM, mike amundsen <mamund@...> wrote:
               

              /* pardon the cross-posting */

              I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

              It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

              Here is some text from the opening:
              <snip>
              The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

              The Uber message model has a number of design goals:
              - Keep the message structure as lean as possible.
              - Support all the H-Factors [HFactor] in hypermedia controls.
              - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
              - Maintain fidelity for more than one base message format (XML, JSON, etc.)
              </snip>

              I'm looking for any/all feedback here or in the repo space.  Thanks in advance.





              --
              Matt McClure
              http://matthewlmcclure.com
              http://www.mapmyfitness.com/profile/matthewlmcclure




            • mike amundsen
              Alex: Glad to hear this looks promising. This is a first draft so it s likely some things will drift. I am also very much interested in what you find as you
              Message 6 of 25 , Feb 23, 2014
                Alex:

                Glad to hear this looks promising. This is a first draft so it's likely some things will drift.  I am also very much interested in what you find as you start your implementation. feedback on confusions/shortcomings in the design will be most helpful.

                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?




                On Sun, Feb 23, 2014 at 8:50 PM, Alexander Johannesen <alexander.johannesen@...> wrote:


                Hi there,

                I like it a lot, and might just rewrite some of my stuff into using this instead of my own (similar) format, just for the heck of it. :)

                Quick question; using the @model, is it assumed the model works as an extension to the current URI? Ie, if the current URI is "http://test.com/page" and there's a model there "?param=data" we just plonk it on the current URI, but using a more RESTful approach can often be @model="/{fiddle}/{foo}" so would that work as an appender to the current URI? I have a lot of URI templates around that use the structure like this, so would be good to just confirm that. 


                Cheers,

                Alex


                On Mon, Feb 24, 2014 at 12:35 PM, mike amundsen <mamund@...> wrote:
                 

                /* pardon the cross-posting */

                I just published a first working draft of a new hypermedia format I am (humbly) calling "Uber Hypermedia"[1]. I'm maintaining it in github[2] where you can post issues, clone/PR, etc. if you like.

                It is designed to be *very* minimal. It has only three elements, 11 attributes, and seven reserved strings.

                Here is some text from the opening:
                <snip>
                The Uber message format is a minimal read/write hypermedia type designed to support simple state transfers and ad-hoc hypermedia-based transitions. This document describes both the XML and JSON variants of the format and provides guidelines for supporting Uber messages over the HTTP protocol.

                The Uber message model has a number of design goals:
                - Keep the message structure as lean as possible.
                - Support all the H-Factors [HFactor] in hypermedia controls.
                - Be compatible with multiple protocols (e.g. HTTP, CoAP, etc.)
                - Maintain fidelity for more than one base message format (XML, JSON, etc.)
                </snip>

                I'm looking for any/all feedback here or in the repo space.  Thanks in advance.





                --
                 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



              • Alexander Johannesen
                Hiya, ... Only where RFC6570 is clear. :) I guess I m responding to the examples from the website where for example we ve got ;
                Message 7 of 25 , Feb 23, 2014
                  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
                • mike amundsen
                  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
                  Message 8 of 25 , Feb 23, 2014
                    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.





                    On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                    <*> To visit your group on the web, go to:
                        http://groups.yahoo.com/group/rest-discuss/

                    <*> Your email settings:
                        Individual Email | Traditional

                    <*> To change settings online go to:
                        http://groups.yahoo.com/group/rest-discuss/join
                        (Yahoo! ID required)

                    <*> To change settings via email:
                        rest-discuss-digest@yahoogroups.com
                        rest-discuss-fullfeatured@yahoogroups.com

                    <*> To unsubscribe from this group, send an email to:
                        rest-discuss-unsubscribe@yahoogroups.com

                    <*> Your use of Yahoo Groups is subject to:
                        http://info.yahoo.com/legal/us/yahoo/utos/terms/


                  • Glenn Block
                    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
                    Message 9 of 25 , Feb 27, 2014
                      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" : "mike@..."},
                                        {"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 <mamund@...> 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.


                      On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                      <*> To visit your group on the web, go to:
                          http://groups.yahoo.com/group/rest-discuss/

                      <*> Your email settings:
                          Individual Email | Traditional

                      <*> To change settings online go to:
                          http://groups.yahoo.com/group/rest-discuss/join
                          (Yahoo! ID required)

                      <*> To change settings via email:
                          rest-discuss-digest@yahoogroups.com
                          rest-discuss-fullfeatured@yahoogroups.com

                      <*> To unsubscribe from this group, send an email to:
                          rest-discuss-unsubscribe@yahoogroups.com

                      <*> Your use of Yahoo Groups is subject to:
                          http://info.yahoo.com/legal/us/yahoo/utos/terms/



                    • Matt McClure
                      Glenn, I ll let Mike correct me if I m wrong but I believe transclusion is analogous to the behavior of an or element in HTML. It s telling the
                      Message 10 of 25 , Feb 27, 2014
                        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. 


                        On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                          {"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 <mamund@...> 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.


                        On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                        <*> To visit your group on the web, go to:
                            http://groups.yahoo.com/group/rest-discuss/

                        <*> Your email settings:
                            Individual Email | Traditional

                        <*> To change settings online go to:
                            http://groups.yahoo.com/group/rest-discuss/join
                            (Yahoo! ID required)

                        <*> To change settings via email:
                            rest-discuss-digest@yahoogroups.com
                            rest-discuss-fullfeatured@yahoogroups.com

                        <*> To unsubscribe from this group, send an email to:
                            rest-discuss-unsubscribe@yahoogroups.com

                        <*> Your use of Yahoo Groups is subject to:
                            http://info.yahoo.com/legal/us/yahoo/utos/terms/



                      • mike amundsen
                        Yep - Matt s got it. these are equivalent: and mamund +1.859.757.1449 skype:
                        Message 11 of 25 , Feb 27, 2014
                          Yep - Matt's got it.

                          these are equivalent:

                          <data url="..." rel="logo" transclude="true" />
                          and
                          <img src="..." rel="logo" />




                          On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                          On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                            {"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 <mamund@...> 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.


                          On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                          <*> To visit your group on the web, go to:
                              http://groups.yahoo.com/group/rest-discuss/

                          <*> Your email settings:
                              Individual Email | Traditional

                          <*> To change settings online go to:
                              http://groups.yahoo.com/group/rest-discuss/join
                              (Yahoo! ID required)

                          <*> To change settings via email:
                              rest-discuss-digest@yahoogroups.com
                              rest-discuss-fullfeatured@yahoogroups.com

                          <*> To unsubscribe from this group, send an email to:
                              rest-discuss-unsubscribe@yahoogroups.com

                          <*> Your use of Yahoo Groups is subject to:
                              http://info.yahoo.com/legal/us/yahoo/utos/terms/




                        • Mike Kelly
                          The idea being that rel(s) and their transcludability are likely to diverge over time, and are therefore worth keeping separate? Have there been any examples
                          Message 12 of 25 , Feb 27, 2014
                            The idea being that rel(s) and their transcludability are likely to diverge over time, and are therefore worth keeping separate? Have there been any examples of this in the wild?

                            Also, were there specific reasons to split this out as its own control element instead of just sticking to rels like this:

                            <data rel="img logo" url="..." />

                            Cheers,
                            M


                            On Thu, Feb 27, 2014 at 9:28 AM, mike amundsen <mamund@...> wrote:
                             

                            Yep - Matt's got it.

                            these are equivalent:

                            <data url="..." rel="logo" transclude="true" />
                            and
                            <img src="..." rel="logo" />

                            On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                            On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                              {"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 <mamund@...> 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.


                            On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                            <*> To visit your group on the web, go to:
                                http://groups.yahoo.com/group/rest-discuss/

                            <*> Your email settings:
                                Individual Email | Traditional

                            <*> To change settings online go to:
                                http://groups.yahoo.com/group/rest-discuss/join
                                (Yahoo! ID required)

                            <*> To change settings via email:
                                rest-discuss-digest@yahoogroups.com
                                rest-discuss-fullfeatured@yahoogroups.com

                            <*> To unsubscribe from this group, send an email to:
                                rest-discuss-unsubscribe@yahoogroups.com

                            <*> Your use of Yahoo Groups is subject to:
                                http://info.yahoo.com/legal/us/yahoo/utos/terms/







                            --
                            Mike

                            http://twitter.com/mikekelly85
                            http://github.com/mikekelly
                            http://linkedin.com/in/mikekelly123
                          • Glenn Block
                            Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?
                            Message 13 of 25 , Feb 27, 2014
                              Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                              On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                              Yep - Matt's got it.

                              these are equivalent:

                              <data url="..." rel="logo" transclude="true" />
                              and
                              <img src="..." rel="logo" />




                              On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                              On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                {"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 <mamund@...> 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.


                              On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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="
                            • mike amundsen
                              right, this aims directly at that H-Factors. mamund +1.859.757.1449 skype: mca.amundsen http://amundsen.com/blog/ http://twitter.com/mamund
                              Message 14 of 25 , Feb 27, 2014
                                right, this aims directly at that H-Factors.



                                On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                Yep - Matt's got it.

                                these are equivalent:

                                <data url="..." rel="logo" transclude="true" />
                                and
                                <img src="..." rel="logo" />




                                On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                  {"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 <mamund@...> 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.


                                On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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="

                              • Mark Foster
                                Hi Mike, Is a client obligated to load H-Factors associated with an embed directive? E.g. I may have an affordance (form) with an list of options for some
                                Message 15 of 25 , Feb 27, 2014
                                  Hi Mike,

                                  Is a client obligated to load H-Factors associated with an embed directive? E.g. I may have an affordance (form) with an list of options for some field that is included as an embed directive, but unless I am exercising that related affordance, it does not make sense to pre-load that list of options.

                                  And if embed directives are at the discretion of the client, is the point of an embed h-factor more a hint that you may want to load this in parallel or whatever? Or should a client blindly load these h-factor elements? 

                                  How would one differentiate an h-factor that should be loaded only for a optional affordance vs. auto-loaded regardless?

                                  That is, if something should always be embedded, how would one determine what should be specified for auto-loading by the client?

                                  Mark


                                  On Thu, Feb 27, 2014 at 8:21 AM, mike amundsen <mamund@...> wrote:
                                   

                                  right, this aims directly at that H-Factors.
                                  On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                  Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                  On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                  Yep - Matt's got it.

                                  these are equivalent:

                                  <data url="..." rel="logo" transclude="true" />
                                  and
                                  <img src="..." rel="logo" />




                                  On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                  On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                    {"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 <mamund@...> 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.


                                  On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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="


                                • Glenn Block
                                  Thanks Is transclude a widely understood term? Did you consider having an attribute like link-type with values of outbound or inbound ? When I first read
                                  Message 16 of 25 , Feb 27, 2014
                                    Thanks

                                    Is transclude a widely understood term? Did you consider having an attribute like link-type with values of 'outbound' or 'inbound'? When I first read H-Factors, the usage of outbound and inbound was very obvious. Transclude was not.

                                    Just sharing my experience / very first impression.

                                    On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                    right, this aims directly at that H-Factors.



                                    On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                    Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                    On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                    Yep - Matt's got it.

                                    these are equivalent:

                                    <data url="..." rel="logo" transclude="true" />
                                    and
                                    <img src="..." rel="logo" />




                                    On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                    On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                      {"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 <mamund@...> 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.


                                  • Mike Kelly
                                    iirc, transclusion is a term created by Ted Nelson? Not sure if that s a good or a bad thing. ... -- Mike http://twitter.com/mikekelly85
                                    Message 17 of 25 , Feb 27, 2014
                                      iirc, "transclusion" is a term created by Ted Nelson? Not sure if that's a good or a bad thing.


                                      On Thu, Feb 27, 2014 at 11:48 AM, Glenn Block <glenn.block@...> wrote:
                                       

                                      Thanks


                                      Is transclude a widely understood term? Did you consider having an attribute like link-type with values of 'outbound' or 'inbound'? When I first read H-Factors, the usage of outbound and inbound was very obvious. Transclude was not.

                                      Just sharing my experience / very first impression.

                                      On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                      right, this aims directly at that H-Factors.



                                      On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                      Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                      On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                      Yep - Matt's got it.

                                      these are equivalent:

                                      <data url="..." rel="logo" transclude="true" />
                                      and
                                      <img src="..." rel="logo" />




                                      On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                      On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                        {"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 <mamund@...> 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.





                                      --
                                      Mike

                                      http://twitter.com/mikekelly85
                                      http://github.com/mikekelly
                                      http://linkedin.com/in/mikekelly123
                                    • Glenn Block
                                      Ah itty bitty machines guy. I have heard of him :-)
                                      Message 18 of 25 , Feb 27, 2014
                                        Ah itty bitty machines guy. I have heard of him :-)

                                        On Thursday, February 27, 2014, Mike Kelly <mikekelly321@...> wrote:
                                        iirc, "transclusion" is a term created by Ted Nelson? Not sure if that's a good or a bad thing.


                                        On Thu, Feb 27, 2014 at 11:48 AM, Glenn Block <glenn.block@...> wrote:
                                         

                                        Thanks


                                        Is transclude a widely understood term? Did you consider having an attribute like link-type with values of 'outbound' or 'inbound'? When I first read H-Factors, the usage of outbound and inbound was very obvious. Transclude was not.

                                        Just sharing my experience / very first impression.

                                        On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                        right, this aims directly at that H-Factors.



                                        On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                        Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                        On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                        Yep - Matt's got it.

                                        these are equivalent:

                                        <data url="..." rel="logo" transclude="true" />
                                        and
                                        <img src="..." rel="logo" />




                                        On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                        On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                          {"name" : "avatarUrl", "transclude" : "true", "value" : "http://example.org/avatars/1"}
                                                        ]
                                                      },




                                        --
                                        Mike

                                        http://twitter.com/mikekelly85
                                        http://github.com/mikekelly
                                        http://linkedin.com/in/mikekelly123
                                      • Mike Kelly
                                        The father of hypermedia, no less ... -- Mike http://twitter.com/mikekelly85 http://github.com/mikekelly http://linkedin.com/in/mikekelly123
                                        Message 19 of 25 , Feb 27, 2014
                                          The father of hypermedia, no less


                                          On Thu, Feb 27, 2014 at 12:11 PM, Glenn Block <glenn.block@...> wrote:
                                          Ah itty bitty machines guy. I have heard of him :-)


                                          On Thursday, February 27, 2014, Mike Kelly <mikekelly321@...> wrote:
                                          iirc, "transclusion" is a term created by Ted Nelson? Not sure if that's a good or a bad thing.


                                          On Thu, Feb 27, 2014 at 11:48 AM, Glenn Block <glenn.block@...> wrote:
                                           

                                          Thanks


                                          Is transclude a widely understood term? Did you consider having an attribute like link-type with values of 'outbound' or 'inbound'? When I first read H-Factors, the usage of outbound and inbound was very obvious. Transclude was not.

                                          Just sharing my experience / very first impression.

                                          On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                          right, this aims directly at that H-Factors.



                                          On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                          Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                          On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                          Yep - Matt's got it.

                                          these are equivalent:

                                          <data url="..." rel="logo" transclude="true" />
                                          and
                                          <img src="..." rel="logo" />




                                          On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                          On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                            {"name" : "avatarUrl", "transclude" : "true", "value" : "http://example.org/avatars/1"}
                                                          ]
                                                        },




                                          --
                                          Mike

                                          http://twitter.com/mikekelly85
                                          http://github.com/mikekelly
                                          http://linkedin.com/in/mikekelly123
                                        • Matt McClure
                                          Inbound sounds like a reference from a different resource to a given resource. Do you mean Embedded? Or is there a precedent for describing transclusion,
                                          Message 20 of 25 , Feb 27, 2014
                                            Inbound sounds like a reference from a different resource to a given resource. Do you mean Embedded? Or is there a precedent for describing transclusion, embedding as inbound?

                                            -- 

                                            On Feb 27, 2014, at 9:48 AM, Glenn Block <glenn.block@...> wrote:

                                            Thanks

                                            Is transclude a widely understood term? Did you consider having an attribute like link-type with values of 'outbound' or 'inbound'? When I first read H-Factors, the usage of outbound and inbound was very obvious. Transclude was not.

                                            Just sharing my experience / very first impression.

                                            On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                            right, this aims directly at that H-Factors.



                                            On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                            Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                            On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                            Yep - Matt's got it.

                                            these are equivalent:

                                            <data url="..." rel="logo" transclude="true" />
                                            and
                                            <img src="..." rel="logo" />




                                            On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                            On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                              {"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 <mamund@...> 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.


                                          • mike amundsen
                                            a client is obligated as much as HTML is obligated to honor the IMG tag vs. the A tag. clients can decided what to render/ignore and how to render all on
                                            Message 21 of 25 , Feb 27, 2014
                                              a client is "obligated" as much as HTML is "obligated" to honor the IMG tag vs. the A tag.

                                              clients can decided what to render/ignore and how to render all on their own.

                                              servers are free to not even indicate this, too. all <data url="..." /> are valid w/o "transclude" and clients can be left to decide on their own how to handle them.




                                              On Thu, Feb 27, 2014 at 11:31 AM, Mark Foster <mfoster@...> wrote:
                                              Hi Mike,

                                              Is a client obligated to load H-Factors associated with an embed directive? E.g. I may have an affordance (form) with an list of options for some field that is included as an embed directive, but unless I am exercising that related affordance, it does not make sense to pre-load that list of options.

                                              And if embed directives are at the discretion of the client, is the point of an embed h-factor more a hint that you may want to load this in parallel or whatever? Or should a client blindly load these h-factor elements? 

                                              How would one differentiate an h-factor that should be loaded only for a optional affordance vs. auto-loaded regardless?

                                              That is, if something should always be embedded, how would one determine what should be specified for auto-loading by the client?

                                              Mark


                                              On Thu, Feb 27, 2014 at 8:21 AM, mike amundsen <mamund@...> wrote:
                                               

                                              right, this aims directly at that H-Factors.
                                              On Thu, Feb 27, 2014 at 11:16 AM, Glenn Block <glenn.block@...> wrote:
                                              Thanks for clarifying. So this relates to what are outbound and inbound links in HFactors?



                                              On Thursday, February 27, 2014, mike amundsen <mamund@...> wrote:
                                              Yep - Matt's got it.

                                              these are equivalent:

                                              <data url="..." rel="logo" transclude="true" />
                                              and
                                              <img src="..." rel="logo" />




                                              On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                              On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                                {"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 <mamund@...> 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.


                                              On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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="



                                            • Matt McClure
                                              Mike, ... How does the XML format represent true, false, and null? How does the XML format represent objects and arrays? (Some sadist will put JSON in there
                                              Message 22 of 25 , Feb 27, 2014
                                                Mike,

                                                On Monday, February 24, 2014, mike amundsen <mamund@...> wrote:
                                                I've also added some text to the "value" definition to say JSON format MUST only be set to string, number, or literals (true, false, null) and MUST NOT be set to object or array. What is then implied (not yet stated in the prose) is that, to pass arrays or objects in the "value" attribute, you need to *escape* the object/array and pass as a string. 

                                                How does the XML format represent true, false, and null?

                                                How does the XML format represent objects and arrays? (Some sadist will put JSON in there unless we have a better answer.)

                                                More generally, I imagine your intent is to constrain clients to adopt more of a tolerant reader approach and use less automatic serialization and deserialization.

                                                At the same time, I think there's potential value in making compound, complex data more of a first class citizen. Allowing bare object and array data representations (not serialized into a quoted string) would let clients and servers reach inside the data without additional explicit deserialization steps.

                                                I guess one risk of allowing objects and arrays is the antipattern of using a single data element whose value is a very complex object.

                                                What are the tradeoffs you're trying to balance?

                                                Matt


                                                --
                                                Matt McClure
                                                http://matthewlmcclure.com
                                                http://www.mapmyfitness.com/profile/matthewlmcclure

                                              • Darrel Miller
                                                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?
                                                Message 23 of 25 , Mar 1, 2014
                                                  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 <mamund@...> wrote:
                                                   

                                                  Yep - Matt's got it.

                                                  these are equivalent:

                                                  <data url="..." rel="logo" transclude="true" />
                                                  and
                                                  <img src="..." rel="logo" />

                                                  On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                                  On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                                    {"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 <mamund@...> 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.


                                                  On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                                                  <*> To visit your group on the web, go to:
                                                      http://groups.yahoo.com/group/rest-discuss/

                                                  <*> Your email settings:
                                                      Individual Email | Traditional

                                                  <*> To change settings online go to:
                                                      http://groups.yahoo.com/group/rest-discuss/join
                                                      (Yahoo! ID required)

                                                  <*> To change settings via email:
                                                      rest-discuss-digest@yahoogroups.com
                                                      rest-discuss-fullfeatured@yahoogroups.com

                                                  <*> To unsubscribe from this group, send an email to:
                                                      rest-discuss-unsubscribe@yahoogroups.com

                                                  <*> Your use of Yahoo Groups is subject to:
                                                      http://info.yahoo.com/legal/us/yahoo/utos/terms/





                                                • Matt McClure
                                                  That feels right. The media type and the client requirements are somewhat independent, no? This affects servers also, possibly with different expectations. A
                                                  Message 24 of 25 , Mar 1, 2014
                                                    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


                                                    On Mar 1, 2014, at 3:12 PM, Darrel Miller <darrel.miller@...> 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 <mamund@...> wrote:
                                                     

                                                    Yep - Matt's got it.

                                                    these are equivalent:

                                                    <data url="..." rel="logo" transclude="true" />
                                                    and
                                                    <img src="..." rel="logo" />

                                                    On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                                    On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                                      {"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 <mamund@...> 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.


                                                    On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                                                    <*> To visit your group on the web, go to:
                                                        http://groups.yahoo.com/group/rest-discuss/

                                                    <*> Your email settings:
                                                        Individual Email | Traditional

                                                    <*> To change settings online go to:
                                                        http://groups.yahoo.com/group/rest-discuss/join
                                                        (Yahoo! ID required)

                                                    <*> To change settings via email:
                                                        rest-discuss-digest@yahoogroups.com
                                                        rest-discuss-fullfeatured@yahoogroups.com

                                                    <*> To unsubscribe from this group, send an email to:
                                                        rest-discuss-unsubscribe@yahoogroups.com

                                                    <*> Your use of Yahoo Groups is subject to:
                                                        http://info.yahoo.com/legal/us/yahoo/utos/terms/





                                                  • mike amundsen
                                                    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
                                                    Message 25 of 25 , Mar 1, 2014
                                                      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?




                                                      On Sat, Mar 1, 2014 at 3:18 PM, Matt McClure <matthewlmcclure@...> 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


                                                      On Mar 1, 2014, at 3:12 PM, Darrel Miller <darrel.miller@...> 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 <mamund@...> wrote:
                                                       

                                                      Yep - Matt's got it.

                                                      these are equivalent:

                                                      <data url="..." rel="logo" transclude="true" />
                                                      and
                                                      <img src="..." rel="logo" />

                                                      On Thu, Feb 27, 2014 at 7:12 AM, Matt McClure <matthewlmcclure@...> 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. 


                                                      On Feb 27, 2014, at 2:04 AM, Glenn Block <glenn.block@...> 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" : "mike@..."},
                                                                        {"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 <mamund@...> 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.


                                                      On Mon, Feb 24, 2014 at 12:48 AM, Alexander Johannesen <alexander.johannesen@...> 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

                                                      <*> To visit your group on the web, go to:
                                                          http://groups.yahoo.com/group/rest-discuss/

                                                      <*> Your email settings:
                                                          Individual Email | Traditional

                                                      <*> To change settings online go to:
                                                          http://groups.yahoo.com/group/rest-discuss/join
                                                          (Yahoo! ID required)

                                                      <*> To change settings via email:
                                                          rest-discuss-digest@yahoogroups.com
                                                          rest-discuss-fullfeatured@yahoogroups.com

                                                      <*> To unsubscribe from this group, send an email to:
                                                          rest-discuss-unsubscribe@yahoogroups.com

                                                      <*> Your use of Yahoo Groups is subject to:
                                                          http://info.yahoo.com/legal/us/yahoo/utos/terms/








                                                    Your message has been successfully submitted and would be delivered to recipients shortly.