There is precedence to the proposal I have submitted. GData uses feedLink [1] and entryLink [2] mechanisms in Google's own namespace to include in-line representations of entries and feeds. Notice how these elements have both @rel and @href, critical to the functioning of Atom's own link mechanisms.

The atom-hierarchy-ID is merely trying to standardize such behavior and not invent new behavior. Moreover, the proposed syntax is not merely syntactically legal, it is also semantically valuable. There are three benefits to this approach:

1. The context of the inlined feed or entry is immediately clear from the @rel value 2. The server can choose to inline content as per requirements and configuration 3. The format supports inlining of any number of entries - a single or multiple. It also expresses the absence of any entries, when this is required.

Which of these advantages can you claim for directly embedding an entry inside another?

Nikunj
http://o-micron.blogspot.com

On May 27, 2009, at 5:12 AM, Julian Reschke wrote:


Nikunj R. Mehta wrote:
On May 25, 2009, at 8:42 AM, Julian Reschke wrote:
with respect to <http://tools.ietf.org/html/draft-divilly-atom-hierarchy-00#section-3 >, "Inline Representation of Hierarchical Resources"...

It seems to be that using atom:link as a container elements stretches its semantics of "reference from an entry or feed to a Web resource" too much.
I don't agree with that. A previous discussion on this mailing list more than a year ago [1] has already concluded that it is perfectly legal to do so. Additionally, the hierarchy-ID approach appears similar to the

I do not agree with that conclusion, but nevertheless, just because something is syntactically legal doesn't make it a good choice.

atom:link is defined to as:

"The "atom:link" element defines a reference from an entry or feed to a Web resource."

Inlining the content of referenced web resource is IMHO contrary to that definition.

approach taken by the RFC4287 with atom:content usage models, where several options about inline and out-of-line content delivery are available.

But atom:content has been explicitly designed that way:

"The "atom:content" element either contains or links to the content of the entry." -- <http://greenbytes.de/tech/webdav/rfc4287.html#rfc.section.4.1.3 >

while atom:link has not.

I respectfully disagree although you are entitled to your opinion. Previous discussion on this mailing list [3], which included several people who were part of the early crowd of atom-syntax, has made it clear that one should not go by any prejudice about the lack of specification of a certain previously undefined mark up usage.



So I'll stick with my comment that atom:entry is better suited for that purpose, being defined as:

"The "atom:entry" element represents an individual entry, acting as a container for metadata and data associated with the entry." -- <http://greenbytes.de/tech/webdav/rfc4287.html#rfc.section.4.1.2 >


As Al pointed out on the CMIS mailing list (<http://lists.oasis-open.org/archives/cmis/200905/msg00186.html >), it may be better to use a container element inside atom:entry.

So, the example in <http://tools.ietf.org/html/draft-divilly-atom-hierarchy-00#section-3.2.3 >:

 <atom:entry>
   <atom:link rel="down"
     href="/finance/feeds/default/portfolios/1/positions">
     <atom:feed>
       <atom:link rel="self"
        href="/finance/feeds/default/portfolios/1/positions"/>
        ...
     </atom:feed>
   </atom:link>
   ...
 </atom:entry>


> ...

BTW: the format above is currently forbidden by the RNC (because of the use of the atom namespace for the contained element); I know that part of the spec is informative, but still...


Again, you are misleading the reader to assume that RNC schema is normative. There is a very good reason for it to not be normative and the spec editors were clear about them.

Nikunj

[1] http://code.google.com/apis/gdata/elements.html#gdFeedLink
[2] http://code.google.com/apis/gdata/elements.html#gdEntryLink
[3] http://www.imc.org/atom-syntax/mail-archive/msg20456.html

Reply via email to