Re: Representing bookmarks

2007-03-09 Thread A. Pagaltzis

* Erwan Loisant <[EMAIL PROTECTED]> [2007-03-09 22:40]:
> I'm not sure whether they're doing it "the right way" or not,

Oh yeah, they do. The bookmark is a `related` link, the
`alternate` link points at a page for the link on Blogmarks
itself, and the description, if any, is in `content`. Just as
it should be. They don’t even throw crappy aggregators a bone
by duplicated the bookmark as a link in the content, which is
just as well.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Representing bookmarks

2007-03-09 Thread A. Pagaltzis

* Brendan Taylor <[EMAIL PROTECTED]> [2007-03-09 21:50]:
> He has an XSLT which transforms del.icio.us into Atom [1]; (the
> important bit of) the entries it produces look like this:
> 
>   
> The Atom Syndication Format
> An alternative to RSS2.
> http://www.ietf.org/rfc/rfc4287"/>
> 
>   
> 
> (I was thinking along the same lines, but using content/@src
> instead of link/@href.)
> 
> But he (and now I) is not entirely happy with this solution. 

For the purpose of discussion, here’s how I’d do that now:


The Atom Syndication Format
http://del.icio.us/url/longhashvaluehere"/>
http://www.ietf.org/rfc/rfc4287"/>

http://www.ietf.org/rfc/rfc4287"/>The Atom Syndication 
Format:
An alternative to RSS2.




It bugs me to repeat the link in the content, but the all-around
absence of support for `related` links requires this sort of hack
to make the feed useful with today’s aggregators. Even then, such
a feed would not be useful as a Live Bookmark in Firefox.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Current and permalink link rel values

2007-02-23 Thread A. Pagaltzis

* Elliotte Harold <[EMAIL PROTECTED]> [2007-02-23 15:15]:
> I'd like to add multiple links to my feed for both the current version 
> of the story and the permalink. E.g.
> 
>  
> Matt Mullenweg has released Wordpress 2.1.1 and 2.0.9.
>   
> 
>   http://www.w3.org/1999/xhtml"; 
> id="February_22_2007_30633" class="2007-02-22T09:31:33Z">
> 
> Matt Mullenweg has released  href="http://wordpress.org/development/2007/02/new-releases/";>Wordpress 
> 2.1.1 and 2.0.9.
> 
> 
> 
> 
> http://www.cafeconleche.org/#February_22_2007_30633"/>
>  href="http://www.cafeconleche.org/oldnews/news2007February22.html#February_22_2007_30633"/>
> http://www.cafeconleche.org/#February_22_2007_30633
> 2007-02-22T09:31:33Z
>   
> 
> In particular is "rel='permalink'" a reasonable way to do this?

It should be `rel="alternate"`.

> Might it make sense to register current and permalink values
> for the rel attribute in the IANA Registry of Link Relations?

What’s the purpose of the `current` link? Is there ever a case
where it would be bad to send the reader to the permanent
location of the item?

Regards,
-- 
Aristotle Pagaltzis // 



Re: self and alternate links for entries

2007-01-30 Thread A. Pagaltzis

* Bill de hOra <[EMAIL PROTECTED]> [2007-01-30 14:20]:
> I couldn't find enough information in the RFC about which way
> to go. Which would you choose, and why?

The “self” relation means “this same Atom Document you’re just
looking at.” The “alternate” relation means “another
representation of the same resource that this Atom Document
represents.”

Which option is correct should be pretty clear from that.

Regards,
-- 
Aristotle Pagaltzis // 



Re: atom dates

2007-01-10 Thread A. Pagaltzis

* fschmidt <[EMAIL PROTECTED]> [2007-01-10 05:40]:
> I implemented an atom feed as specified in RFC 2487 using the
> "updated" date element. But the dates in my feed doesn't work
> in atom readers like Google Reader.

The second sentence seems to be contradicting the first.

Did you validate your feed?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Additional 'namespace' attribute on content element?

2007-01-05 Thread A. Pagaltzis

* James Aylett <[EMAIL PROTECTED]> [2007-01-04 18:55]:
> I don't see a big difference between dispatch on namespace of
> child of content (which is, I believe, legal in Atom 1.0) and
> dispatch on namespace attribute on content (which is what I
> think you're proposing).

Except when there is nothing you can dispatch on because the
vocabulary in question is not in a namespace.

Regards,
-- 
Aristotle Pagaltzis // 



Re: within HTML content

2007-01-02 Thread A. Pagaltzis

* Henri Sivonen <[EMAIL PROTECTED]> [2007-01-02 01:35]:
> I hadn't thought that Atom was supposed to use innerHTML
> parsing. I'd have said that you prepend
> "" to what travels in the
> feed and append "" to it,  parse the resulting string and
> grab the first div in the document order.

That will lead to silent data loss if the content is malformed
such that it contains an extraneous ``.

Regards,
-- 
Aristotle Pagaltzis // 



Re: within HTML content

2007-01-01 Thread A. Pagaltzis

* Geoffrey Sneddon <[EMAIL PROTECTED]> [2007-01-01 19:00]:
> On 1 Jan 2007, at 16:59, Asbjørn Ulsberg wrote:
> >the  element has no place in an HTML fragment, so its
> >meaning is (although most browsers wrongfully supports its
> >presence anywhere in an HTML document) unspecified.
> 
> Web Applications 1.0 (keeping with the real world) defines that it  
> should be moved to HEAD within the DOM tree.

Thereby, of course, breaking the links in any other entries
rendered in the same page by a web-based aggregator, f.ex.

> Why, may I ask, MUST (under the RFC 2119 definition) HTML content be  
> a fragment ("HTML markup within SHOULD be such that it could validly  
> appear directly within an HTML  element, after unescaping." -  
> note the word SHOULD, not MUST, implying that you can have a full  
> HTML document within)?

Because many aggregators (most, very likely) do not render items
in isolation, but rather in some sort of collection, either
across feeds as a “river of news” or even just several within a
single feed. (Weblog engines do that when showing the front page
of the weblog or archive for particular intervals.) They will
usually strip any header-level information from your entry, so
putting such elements in the content will usually fail to achieve
what you wanted – hence the SHOULD.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Text-type contents and White Space

2006-12-30 Thread A. Pagaltzis

* Franklin Tse <[EMAIL PROTECTED]> [2006-12-30 11:05]:
> IE and Firefox both failed to display text/plain contents.
> Opera can but all white space was collasped

Yeah, I suspected that. Of course, none of the support xml:space
either, but the semantics of using text/plain are already obvious
without having to amend the spec and supporting it should take
minimal effort, so I would file bugs.

Almost no consumer at this point is prepared to process anything
but HTML and inline text since almost everyone just treats Atom
as a dialect of RSS 2.0. If you need the interoperability right
now, you will have to keep doing what you’re already doing with
`type="html"` containing `` tags.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Text-type contents and White Space

2006-12-30 Thread A. Pagaltzis

* Franklin Tse <[EMAIL PROTECTED]> [2006-12-30 09:10]:
> In Section 3.1.1.1. of RFC 4287,
> 
>If the value is "text", the content of the Text construct
>MUST NOT contain child elements. Such text is intended to be
>presented to humans in a readable fashion. Thus, Atom
>Processors MAY collapse white space (including line breaks)
>and display the text using typographic techniques such as
>justification and proportional fonts.
> 
> However, white space in some text contents cannot be collapsed.
> Otherwise, the contents will be broken.

Use `type="text/plain"`. The `text` type is intended for limited
amounts of inline content that can be rendered in menus, lists
and the like, not for substantive amounts of content.

Regards,
-- 
Aristotle Pagaltzis // 



Re: AD Evaluation of draft-ietf-atompub-protocol-11

2006-12-16 Thread A. Pagaltzis

* Lisa Dusseault <[EMAIL PROTECTED]> [2006-12-16 02:15]:
> Since clients post Atom entries and other clients retrieve
> them, it seemed reasonable to want to extend Atom
> client-to-client. If I used "AtomFu" client that was able to
> annotate my entries automatically with what music I was
> listening to (track name, album and artist in XML elements)
> while I wrote a blog posting, I thought AtomFu should just
> store that as XML markup in the entry.

That is, IMO, a misconception about Atom – one that is frequently
seen. We just had a similar discussion tonight in #atom on the
Freenode IRC network. The track name, album and artist are data;
they should be part of the payload of an entry, not part of its
envelope. In practice, that means you use either microformats or
a more structured format than HTML. Extending the Atom envelope
is a strategy of last resort.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Entry docs

2006-12-15 Thread A. Pagaltzis

* Bob Wyman <[EMAIL PROTECTED]> [2006-12-14 05:45]:
> 1) Define ;type=feed and ;type=entry as optional parameters.
> (i.e. get them defined, registered, and "ready to use.")
> 2) Leave RFC4287 unchanged. i.e. do NOT re-define
> "application/atom-xml"
> 3) New specifications MAY require that ;type=entry be used.
> (Note: Just because ;type=entry is used DOES NOT imply that
> ;type=feed must also be used)

+1

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-12-07 Thread &#x27;A. Pagaltzis'

* Franklin Tse <[EMAIL PROTECTED]> [2006-12-07 10:00]:
> If browsers do not support text/plain as a stylesheet, they
> should just simply ignore  type="text/plain" href="/style.css" />.

Exactly.

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-12-07 Thread A. Pagaltzis

* Jan Algermissen <[EMAIL PROTECTED]> [2006-12-07 08:25]:
> As an analogy: HTML browsers look for stylesheets where it says
> 
>
> 
> and not
> 
>
> 
> Eh?

What do browsers do with this?



And what with this?



Is their behaviour right? Wrong? Why?

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-12-06 Thread A. Pagaltzis

* Jan Algermissen <[EMAIL PROTECTED]> [2006-12-06 20:55]:
> But that is an issue of linking semantics, not link target
> media types. I'd expect the user agent to look for links with
> 'here is a feed' semantics instead of looking for (arbitrary)
> links to certain media types.
> 
> IMHO, there is something going wrong somewhere - and it ain't
> the media type.

It seems pointless for atom:link to have a type attribute at all
then. You should be able to decide anything you need to decide by
GETting the resource (and sometimes parsing it). Why did we add
such a useless feature to the spec?

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-12-06 Thread A. Pagaltzis

* Mark Baker <[EMAIL PROTECTED]> [2006-12-04 21:35]:
> If it looks like an alias, and acts like an alias ... 8-)

It doesn’t.

For resource creation this specification only defines cases
where the POST body has an Atom Entry entity declared as an
Atom media type ("application/atom+xml"), or a non-Atom
entity declared as a non-Atom media type. It does not specify
any request semantics or server behavior in the case where
the POSTed media-type is "application/atom+xml" but the body
is something other than an Atom Entry. In particular, what
happens on POSTing an Atom Feed Document to a Collection
using the "application/atom+xml" media type is undefined.

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-11-30 Thread A. Pagaltzis

* James M Snell <[EMAIL PROTECTED]> [2006-11-29 17:40]:
> http://www.intertwingly.net/wiki/pie/PaceEntryMediatype

+1


* Thomas Broyer <[EMAIL PROTECTED]> [2006-11-29 20:35]:
> I'd largely prefer augmenting the existing media type with
> a 'type' parameter:
> - application/atom+xml => either feed or entry (as defined in RFC4287)
> - application/atom+xml;type=feed => feed
> - application/atom+xml;type=entry => entry

-0

> How about defining a "tree" similar to the */vnd.* one?
> - application/atom+xml => feed or entry document
> - application/atom.categories+xml => category document
> - application/atom.service+xml => service document
> ...and of course, if this proposal is finally accepted:
> - application/atom.entry+xml => entry document

+1

I like this very much; it would put some order in the
proliferation of Atom-related MIME types.

> As for Tim's concerns, I'd also prefer having it done outside
> the APP.

+0

> Also, the APP draft would need to be updated to remove the
> "entry" special value for app:accept, as it would be equivalent
> to the new or revised media type
> (app:accept=application/atom+xml;type=entry or
> app:accept=applicationAtom.entry+xml)

+1

Unification is good.

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceEntryMediatype

2006-11-30 Thread A. Pagaltzis

* Mark Baker <[EMAIL PROTECTED]> [2006-11-29 20:10]:
> An entry document is, AFAICT, little more than shorthand for
> a feed with one entry, minus the feed-specific metadata. It's
> processing is a subset of feed processing. If the processing or
> content model of entry is extended, it applies to both feed
> documents and entry documents.

I disagree. There’s not much of a point in subscribing to an
entry document, and APP servers will not accept POSTing feeds in
place of entries.

[Note: subscribing to an entry document is actually somewhat
useful in one sense and might become customary in the future,
eg. to track changes to a document. However, that’s still an
entirely different use case from subscribing to feed.]

Regards,
-- 
Aristotle Pagaltzis // 



Re: Autodiscovery IPR and Process Concerns

2006-11-29 Thread A. Pagaltzis

* Robert Sayre <[EMAIL PROTECTED]> [2006-11-30 08:10]:
> On 11/30/06, James M Snell <[EMAIL PROTECTED]> wrote:
> >   If y'all think
> 
> Ah, this is what's called "innappropriately folksy". It's
> a common rhetorical device used when the speaker wants to
> appear that they're on the side of "the common man" or
> equivalent.

What rhetorical device is it to point out the rhetorical devices
used by other participants in a discussion?

> The president of the United States makes frequent use of this
> device.

What rhetorical device is it to use inappropriate and entirely
irrelevant political analogies in the hopes of derailing
a discussion?

Regards,
-- 
Aristotle Pagaltzis // 



Re: WHAT-WG, feed and alternate (was: Re: PaceAutoDiscoveryDraftIsPointless)

2006-11-28 Thread A. Pagaltzis

* James M Snell <[EMAIL PROTECTED]> [2006-11-29 00:20]:
>   3. We define a new media type for Atom Entry Documents,
>  e.g. application/atomentry+xml

+1


* Robert Sayre <[EMAIL PROTECTED]> [2006-11-29 00:40]:
> We should tack it onto the APP draft, since that will solve
> issues with the accept element there. And praise to mnot, who
> suggested we do this in RFC4287 but was overruled by the WG
> (including myself).

+1


(Wow, I +1ed both James and Robert in the same mail. :-) )

Regards,
-- 
Aristotle Pagaltzis // 



Re: Author element best practice

2006-11-27 Thread A. Pagaltzis

* Asbjørn Ulsberg <[EMAIL PROTECTED]> [2006-11-27 20:55]:
> Am I the only one pondering and worrying about what the
> different server implementations will respond to invalid client
> requests (as, for example, an invalid Atom document)? How can
> the client implementors be interoperable and compatible with
> each other and every server implementation if the specification
> says absolutely nothing about what to expect when something
> goes wrong?
> 
> HTTP covers some of the possible errors one might encounter,
> but I believe there are several cases in APP where errors might
> occur that HTTP does not cover and that server implementors
> will treat very differently. In most server application
> frameworks, unhandled exceptions give the response "500 Server
> Error". Is that the appropriate response to give on most
> errors? Which errors should yield which 4xx response? Is this
> not an issue? How can a client tell the user how to correct
> something if the client have no idea what response to expect
> from the server?

I get your concern and to some extent I share it, but I’m unsure
about how it could be addressed. If we assume that servers can
implement wildly different feature sets and special cases, then
there is a huge number of conditions which the server would need
to be able to somehow signal. I don’t know how we can allow for
that. A special error document XML vocabulary for those cases
where the HTTP status is not granular enough would be an option.
Some document making suggestions about what error status codes to
use in which circumstances could also help unify expectations.
But the scope of any such endeavour will be huge…

Regards,
-- 
Aristotle Pagaltzis // 



Re: Author element best practice

2006-11-22 Thread A. Pagaltzis

* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-11-23 00:00]:
> how would people feel about stating in the draft that the
> server MAY (SHOULD?) reject an Atom entry which would be
> invalid as per RFC 4287 ?

+0 to MAY. I'm not sure it needs to be stated explicitly. It
seems obviously implied by the APP axiom that the server is
ultimately in control.

But -1 to SHOULD. If the server thinks it has enough data to
flesh out an incomplete entry so that it is valid, it should be
free to do as it pleases.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Author element best practice

2006-11-22 Thread A. Pagaltzis

* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-11-22 12:25]:
> do you think it'd be better to put an empty atom:name or to put
> a dummy value such as 'anonymous' or 'n/a'?

Ugh. Dummy values are nasty, perverse and evil. Someone *will*
eventually suffer miserably if you pollute your data like that.

Don’t you have any identifying information about who is POSTing
the entry? That’s where I’d look to.

Regards,
-- 
Aristotle Pagaltzis // 



Re: PaceResurrectAutodiscovery

2006-11-21 Thread A. Pagaltzis

* Eric Scheid <[EMAIL PROTECTED]> [2006-11-22 01:20]:
> I suggest a relationship value of "feed", to use when pointing
> to a feed. Note that multiple values for @rel are still
> possible with html's link (e.g. @rel="feed alternate").

-1 to any changes that would be incompatible to existing dead
draft, at any time.

-1 also to changing the draft at all prior to resurrection. We
can see whether we want any new language in there once we have it
back in the process.

+0 to including *additional* provisions in the draft before
submitting it for approval, because I do agree it’s incomplete.

I’d like to see the current status quo documented. There are
millions of pages out there already implementing autodiscovery
according to the dead draft, and lots of code to process them,
but there is no official documentation for any of this. There
should be a spec for it.

Regards,
-- 
Aristotle Pagaltzis // 



Re: The "src" attribute of atom:content

2006-11-19 Thread A. Pagaltzis

* Tse Shing Chi (Franklin/Whale) <[EMAIL PROTECTED]> [2006-11-19 16:05]:
> Unfortunately, numbers of feed aggregators will not follow the
> src attribute probably due to security reasons.

atom:content/@src is indeed not well supported. Many aggregators
aren’t even aware of the attribute and don’t do even as much as
showing a link to the external content. This is broken; please
file a bug against the aggregator in question.

> However, it is actually an abuse of atom:summary because the
> "atom:summary" element is a Text construct that conveys a short
> summary, abstract, or excerpt of an entry.
 
Agreed.

> More unfortunately, feed aggregators will not consider this
> entry is linking to http://www.example.org/ even though the
> content is external.

This is correct and by design (though implementation correctness
here is probably often by accident; see above).

> The followings are my thoughts.
> 
> 1. When the "src" attribute of atom:content is present, it
> includes the meaning of having an alternate link to the same
> URI inside "src".
> 
> 2. atom:content SHOULD NOT be empty. I think that atom:content
> is something like xhtml:object. Alternate contents should be
> put inside the element.

We could discuss whether these ideas would have been worthwhile.
However, this is moot, as the spec is done and cannot be changed.
Since these suggestions are incompatible with RFC 4287, they
cannot be recommended as best practices either. Sorry. :-(

Regards,
-- 
Aristotle Pagaltzis // 



Re: Forward Compatibility

2006-11-18 Thread A. Pagaltzis

* Elliotte Harold <[EMAIL PROTECTED]> [2006-11-18 21:00]:
> Mark Nottingham wrote:
> >Atom has a namespace; that can be use to introduce new
> >versions of the format. 
> 
> No, no, and no. We've been down this road before in other
> specs, and the community wisdom is that you do not rev the
> namespace just to introduce a new version. Doing so breaks
> a huge amount of the existing processing chain for an
> application.
> 
> It is, of course, possible to introduce new elements in other
> namespaces; and the Atom spec does a much better than average
> job of preparing for this. Indeed there are already many
> interesting extensions.
> 
> However, even if fundamental flaws were found in Atom 1.0 that
> required revisions and an Atom 1.1 or 2.0, the namespace should
> and almost certainly woulds remain the same.

Yes and no.

If future changes can be made in a backward-compatible
fashion, they will go into a spec that recycles the same
namespace. Existing implementations can just ignore the
differences.

If they cannot, they will go into a spec which revs the
namespace, because trying to process documents conforming
to the new spec with existing implementations can’t work.

In neither case is there a need to identify the version
explicitly.

This is why Atom does not have a version attribute.

All that said, the goal during development was always that
Atom would ship when it was done and be stable thereafter.
It is now set in stone for the forseeable future. No further
development of the core format is expected. (Instead, the
spec includes a number of extension points that can be used
to repurpose the format to new use cases.)

This is another reason why Atom does not have a version
attribute.

Regards,
-- 
Aristotle Pagaltzis // 



Re: categories and tagging

2006-11-02 Thread A. Pagaltzis

* Henry Story <[EMAIL PROTECTED]> [2006-11-02 16:55]:
> The question is: how does this help any of us? It may look like
> it is a "term", but what is a client meant to do with all this
> information?

Simple: when the scheme and term of two different entries are
identical, then you have confidence that they refer to the same
concept. When the scheme URI is absent, the term is ambiguous.

That’s what scheme and term mean, and that’s all that they mean.

If you want to use a dereferencable protocol scheme for your
category’s scheme URI, and want to run a service providing
resources at the given URI, that’s fine, and more power to you.
But nothing like that is mandated, much less is any approach for
deriving a dereferencable URI for a single term.

Regards,
-- 
Aristotle Pagaltzis // 



Re: html content, xml:base and xml:lang

2006-11-02 Thread A. Pagaltzis

> Does xml:base and xml:lang apply to html encoded content?

Yes, definitely.
-- 
GMX DSL-Flatrate 0,- Euro* - Überall, wo DSL verfügbar ist!
NEU: Jetzt bis zu 16.000 kBit/s! http://www.gmx.net/de/go/dsl



Re: Adding POST capability to atom:link

2006-10-26 Thread A. Pagaltzis

* Gopalan Sri <[EMAIL PROTECTED]> [2006-10-26 18:50]:
> The information I want to pass back to the server is complex in
> nature and makes sense to capture in XML. My question is
> whether or not there are any thoughts or plans to extend the
> atom:link contruct to support something like this:

My answer is that the element is called `link` and you’re asking
for something other than a link.

I certainly hope that clients will never ever be expected to
issue anything other than GET in order to dereference a link.

If you describe the nature of the task you want to perform,
someone might be able to suggest a better mechanism for
expressing it.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Question on undefinedAttribute/Content

2006-10-18 Thread A. Pagaltzis

* Jan Algermissen <[EMAIL PROTECTED]> [2006-10-18 10:45]:
> RFC4287 distinguishes between 'undefined' and 'extension'
> constructs. I am understanding the distinction to imply that
> conformant software should provide for handling extension
> elements, but can and should ignore any occurrences of
> undefinedAttribute or undefinedContent.
> 
> Is that understanding correct?

Yes. To be precise:

Extension constructs are any markup which the software knows to
interpret.

Undefined markup is anything it doesn’t know to interpret. In
particular, this includes any future additions to Atom itself.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-17 Thread A. Pagaltzis

* Alastair Rankine <[EMAIL PROTECTED]> [2006-10-17 15:35]:
> I thought it might be simpler for the *exporter* to choose
> a content  syntax - perhaps with the help of the user - which
> is deemed to be  the most interoperable, and yet closest to the
> original.

That is a good counter.

However, you still need to address the restriction of text
constructs, namely that in Atom, they can be only of type `text`
(with no semantics implied for whitespace), `html` or `xhtml`.
Without further provisions you can only export the cooked content
of elements other than atom:content.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-17 Thread A. Pagaltzis

* Alastair Rankine <[EMAIL PROTECTED]> [2006-10-17 14:05]:
> So the list is now:
> 
> 1. Complete list of authors defined. For each author:
>   a. Name
>   b. URI
>   c. email
> 2. Complete list of categories defined:
>   a. Name
>   b. URI
> 3. All articles. For each article:
>   a. Source text
>   b. All the relevant metadata from the Atom spec, namely:
>   author, ID, published, rights, title, updated, summary, 
>   categories
>   c. Some other metadata:
>   draft status, syntax of source
> 4. All comments and trackbacks. For each comment or trackback:
>   a. Source text
>   b. Atom spec metadata:
>   author, ID, title, published, summary, avatar?
>   c. Additional metadata:
>   pointer to parent article or comment (ie "in-reply-to")
> 5. All "Owned" media. For each media object:
>   a. URI
>   b. MIME type
>   c. Binary data
> 
> Does this look about right? Obviously there would need to be
> a liberal sprinkling of extension points for proprietary
> information.

I think it is a good idea to also include the translated text of
each article, comment, etc. Eg. if they’re written in Markdown,
they should be accompanied by an HTML version, so that when
migrating to an engine which does not have Markdown support, such
articles and comments are not lost.

The trouble is with the content model. Suppose a weblog
supports distinct summaries and main articles, and it supports
Markdown. Firstly, text constructs do not support arbitrary MIME
type; only atom:content does. Secondly, there are then two
instances of the textual content of every supported field. If
titles may contain inline Markdown markup, how do you preserve
that?

I’m not sure what to do about this. The first thing that comes
to mind is that to accompany each atom:foo text construct with
a corresponding src:foo element, but I don’t know whether this is
a good idea. There are two options here: either the elements are
placed directly inside the atom:entry as extension elements, or
they are collectively placed inside the atom:content as instances
of an independent XML vocabulary. The latter seems favourable,
but again I don’t know whether any of this is really a good idea.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-17 Thread A. Pagaltzis

* James M Snell <[EMAIL PROTECTED]> [2006-10-04 17:30]:
> I would add to this information about what plugins have been
> applied and what templates have been used. These, of course,
> are not going to be portable to different blog environments but
> the information would be necessary in order to faithfully
> recreate the entries later.

-1

These should be engine-specific extensions. The format should be
broad enough in scope that it can reasonably be used to transport
a weblog between engines, but not broader. What you’re looking
for is a full backup, but that’s a different use case than what
(I think) this spec aims for.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Searching for Atom-enabled code

2006-10-05 Thread A. Pagaltzis

Hi John,

* John Panzer <[EMAIL PROTECTED]> [2006-10-05 23:25]:
> 
> Using Google codesearch:

interesting results, though the numbers are brittle. I tried to
go through the entire result set for Perl f.ex., and on page 2
the number went down from 100 to 50, and on page 3 down further
to 45, and stayed there.

Still, it’s neat. It’s also interesting to contrast the numbers
for the MIME type with those for the namespace.

> Java: 
> http://google.com/codesearch?hl=en&lr=&q=lang%3Ajava+application%2Fatom%5C%2Bxml&btnG=Search
>
> (50 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Ajava+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(50 results)

> C++: 
> http://google.com/codesearch?hl=en&lr=&q=lang%3Ac%2B%2B+application%2Fatom%5C%2Bxml&btnG=Search
> 
> (10 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Ac%2B%2B+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(3 results)

> Ruby: 
> http://google.com/codesearch?hl=en&lr=&q=lang%3Aruby+application%2Fatom%5C%2Bxml&btnG=Search
>   
> (50 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Aruby+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(50 results)

> Perl: 
> http://google.com/codesearch?hl=en&lr=&q=lang%3Aperl+application%2Fatom%5C%2Bxml&btnG=Search
>  
> (100 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Aperl+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(50 results)

> C#: 
> http://google.com/codesearch?hl=en&lr=&q=lang%3Ac%23+application%2Fatom%5C%2Bxml&btnG=Search
>
> (9 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Ac%23+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(8 results)

> Python:
> http://google.com/codesearch?hl=en&lr=&q=lang%3Apython+application%2Fatom%5C%2Bxml&btnG=Search
> (100 results)

http://google.com/codesearch?hl=en&lr=&q=lang%3Apython+http%3A%2F%2Fwww.w3.org%2F2005%2FAtom&btnG=Search
(50 results)

Regards,
-- 
Aristotle Pagaltzis // 



Re: Clarify foreign markup: [was Atom Syndication Format To Draft Standard?]

2006-10-04 Thread A. Pagaltzis

* Bill de hOra <[EMAIL PROTECTED]> [2006-10-04 03:55]:
> A. Pagaltzis wrote:
> >I think given the above background you'll agree that the
> >intent of the document is pretty coherent. 
> 
> I couldn't tell whether new Atom extensions are foreign markup,
> or something else to be dealt with under wrt being
> a "forward-compatible" friendly consumer. It's kind of
> circular.

That’s what I meant. The intent is well thought-out and sharply
defined (in the mathematical sense), but it’s specification in
the document is not very explicit. It could stand to be clarified
a bit so that people don’t have to ask on the list to have
someone from the old boys club educate them before they know how
to read the spec.

Since you’re fresh from newly reading that section, how would it
have had to read in order to convey its meaning clearly?


* Robert Sayre <[EMAIL PROTECTED]> [2006-10-04 04:20]:
> Bill, please show us a bug?

Bugs concerning forward compatibility are unlikely to surface
prior to Atom getting revised in some form. It’d be good if the
spec is clear enough that implementations have a chance to react
interoperably in the eventuality of such revisions.

It’s not some huge roadblocking issue, but neither is it without
merit. If it can be removed with an extra sentence in the spec
and a tweak to another and the opportunity is there, that seems
like a worthwhile small win to me. Polish shows in the details.

> I don't think defining terms until we've got a good subset of
> an English dictionary will make the format more interoperable.

Noone said anything about defining new terms.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Clarify foreign markup: [was Atom Syndication Format To Draft Standard?]

2006-10-03 Thread A. Pagaltzis

* Bill de hOra <[EMAIL PROTECTED]> [2006-10-04 01:15]:
> Perhaps this is what's intended by those statements:
> 
> """
> Markup not defined in this document is called "foreign markup"
> """

No, I seem to remember pretty clearly from discussion that what
it means is thus:

Markup not known to the consumer is called "foreign markup"

That is, extension markup the consumer knows to interpret is not
foreign markup. In contradistinction, Atom markup that the
consumer does not know to interpret *is* foreign markup (eg.
attributes from a hypothetical future version of Atom).

The document then sets forth how foreign markup should be
interpreted, ie. basically what the consumer should do on finding
things in a feed that it doesn't understand.

> I don't think the document can forward to proposed without
> clarification. Also, "forward-compatible" is mentioned, but not
> defined - it's not possible to make a safe assumption on what
> it means, since it's relative to whatever "foreign markup" is.
> I assume "unrecognized" and "unknown" are synonymous.

I think given the above background you'll agree that the intent
of the document is pretty coherent. A clarification that makes
this background explicit would undoubtedly be helpful, though.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-03 Thread A. Pagaltzis

* Elliotte Harold <[EMAIL PROTECTED]> [2006-10-02 16:40]:
> It would essentially rule out using DOM to process this stuff,
> for example.

OK, sold. I hadn’t thought of that.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-03 Thread A. Pagaltzis

* Alastair Rankine <[EMAIL PROTECTED]> [2006-10-03 12:40]:
> Instead, how about this: a zipfile with a single "index.xml"
> file containing the Atom export document (as currently
> proposed), with all other resources added to the zipfile
> according to their relative URLs from the site being exported.

I’d rather the normative URIs for the media resources be given by
way of an alternate link in entries associated with each of the
resources. You’ll want such entries anyway in order to store any
associated textual data (eg. the description of an image) and
preserve other metadata such as who uploaded a file. Within the
zip, the file would be identified by using the atom:content/@src
attribute. The zip structure could be completely free-form with
the exception of the name and placement of the master feed.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Export

2006-10-02 Thread A. Pagaltzis

* James M Snell <[EMAIL PROTECTED]> [2006-09-29 14:17]:
> I've been stewing lately over the possibility of doing
> something similar to this but wrapping the atom documents and
> associated resources into a zip. A single master atom feed
> would provide an index of the archive, with individual entries
> either contained in that index feed or as separate entry
> documents

Why the zip? Atom is an envelope format that can transport binary
content. So is tar. Just gzip the Atom feed; instead of .tar.gz
(which usually compresses better than zips) you get .atom.gz.

Hmm. Maybe we should call these Atomballs?

Buckminsterfullerenes? :-)

Regards,
-- 
Aristotle Pagaltzis // 



Re: atom license extension (Re: [cc-tab] *important* heads up)

2006-09-06 Thread A. Pagaltzis

* Thomas Roessler <[EMAIL PROTECTED]> [2006-09-06 11:45]:
> On 2006-09-05 15:11:22 -0700, James M Snell wrote:
> > Take, for instance, Sam Ruby's Planet feed
> > (http://planet.intertwingly.net/atom.xml).  This feed
> > consists of entries that originated from many different
> > sources, some of which may have license links, some that
> > might not.  If Sam decided to put a license link at the feed
> > level, and if license links were inherited, it would mean
> > that Sam's license would be extended over resources he may
> > have no right to license.  Obviously, that's wrong.
> 
> Obviously, that's not obvious.  Who are we to tell that Sam
> hasn't obtained the right to attach these licenses out-of-band?

That may be a good point in this instance, but an irrelevant one.

James’ points out that there may be feeds where the feed
publisher has the rights to the feed as a collection, but not to
the content of individual entries. Since these cases exist, it
would be a bad idea for the licence to inherit from the feed to
entries in it.

Whether Sam in particular is or is not in that position does not
affect the principle. He’s not, btw: he republishes my content,
but he has no permission from me to relicense it.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Can/Does/Should the FeedValidator catch improperly escaped XHTML?

2006-08-31 Thread A. Pagaltzis

* James Holderness <[EMAIL PROTECTED]> [2006-09-01 01:30]:
> Encouraging people to use xhtml when they don't know enough to
> have made that decision themselves is just asking for trouble.

+1

Regards,
-- 
Aristotle Pagaltzis // 



Finally Atom: Blogger is here

2006-08-15 Thread A. Pagaltzis

Hi all,

about time, I say. In irc.freenode.org/atom, copper just linked
to , which reads:

We’ve added some additional feed options for our more
advanced users. Now you can have a feed for all the comments
on your blog, and even individual feeds for all the comments
on each separate post. We’ve also added support for the RSS
2.0 and Atom 1.0 standards.

That makes what, another few dozen million Atom 1.0 feeds?

Regards,
-- 
Aristotle Pagaltzis // 



Re: link element alternate and self

2006-08-13 Thread A. Pagaltzis

* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-08-13 13:00]:
> Now I wonder say I have a feed. Each entry has a link element which 
> should indicate the URI of the resource. That resource being a feed 
> itself not an entry.
> 
> In that case should I use self or alternate?

`alternate`.

The purpose of `self` is to embed the URI of the feed inside the
feed, so that an aggregator knows what URI to subscribe to, even
if all it has to go by is the feed document, but not a URI.
That’s all it’s for.

> The term "equivalent" being fairly unclear in this context IMO.

Yes, the wording in the RFC is unfortunate.

Regards,
-- 
Aristotle Pagaltzis // 



Re: clarification: "escaped"

2006-07-26 Thread A. Pagaltzis

* Antone Roundy <[EMAIL PROTECTED]> [2006-07-26 16:45]:
> Or you put the whole thing in a CDATA block.

Which is the easiest option, so long as you remember the edge
case of having to turn any `]]>` sequences in the input into
`]]>]]>

Re: clarification: "escaped"

2006-07-25 Thread A. Pagaltzis

* Robert Sayre <[EMAIL PROTECTED]> [2006-07-26 01:45]:
> On 7/25/06, Bill de hÓra <[EMAIL PROTECTED]> wrote:
> >And I didn't know whether Atom code could get away with
> >escaping < and &.
> 
>  hmm
> 
> that is an XML fatal error, no doubt, as the ampersand before
> "nbsp" must be escaped.

But he did say “escaping < and &”, so it would be. I’m not sure
what Bill’s question even is.

Regards,
-- 
Aristotle Pagaltzis // 



Re: RSS Extension for Security Information Exchange


* [EMAIL PROTECTED] <[EMAIL PROTECTED]> [2006-07-14 06:00]:
> Currently, I use RSS 1.0 and the field  of the
> Dublin Core. In case of Atom, is best practice to use the field
>  of the Dublin Core" ?

Sounds like Atom’s native `link` element to me. What kind of
values do your `relation` elements have and what do they mean?

Regards,
-- 
Aristotle Pagaltzis // 



Re: RSS Extension for Security Information Exchange


* Masato Terada <[EMAIL PROTECTED]> [2006-07-14 01:30]:
> I would like to make a RSS Extension (Qualified Security Advisory
> Reference) for RSS 1.0, 2.0 and Atom to promote the following
> environment.
> 
>  - Distribution designed to encourage reuse of security information
>  - More efficient aggregation of security information from product vendors

This doesn’t strike me as something that needs any new
syndication functionality. It seems like you just want to
transport some non-HTML content via a feed. Atom natively
supports transporting documents of any MIME Type without the need
for any extensions. Doesn’t that cover your use case? Do you
actually need to extend the functionality of the syndication
format?

Regards,
-- 
Aristotle Pagaltzis // 



Re: http://www.intertwingly.net/wiki/pie/XhtmlContentDivConformanceTests


* Antone Roundy <[EMAIL PROTECTED]> [2006-06-28 21:30]:
> Consider this:
> 
> http://example.com/foo/";>
>   ...
>   
>   http://example.com/ 
> feu/">axe
>   
> 
> 
> Whether there's a problem depends on whether one requests the
> xml:base, xml:lang, or whatever for the atom:content element
> itself or for the CONTENT OF the atom:content element, in which
> case the library could return the values it got from the
> xhtml:div. Except in unusual cases like this, the result would
> be identical.

I can see your argument, but I find this too fine a distinction.
The `div` is part of the container when `type="xhtml"` as far as
I’m concerned. I’d just merge the information with that on the
`content` element and pretend there’s no difference. As far as
the feed’s *meaning* is concerned, there isn’t, after all.

> * give me the raw contents of the atom:content element
> * give me the contents of the atom:content element converted to
>   well-formed XHTML (whether it started as text, escaped tag
>   soup, or inline xhtml)
> 
> In the former case, keeping the div feels like the right thing
> to do -- the consuming app would have to know to remove it. In
> the latter case, removing the div from xhtml content feels
> like the right thing to do.

Yes, that sounds sane. “Give me the raw contents” would be
somehting only an Atom-aware API client would want to do, so it
is reasonable to expect that the client knows what to do with the
`div` when it finds that the content type was `xhtml`. Anyone who
just wants to use the data and doesn’t want to have to care about
how Atom works should just ask for XHTML and not care what it was
originally packaged as.

> ...now that I think about it, if the library always returns the
> xml:base which applies to the content of the element, that
> could cause trouble too:
> 
> http://example.com/";>
>   ...
>   
>href="axe.html">axe
>   
> 
> 
> Here, if I get xml:base for the content of content, it will be
> "http://example.com/feu/";. Then, if I get the raw content of
> the element, strip the div, and apply xml:base myself, I'll
> erroneously use "http://example.com/feu/feu/"; as the base URI
> unless I know to ignore the xml:base attribute on the div.

I agree, but I don’t see how that’s at all to the point. Such an
API client is just buggy. If they ask for the raw `content`
content, then they should also ask for the `content` base URI,
not for the content’s base URI.

Guiding API clients to avoid such a mistake should be reasonably
easy by naming the methods appropriately, ie something like
`get_container_content` and `get_container_base` vs `get_content`
and `get_base`. (That the first pair of names is so long is fully
intentional… :-) )

Regards,
-- 
Aristotle Pagaltzis // 



Re: http://www.intertwingly.net/wiki/pie/XhtmlContentDivConformanceTests


* Henri Sivonen <[EMAIL PROTECTED]> [2006-06-29 00:20]:
> On Jun 28, 2006, at 23:53, James M Snell wrote:
> >or instance, if I have  >xml:lang="fr">... and I drop the div silently,
> >then  I've got a problem.
> 
> Dropping the div shouldn't mean dropping the language and base
> URL context. You need to communicate those anyway in the case
> they are  inherited from higher up in the document tree.

Exactly.

Regards,
-- 
Aristotle Pagaltzis // 



Re: http://www.intertwingly.net/wiki/pie/XhtmlContentDivConformanceTests


* James M Snell <[EMAIL PROTECTED]> [2006-06-28 20:00]:
> A. Pagaltzis wrote:
> > * James M Snell <[EMAIL PROTECTED]> [2006-06-28 14:35]:
> >> Hiding the div completely from users of Abdera would mean
> >> potentially losing important data (e.g. the div may contain
> >> an xml:lang or xml:base) or forcing me to perform additional
> >> processing (pushing the in-scope xml:lang/xml:base down to
> >> child elements of the div.
> > 
> > How is that any different from having to find ways to pass
> > any in-scope xml:lang/xml:base down to API clients when the
> > content is type="html" or type="text"? I hope you didn’t punt
> > on those?
>
> Our Content interface has methods for getting to that
> information.

Then stripping the `div` is not an issue, is it?

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: http://www.intertwingly.net/wiki/pie/XhtmlContentDivConformanceTests


* James M Snell <[EMAIL PROTECTED]> [2006-06-28 14:35]:
> Hiding the div completely from users of Abdera would mean
> potentially losing important data (e.g. the div may contain an
> xml:lang or xml:base) or forcing me to perform additional
> processing (pushing the in-scope xml:lang/xml:base down to
> child elements of the div.

How is that any different from having to find ways to pass any
in-scope xml:lang/xml:base down to API clients when the content
is type="html" or type="text"? I hope you didn’t punt on those?

Regards,
-- 
Aristotle Pagaltzis // 



Re: [RFC 4287] unicity of atom:category element


* Nicolas Krebs <[EMAIL PROTECTED]> [2006-06-27 00:15]:
> Could an atom 1.0 feed contain some item whith 
> " somexmlns:href='http://www.tbray.org/ongoing/What/Technology/Coding/Java/' />
> and other item with 
> " somexmlns:href='http://www.tbray.org/ongoing/What/Technology/Sun/Java/' />
> where the first Java is not the same as the second ? 

The term is machine readable. The label is human readable.




Regards,
-- 
Aristotle Pagaltzis // 



Re: Copyright, licensing, and feeds


* Karl Dubost <[EMAIL PROTECTED]> [2006-06-08 04:30]:
> Which will not remove abuse :)

Well, will anything short of not publishing your content?

I think the point of such an effort is to make life easier for
third parties who want to respect your wishes, not to make it
harder for third parties who are intent on violating them.

Regards,
-- 
Aristotle Pagaltzis // 



Re: when should two entries have the same id?


* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-06-07 20:20]:
> /me wonders how long before a wiki engine based on Atom :)

You mean ? :)

Regards,
-- 
Aristotle Pagaltzis // 



Re: Link rel test cases


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 20:25]:
> >> On 5/31/06, A. Pagaltzis <[EMAIL PROTECTED]> wrote:
> >> >
> >> >My interpretation of these facts is that string comparison
> >> >is explicitly expected.
> 
> If it was explicit, you wouldn't need to interpret.

Okay, more imprecise wording. Make that “specifically
anticipated.”

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: OT Re: [OFF-LIST] Re: Fwd: Link rel test cases [OFF-LIST]


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 19:55]:
> On 5/31/06, A. Pagaltzis <[EMAIL PROTECTED]> wrote:
> >If you hadn't dropped an asinine jab at him into a completely
> >unrelated thread you might not have created the problem that
> >you would then need to "solve" in the first place.
> 
> Actually, those were just the latest two. But you didn't know
> that, did you?

No, I didn’t. You sure picked an unfortunate sample to forward
back to the list, though.

> How about you go back to writing your Atom code?

How about you leave conjecture out of your commentary about other
people’s activities?

> If you have further comments, send them somewhere else. If you
> send them to me, I'll be sure to put them with the other unread
> emails from you.

Duly noted. I only ever remember sending you a single email
anyway, and that was a thank-you note for one really good
criticism you posted here somewhat recently that even refrained
from any personal attacks. What a pity that it would go unread.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Link rel test cases


Hi Robert,

* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 19:35]:
> On 5/31/06, A. Pagaltzis <[EMAIL PROTECTED]> wrote:
> >
> >My interpretation of these facts is that string comparison is
> >explicitly expected.
> 
> Incorrect.

I don’t see how, although I can see how what I wrote might be
ambiguous. Substitute “expected” by “anticipated and provided
for” to get something closer to what I meant, perhaps.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: OT Re: [OFF-LIST] Re: Fwd: Link rel test cases [OFF-LIST]


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 17:55]:
> So please, spare me the lecture. I don't want to get nasty
> emails from James anymore. My problem is solved.

If you hadn’t dropped an asinine jab at him into a completely
unrelated thread you might not have created the problem that you
would then need to “solve” in the first place.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Link rel test cases


* James Holderness <[EMAIL PROTECTED]> [2006-05-31 02:40]:
> I agree completely, but as a content consumer I still need to
> know whether to use IRI::Compare or String::Compare when I do
> encounter some ridiculous feed that uses example (a). I'm
> hoping for a simple answer along the lines of "Use
> IRI:Compare", "Use String::Compare", or "The spec doesn't say,
> so you may use whatever you prefer".

RFC4287 defines the relation value in terms of IRIs, but does not
require that relations be compared as such, and then constrains
the set of values to a subset of IRIs. This constrained set is
more amenable to simple string comparison. My interpretation of
these facts is that string comparison is explicitly expected.

Given then that all implementations that I have read the source
of do indeed compare relation values as strings, my conclusion is
that while you are free to compare them as IRIs, doing so is
unwise; likewise, while you are free to specify registered
relation values in your published feeds as absolute IRIs
including the http://www.iana.org/assignments/relation/ base,
doing so is unwise.

The spec indeed doesn’t say, so you may indeed use whatever you
prefer. That does not mean all preferences are equally wise.

Regards,
-- 
Aristotle Pagaltzis // 



Sorry this is on-list; Robert does not seem to appreciate off-list mail



Please note the datetimes:


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-30 22:30]:
> On 5/30/06, James M Snell <[EMAIL PROTECTED]> wrote:
> >
> >[snip]


[In a thread which had absolutely nothing to do with James’
extensions:]
* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 02:50]:
> The URI/IRI specs say "use whatever you prefer". If you don't
> like that, have James add it to his revision of 4287. :)


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 04:00]:
> I think James forgot to cc the list
> 
> -- Forwarded message --
> From: James M Snell <[EMAIL PROTECTED]>


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-31 04:40]:
> Hmm, do you harass everyone who disagrees with you like this?
> [snip]
> 
> On 5/30/06, James M Snell <[EMAIL PROTECTED]> wrote:
> >[snip]


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-19 22:50]:
> I find interacting with you {{James --Ed.}} to be a giant time
> sink. My new policy will be to explain my problem *once*, and
> then I will verify that my concerns (if any) have been
> addressed at some later date when there is a revised document
> available. If my concerns aren't addressed, I will make a
> concerted effort to avoid writing or being responsible for
> maintaining any relevant functionality.


I have no further commentary to offer.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Link rel test cases


* Martin Duerst <[EMAIL PROTECTED]> [2006-05-30 08:00]:
> The conclusion is that a content producer that uses
> HTTP://www.IANA.org:80/assignments/relation/alternate at all
> does something wrong.

+1

Regards,
-- 
Aristotle Pagaltzis // 



Model vs Syntax (was: Feed Thread in Last Call)


* Tim Bray <[EMAIL PROTECTED]> [2006-05-23 23:40]:
> On May 20, 2006, at 8:49 AM, David Powell wrote:
> >Foreign attributes are bad, and are inherently less
> >interoperable than Extension Elements.
> 
> I would say that furious debates about elements-vs-attributes
> have been going on since the dawn of XML in 1998, but that
> would be untrue; they've been going on since the dawn of XML's
> precursor SGML in 1986. They have never led anywhere. After
> you've noticed that if you need nested element structure you're
> stuck with elements, and if you don't want to have two things
> with the same names attributes can help, there really aren't
> any deterministic decision procedures.
> 
> I note with pleasure that *all* known XML APIs allow you to
> retrieve elements and attributes with about the same degree of
> difficulty.

As I read David’s argument, this has nothing to do with elements
vs attributes and everything to do with Extension Elements vs
foreign markup. It doesn’t make a whiff of difference to David’s
argumen whether the Feed Thread Extension standardised on
providing this information as child elements or attributes of
atom:link. The considerations are exactly the same: model vs
syntax.



By and large, I agree with him that it would have been beneficial
to specify Atom just a little more closely at a model level. But
I also agree with you that aspiring to much higher rigor beyond
the Infoset level is unnecessary.

My retrospective opinion is that the correct approach would have
been to specify that an Atom Feed Document consists of a series
of completely independent Atom Entries, each of which can be
interpreted in isolation of any others as well as of the Atom
Feed Document that they are found in (modulo Person Construct
inheritance). This would explicitly allow consumers to rely on
this atomicity (pun intended), thus preventing any extensions
from crossing these boundaries.

This goes beyond the mere interchange of messages to a definition
of a standardised model, though as you can see, it’s a very loose
one. I contend it is also the model used implicitly by any useful
aggregator which tracks feed content over time.

Section 6.4 is more myopic and simultaneously more presbyopic
than that.

This omission shouldn’t matter much in practice. RFC 4287 enables
such a world view implicitly anyway (eg. by only allowing feed
metadata to appear at the top of a Feed Document and declining to
assign any significance to the order of entries). Extensions
which require considering an Atom Feed Document as an overall
unit rather than as a collection will hopefully fail to gain much
acceptance by virtue of high burden on implementors. But being
explicit about this model would have made RFC 4287 a better spec.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Fyi, Apache project proposal


* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-05-23 17:20]:
> As we have already seen on this list, RFC4287 lacks of
> precision in some context, therefore I wonder what being
> "exactly correct" represents.

Did I miss something? I remember several oversights of omission,
but none of imprecision.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread updates


* James M Snell <[EMAIL PROTECTED]> [2006-05-20 06:40]:
> A. Pagaltzis wrote:
> > I’d still like thr:when called thr:updated, as it follows the
> > same semantics as atom:updated and its value is of the same
> > type.
> 
> I'm still stewing over this and haven't quite made up my mind
> on it yet. The only reason I'm not quite comfortable with it is
> that it just seems confusing have both an atom:updated and a
> thr:updated.

How so? I honestly can’t follow that. Explain?

> >> That is, the actual total number of responses contained by
> >> the linked resource MAY differ than the number specified in
> >> the thr:count attribute. Feed publishers SHOULD make an
> >> effort to ensure that the meta is accurate.
> > 
> > This SHOULD seems way too prescriptive. If you keep this
> > sentence at all, I suggest changing to an informal “may want
> > to.”
> 
> "may want to" is a little too weak for me, but yes, the SHOULD
> is too much. Let me think about it. If I can't come up with
> something better, I'll use the "may want to" suggestion.

Oh wait. I was bewildered because I read it as “Feed aggregators”
rather than “Feed publishers.” Sorry! Comment retracted, the
SHOULD is perfectly appropriate.

> >> Feed publishers MUST consider a change to the thr:count and
> >> thr:when attributes to be an "insignificant" update, meaning
> >> that the value of the containing feed, entry or source
> >> element's atom:updated element MUST NOT be affected by a
> >> change to the values of either of these attributes.
> > 
> > I would clarify this “an "insignificant" update in terms of
> > RFC 4287”. However, I am not sure what this MUST buys, and
> > more importantly, how it could be enforced. Suggesting SHOULD
> > instead.
> 
> Making this a MUST will (hopefully) reduce the likelihood
> false-updates for clients that don't understand FTE. That is,
> if I use a client that does not understand FTE and I suddenly
> see an entry that is marked as updated for no apparent reason,
> I'm likely to get quite annoyed after a while.
> 
> (note that I included this after running some tests on a couple
> of feed readers and discovered that it is indeed quite
> annoying)

That means it falls into the “compliance cannot reasonably be
tested but non-compliance is likely to cause interop problems”
bucket, which is exactly when a SHOULD is appropriate.

> > This concern could be partially addressed by including an
> > element to specify a global reply count for an entry in an
> > atom:entry Metadata element.
> 
> […] I could imagine feed reader implementors being quite pissed
> off that they have to support an element with identical
> form/function/semantics as slash:comments just so feed
> publishers can avoid having to declare one additional xml
> namespace.

I dunno; it seems like a drop in the bucket compared to the rest
of the spec, and if they’ve already implemented slash:comments
semantics it seems like the effort to support an equivalent
element in another extension is minimal.

> Also consider that even if FTE declares a
> 5 element, most folks are likely going
> to keep on using slash:comments. (I mean, heck, look at the
> number of Atom 1.0 feeds that are still using  to
> indicate the category!!)

If they were previously already using it, sure. I’m willing to
bet money that next to noone who implemented Atom 1.0 support
from scratch is doing that, though. Rather, I’d posit that these
are (nearly?) all template-based Atom 0.3 implementations that
were upgraded to Atom 1.0 with minimum effort.

I believe that those who come to Atom 1.0 with a clean slate
benefit from the inclusion of a native atom:category element, and
likewise those who come to the FTE with a clean slate will
benefit from the inclusion of a native atom:entry Metadata
element equivalent to slash:comments.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Feed thread updates


Hi James,

* James M Snell <[EMAIL PROTECTED]> [2006-05-19 20:00]:
> Considerations for using thr:count and thr:when

I’d still like thr:when called thr:updated, as it follows the
same semantics as atom:updated and its value is of the same type.

> That is, the  actual total number of responses contained by the
> linked resource MAY differ than the number specified in the
> thr:count attribute. Feed publishers SHOULD make an effort to
> ensure that the meta is accurate.

This SHOULD seems way too prescriptive. If you keep this sentence
at all, I suggest changing to an informal “may want to.”

> Feed publishers MUST consider a change to the thr:count and
> thr:when attributes to be an "insignificant" update, meaning
> that the value of the containing feed, entry or source
> element's atom:updated element MUST NOT be affected by a change
> to the values of either of these attributes.

I would clarify this “an "insignificant" update in terms of RFC
4287”. However, I am not sure what this MUST buys, and more
importantly, how it could be enforced. Suggesting SHOULD instead.

> Lastly, implementors need to be aware that while the Atom
> specification  explicitly allows the
> link element to contain arbitrary extensions, the specification
> does not require that implementations support such extensions.

This concern could be partially addressed by including an element
to specify a global reply count for an entry in an atom:entry
Metadata element. The cost of such an inclusion is insignificant,
and there are benefits for all consumers, including those which
can support the namespaced link attributes. I strongly suggest
adding such an element.

I am willing to draft spec language for it if you want me to.

> The element is not unlike the references and in-reply-to email message
> headers defined by , with the exception that,
> unlike those headers, the "in-reply-to" element is required only to
> identify the unique identifier of a single parent resource as opposed to
> the listing all of the unique identifiers for each preceding resource in
> the thread.  If the entry is a response to multiple resources,
> additional "in-reply-to" elements MAY be used.

This is an inaccurate description of the RFC 2822 headers.
Suggest the following:

The element is not unlike the references and in-reply-to
email message headers defined by .
However, unlike the in-reply-to header, the "in-reply-to"
element is required to identify the unique identifier of only
a single parent resource. If the entry is a response to
multiple resources, additional "in-reply-to" elements MAY be
used. There is no direct equivalent to the references header,
which lists the unique identifiers of each preceding message
in a thread.

> If the resource being responded to does not have a persistent,
> universally unique identifier, the IRI used to retrieve a
> representation of the resource MAY be used so long as that IRI
> could also be used as a valid atom:id value and so long as the
> "href" attribute is also specified.

It would improve interop if multiple disparate publishers
publishing a response to the same resource were led to pick the
same identifier, so I suggest changing this MAY to SHOULD.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Antone Roundy <[EMAIL PROTECTED]> [2006-05-18 21:40]:
> The point of the whole exercise is to create a lightweight
> document for volatile metadata. If it's an atom:feed, you have
> to include a lot of stuff that's not needed here--atom:title,
> atom:updated, atom:author, and atom:summary or atom:content.
> Also, you'd need to have an atom:id for each entry in addition
> to the @ref pointing to the entry that it talks about.

I did say that atom:entry is overkill. You could still use a feed
document, though. If you have no atom:entry in it you can elide
the feed-level atom:author, and the other required elements for a
feed (atom:id and atom:updated) seem like a good idea to have in
this sort of document. Only atom:title is unnecessary, but that
does not feel like a big burden.

> Sure, but if they don't understand FTE, they wouldn't know what
> to do with the extra metadata anyway even if it were in the
> main feed.

That is only half correct. The point of Sec 6.4 is to allow
intermediaries at the infrastructure level (which includes things
like the RSS Platform) to store and pass on extension metadata
generically, without having to understand what a particular
extension means. If you put this metadata out of band, then the
application layer has to take on infrastructure layer
responsibilities.

Note that I’m not arguing against the approach. It seems like an
interesting idea. I’m just pointing out that it does have costs.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Antone Roundy <[EMAIL PROTECTED]> [2006-05-18 20:05]:
> and in another document:
> 
> 
>   
>   
>  hreflang="..."  ct:count="5" ct:when="..." />
>  hreflang="..."  ct:count="3" ct:when="..." />
>   
>   
>  hreflang="..."  ct:count="0" ct:when="..." />
>  hreflang="..."  ct:count="1" ct:when="..." />
>   
>   ...
> 
> 
> Of course the comment tracking document wouldn't only be
> authoritative for feeds that pointed to it with a
> comment-tracking link.
> 
> This would require an extra subscription to track the comments,
> as well as understanding an additional format (as opposed to
> just an additional extension--either approach requires SOME
> additional work), but it would prevent unnecessary downloads by
> clients that aren't aware of it, and would reduce the bandwidth
> used by those that are.
> 
> This approach could be generalized to enable offloading of
> other metadata that's more volatile than the entries
> themselves.

Actually, you don’t really need another format. There’s no reason
why you couldn’t use atom:feed in place of your hypothetical
ct:comment-tracking. :-) Your ct:entry elements could almost be
atom:entry ones instead, too, except that assigning them titles
and IDs feels like overkill.

The real cost is not the cost of an extra format, but that
implementations then need to understand the FTE in order to know
to poll an extra document to retrieve the out-of-band metadata.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-18 18:05]:
> There's no technical reason for the placement of the
> attributes,

Do you have better ideas on how to provide this information on a
per-link basis? It would help if you actually tried to suggest an
approach instead of bashing what’s there.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* James M Snell <[EMAIL PROTECTED]> [2006-05-18 17:40]:
> My interpretation of the text and the RELAX NG definition is
> that while the specification does not assign any meaning to
> extensions of the link element, it is nonetheless explicitly
> allowed.

Noone ever debated that.

> It may have been a mistake, but the discussion of section 6.4
> is explicitly scoped *only* to child elements of atom:entry,
> atom:feed, atom:source and Person constructs.

That was a mistake, yes. Unfortunately, hindsight is 20/20.

> Note that this section does NOT state that ONLY those elements
> may be extended; rather, the section defines the
> characteristics of two types of extensions that could occur on
> those subsets of elements. The characteristics of extensions on
> other elements in the Atom vocabulary are left undefined.

Yes. That means extending other elements is a free-for-all just
as it is in RSS 2.0, and we know the problems that this poses in
practice. Extending Atom in ways other than those defined in Sec
6.4. has the same problems as extending RSS 2.0 with namespaced
elements.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Sylvain Hellegouarch <[EMAIL PROTECTED]> [2006-05-17 20:10]:
> However, if I'm an aggregator I don't need the thr:count and
> thr:when because I will find those information anyway with the
> following process:

Consider the situation where a weblog only has a single global
comments feed – which I strongly favour because having one of
them for each entry just does not scale. Then it’s easily
possible for some comments to have fallen of the bottom of the
comments feed by the time you fetch it to check. In that case,
the information in the attributes will be more accurate than the
process you describe.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Eric Scheid <[EMAIL PROTECTED]> [2006-05-17 19:10]:
> I also meant there to be different hrefs too :-(

Oh! I thought that was the point – the idea being that you can
express (roughly – not precisely) that there are X entries in
SomeLanguage at $some-uri and Y entries in OtherLanguage at the
same $some-uri. Which I think is in fact expressible. But I’d
have to go back and check RFC 4287 in detail to know for sure.


* James M Snell <[EMAIL PROTECTED]> [2006-05-17 19:40]:
> What I'm not sure about is whether "amusing" is "good" or
> "bad".

If what you’re asking is what I meant by “amusing,” then the
answer is “good.”

Regards,
-- 
Aristotle Pagaltzis // 



Re: Informational vs. standards-track (Was: Re: Last Call: 'Atom Threading Extensions' to Proposed Standard (draft-snell-atompub-feed-thread))


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-17 07:25]:
> I would have said this should go Experimental,

+1

We can wait and see what problems crop up in practice with the
contested attributes, and whether extensibility according to Sec
6.4. ff (or lack thereof) turns out to be paramount or, to borrow
Tim’s turn of phrase, a molehill.

If it works out, just reissue it; if not, there’s room to go back
and fix it.

Sounds reasonable enough to me.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Eric Scheid <[EMAIL PROTECTED]> [2006-05-17 14:25]:
> would this mean this is possible:
> 
> 
> 
> 
> ...
> 

You mean `hreflang`, not `xml:lang`, right?

I have to say at first blush I don’t see why it should not work,
so I find your thought experiment quite amusing.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-17 01:50]:
> You have no technical reason that makes that location
> compelling, and several WG members have questioned whether this
> document adequately covers the area in question.

I have to disagree that there is no technical reason.

There is no way to sanely associate additional information with a
link element. I suggested an approach based on cross-referencing
with the `href` value, but interactions with xml:base invalidate
that approach. Other than `href`, there is no other hook on
`atom:link` which could be used for cross-referencing without
resorting to microparsing hacks.

The root of the problem is a miniscule omission in RFC 4287: Sec
6.4. does not list `atom:link` as a location for Metadata
elements. It should have. The effect is that links in Atom can
only be extended at the XML level, not at the model level.

There is no other reasonable choice for the FTE than to supply
this information as namespaced attributes on the link element.
This is now clear.

I hate the idea as much as you do, but RFC 4287 is what it is.

> In fact, you appear unable to explain the rationale behind any
> technical decision without resorting to circular reasoning,
> logical fallacies, and claims that are outright false.

That doesn’t mean there is *no* reason for any of these technical
decisions.

But I agree that James has advocated the position he chose on
this particular issue extremely poorly, just as you’d have done
your own argument a favour by omitting your interpretation of the
matter as vendor politics.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* James M Snell <[EMAIL PROTECTED]> [2006-05-16 06:00]:
> The slash:comments extension element can be used to provide a
> global comment count that operates independently of the replies
> link.

Supply per-link information as namespaced attributes on link
elements, if you must. I don’t like the idea, but it seems there
is unfortunately no way to associate link-specific RFC 4287
Simple or Structured Extension Elements with a link. (But why
`thr:when` rather than `thr:updated`?)

However, don’t neglect to provide a way to supply a global reply
count. That would break the argument that the FTE covers nearly
every threading use cases without having to resort to a gaggle of
other extensions and hence weaken FTE’s position, IMO.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread in Last Call


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-16 04:45]:
> […]

+1

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread update


* Tim Bray <[EMAIL PROTECTED]> [2006-05-05 03:50]:
> If it turns out to be useful, it'll stick. Otherwise not.

No doubt; but then why did we need so much verbiage in Sec. 6.4.
and subsections anyway?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread update


* Tim Bray <[EMAIL PROTECTED]> [2006-05-05 01:50]:
> This assertion that atom:link is not extensible is simply,
> flatly, completely, wrong. I just went and reviewed 4287 and I
> think it is perfectly clear on this. I suggest that interested
> parties review sections 4.2.7, 6.3, and 6.4 and, if they still
> think there is any problem with child elements of ,
> find language in the RFC which says something other than what
> those sections say.

The assertion is not that atom:link may not have child elements
or namespaced attributes. The assertion is that the list of
locations for Metadata elements in Section 6.4 should have
included atom:link.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread -09


* M. David Peterson <[EMAIL PROTECTED]> [2006-05-04 23:30]:
> Or is something like this simply inviting WAY TOO MANY little
> things to find justification to plug up the collective inbox of
> the community members?

I don’t know. So far during extension development discussions,
only the missing extensibility for links has stuck out as a real
sore point in RFC 4287. Other than that, the spec has stood up
very well with only a few minor errata reported here and there.

At least, that’s my impression; I don’t know what others think,
of course.

Frankly, I would hope there won’t be much interest – cause if
there is, what else would that mean than that we did a shoddy
job? :-)

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread -09


* James M Snell <[EMAIL PROTECTED]> [2006-05-04 18:00]:
> The only sane answer would have been to make link extensible.

There’s no doubt about that at this point. Non-extensibility of
links has caused us a lot of pain in several different extensions
at this point.

Unfortunately, only hindsight is 20/20…

> However, for now, I think I'll proceed by simply dropping the
> count and when from the draft.

Okay. It’s a pity, since folks were obviously getting value from
that information, but it’s an acceptable move.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed thread -09 (was: Re: Atom Rank Extensions)


* James M Snell <[EMAIL PROTECTED]> [2006-05-03 03:45]:
> Ok, so how's this (not word-for-word as I would write it in the
> spec, but you should get the idea)
> 
> The ref attribute MUST be an absolute URI that matches a the
> resolved href URI of a replies link character-for-character
> (case sensitive)
> 
> In other words;
> 
>xml:base="http://example.org/foo"; />
> http://example.org/comments.xml"; ... />

I don’t know if I like it. It really, *really* departs from
“something that’s as simple to implement as possible,” doesn’t
it? Not only is this just as hard for consumers to implement as
previous sketches, it’ll *also* annoy publishers, I think.

Question: what is the reason you are so staunchly opposed to
cloning `atom:link` for the extension’s purposes?

I’m starting to think that that is the only sane answer. If you
want to provide additional information about a link, you need to
associate this information with the link somehow. If you want to
stick to the spec mechanisms for extending the format, then you
have to provide this information in extension elements and you
must not add attributes to the link. So you must identify the
link by one of its attributes. The only attribute of `atom:link`
by which you can identify it at all is `href`. However, if you
factor in xml:base, you’re in a world of pain, and I don’t see
any way out of that.

The only other option I see is a very ugly hack: ride on the back
the `rel` attribute, abusing the fact that a relation may be a
URI to provide an identifier, ie. something like

http://purl.org/net/thread/replies?id=x3os882ja";
href="comments.atom"
...
/>

But that’s so awful and dirty on so many levels that that I have
to go wash my hands now. Ugh.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Tools that make use of previous/next/first/last links?


* David Powell <[EMAIL PROTECTED]> [2006-05-03 11:20]:
> Wednesday, May 3, 2006, 6:48:55 AM, Mark Nottingham wrote:
> > Such URIs have a much more fundamental problem -- they don't
> > refer to a stable set of entries, and therefore only act as a
> > snapshot of the  *current* feed, chopped up into chunks. If
> > the feed changes between  accesses, the client will be in an
> > inconsistent state. The client  also has to walk through all
> > of the pages every time it fetches the  feed; it can't cache
> > them -- which is a primary requirement for feed  history.
> 
> I think it would be worth recommending the use of stable URIs
> in the draft.

Considering how fundamental stable URIs are to the FH extension
and how much of the previous discussion has revolved around them,
I’m surprised there isn’t already language to that effect in the
text. In fact, I would have expected a SHOULD or two on this
subject.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-03 03:15]:
> >> You know, stuffing an idea because of who proposed it.
> >
> >No, not just because of who proposed it, but also because of
> >how.
> 
> Sorry Aristotle, you're not qualified to make that statement.
> I've proposed things every which way, so I know the form
> doesn't matter.

Indeed, I’ve only been a witness to the discussion in a few
venues, so I can’t pass judgement about the big picture. I have
to take your word for it.

However, with regard to the part of the picture in which I did
participate, I will go on record to say that you almost never
made it easy for me to consider your position on an issue on
which I was trying to make up my mind when held a strong opinion
about it. And that’s not for lack of willingness on my part, nor
is it because your positions have been unreasonable. I often
wished you’d argue your case better.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


Hi David,

* David Powell <[EMAIL PROTECTED]> [2006-05-03 01:15]:
> I don't think you should do URI normalisation. The ref is being
> used as an identifier, you don't do protocol level
> normalisation on namespace URIs or Atom ids why do it here?

That’s a good point; though there’s a slight difference as
namespace URIs must be absolute in the first place.

The `href` isn’t necessarily unique, now that I think about it,
if you play games with `xml:base`:




Of course, it’s entirely reasonable to declare this madness and
refuse to support it.

Maybe we need something like _A Plea for Sanity_ that Joe English
wrote about namespaces, for xml:base.

> The draft should specify character-by-character comparison of
> the resolved URI's.

Yeah, probably.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


* James M Snell <[EMAIL PROTECTED]> [2006-05-02 22:25]:
> A. Pagaltzis wrote:
> > I have to say that your architecture sounds rather
> > heavyweight,
> 
> Heavyweight?  It's Java. need I say more?

Hehe. I stopped just short of asking “is that in Java?” :-)

> Does your implementation properly handle the following
> (contrived) example:
> 
> http://example.org/foo/bar";>
> ...
> 
> http://EXAMPLE.org:80/foo/bar/../comments.xml"; ... />
> ...
> 

You probably wanted a trailing slash on your base URI, else the
two hrefs are different.

> I know for a fact that Java's built-in comparison functions for
> the URI and URL classes do not.  I have to normalize the URI's
> after I resolve them before I can compare them.

Yeah, I need to do some extra work. I’m using Perl, whose URI
module does most of the work, but not all. Downcasing the host
name, removing explicit default ports, unescaping characters
which can be, and some scheme-specifics are all automatic, but
some things that should be (at least resolving `..` path segments
and escaping slashes in the query string) are not.

I should probably read the relevant RFCs and write test cases,
then file tickets… that stuff is bothersome.

> What's more, for each replies link, I need to iterate through
> all available thr:replies elements, resolve, normalize and
> compare each href.
> 
> Pain.

Yeah. At the DOM level you could use XPath to avoid iterating… :-/

> It is possible that the spec could dictate that the thr:replies
> resolved href attribute MUST match the link's href attribute
> character-for-character, making the above example invalid.

That would be a solution. Would it be a burden on publishers?

> > I can see that. Hrmf. There’s gotta be a better way…
> 
> ;-) Yes, there is a better way, but y'all complained about it
> ;-)
> 
> (sorry, couldn't resist)

Don’t be bitter now. :-)  That particularly choice does make
particular sense in your case; but that doesn’t mean it’s the
overall best.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Atom Rank Extensions


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-02 22:00]:
> I've been saying the same thing for weeks. I suppose it's par
> for the course to handwave about them being "strictly
> advisory", supply circular definitions for the feature in the
> first place, claim no one will be implementing the feature,
> then claim that someone is, etc, etc.

Yes. I thought those defences were very silly as well.

> You know, stuffing an idea because of who proposed it.

No, not just because of who proposed it, but also because of how.
You objection is not unreasonable, but you phrased it roughly as
“this is useless crap that no consumer is going to want and only
clueless publishers would insist on providing.” What is anyone
supposed to draw from that? Nor did it help to interpret this on
the level of vendor politics: implying that this extension came
to be just because IBM doesn’t want to play ball wasn’t the most
precise way to clarify its flaws. It wasn’t until David gave his
criticism that I saw any serious problem. 

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


* James M Snell <[EMAIL PROTECTED]> [2006-05-02 19:45]:
> A. Pagaltzis wrote:
> > Such as?
> 
> Aristotle, I appreciate the intention, but please don't bother.
> It is painfully clear that Robert has no intention of adding
> anything of any real value to the discussion.

I know. However, I despise politics and old boys clubs and prefer
the merit of my decisions to be self-evident, so I’m avoiding any
assumption of any axe to grind behind his behaviour, to see what
should be addressed and how. If there is any meritorious concern
in his objections, I’d like it addressed, regardless (despite?)
of who brought them up and how.

> As far as FTE is concerned, please understand that I am trying
> to find the best way of accommodating a mix between "The
> simplest thing that could possibly work" with "The way things
> likely ought to work".

Absolutely; I pushed for some of the compromises in the current
design myself.

> With the thr:replies element, to do it properly, I have to
> create a new extension element, create a factory, register the
> extension with the parser, etc. Adding in the difficulties
> inherent in matching equivalent href values between the
> atom:link and thr:replies element means that I'm having to do a
> whole lot more work than what is required with the attribute
> approach.

I have to say that your architecture sounds rather heavyweight,
though it could be close to the norm for people who don’t work at
the DOM level. I don’t have experience with that.

To give my experience from the other end, all my work has been at
the DOM level, where the approaches differ only minimally.
libxml2 provides a `getBase` method which makes xml:base support
effortless; when I use XSLT to transform Atom feed documents, I
wrap it and register it as an extension function, so matching
`href`s is trivial:



> So much, in fact, that I'm fairly certain that folks will be
> less likely to implement a FTE that incorporates the
> thr:replies element.

I can see that. Hrmf. There’s gotta be a better way…

I hope though that this also gives you an appreciation for
Robert’s complaint about the lack of a global reply count
provision. He’s right: for simple use cases that sidesteps a lot
of headaches on the consumer’s end.

> So if I seem grumpy and reluctant to change, please try to be
> patient and understand.

Yes, I see now how it comes about.

However, referring to above, plus what we know about the Windows
RSS Platform, please don’t forget the cases other than your own.

Let’s see if we can come up with something that is as simple to
implement as possible for everyone…

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Feed thread update


* James M Snell <[EMAIL PROTECTED]> [2006-05-02 17:00]:
> I'll go ahead and make the ref attribute optional.

I think that still needs to be accompanied with verbiage about
global vs local reply count though. There should be guidance on
what it means when elements both with and without `ref`
attributes are present on the same entry.

> Regarding the ref vs. href, issue, I really want to discourage
> client implementors from using the thr:replies as a link to the
> comment feed. Having and href attribute in there is inviting
> headaches. Suggestions on possible ways of wording the spec /
> attribute naming / etc would be greatly appreciated.

Okay, I can see that. Harumpf. Not happy; there has to be a way
to associate links directly with `thr:replies` elements and the
only other way than by comparing `href`s that I can think of is
to put a namespaced attribute on the link, which sucks for
reasons we’ve already been over.

Will have to read this revision and think about it.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-02 05:25]:
> On 5/1/06, A. Pagaltzis <[EMAIL PROTECTED]> wrote:
> >* Robert Sayre <[EMAIL PROTECTED]> [2006-05-02 03:50]:
> >> especially when changes requested by the community are met
> >> with hostility and channel flooding.
> >
> >Did this happen in more cases than the one I'm aware of?
> 
> Yes.

Such as?

> >> When I read terms like "more standard" wrt the feed thread
> >> extension, it makes me cringe.
> >
> >There are obvious reasons why that one is better than the rag-tag
> >group of RSS extensions...
> 
> Disagree. There is no proof of that.

There is proof that the existing patchwork of RSS extensions is
insufficient. That is enough to convince me that an extension
which addresses their holes is useful.

If addressing holes in existing standards was unnecessary, then
RSS is good enough and the Atom was a giant waste of time.

> I disagree with many decisions in the draft, but that is
> because I think they are misguided, not because I dislike the
> person who wrote them. For instance, every other threading
> extension uses a simple element with a number to represent the
> number of responses.

That is just one case. I agree that the current setup in the FTE
is less than pretty, and I’d like it to change; but I see what
motivated the form of the provided features and so I consider
them incomplete rather than completely misguided.

> This is limited in theory, but in practice, such elements are
> so easy to deploy, they prove valuable.

I agree with that. (See my proposition elsewhere, which would
have provided this as a special case; it does bother me that the
revision that was just published does not provide for this.)

> >> for that excludes the IETF from defining the problem.
> >
> >How do you mean? (Question to be taken at face value. I
> >honestly am not sure what you mean here.)
> >
> 
> Defining the charter, etc, etc. It's a good thing to do. Are
> there any WG members left who were around at that phase? I
> joined right around then...

You mean there should be a formal agreed-on statement of what an
I-D is supposed to achieve before the process starts? If that is
what you mean: yes, that is definitely a fine idea.

Regards,
-- 
Aristotle Pagaltzis // <http://plasmasturm.org/>



Re: Feed thread update


* James M Snell <[EMAIL PROTECTED]> [2006-05-02 07:15]:
> As you can see from the example, the thr:replies/@ref attribute
> points to an atom:id value, and not the URI used by the link.

So fetching and parsing all relevant links is the only way to
know which `thr:replies` element applies to which link, and no
way to indicate a global reply count is available?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom Rank Extensions


* Robert Sayre <[EMAIL PROTECTED]> [2006-05-02 03:50]:
> especially when changes requested by the community are met with
> hostility and channel flooding.

Did this happen in more cases than the one I’m aware of? You
know, the one where James eventually caved on both distinct
points anyway?

> When I read terms like "more standard" wrt the feed thread
> extension, it makes me cringe.

There are obvious reasons why that one is better than the rag-tag
group of RSS extensions required to duplicate even a limited set
of its use cases. We’ve had that discussion in other venues. (If
you do require a blow-by-blow posted here, I can put together a
summary for the WG.)

> By my count, James has 11 drafts in the system, all
> Atom-related. Many of them are copies of existing RSS
> extensions. It doesn't seem appropriate to issue competing
> versions of various extensions from Microsoft, Yahoo et al. and
> claim they are products of community consensus,

Granted, but don’t lump them all together. Some of them *are*
products of community consensus; the Thread extension in
particular got a lot of churn (more than the others by a wide
margin; ~250 posts on this list by my last count, aside from a
dozen weblog threads or so). At least one or two others received
some attention as well (the Licence extension I think? I didn’t
pay much attention to those).

It appears that it would be most productive if you simply express
any specific concerns you have about particular drafts and their
overlap with particular RSS extensions, instead of going for an
ad hominem against James. It worked for David Powell; his
concerns about technical flaws in the Thread extension convinced
James to revise the draft, where your vociferous unsubstantiated
objections had previously failed.

In any case I’m puzzled why you’d start ringing alarm bells just
now. None of these I-Ds are new; they’re all at least several
months old and some have been through a half-dozen revisions and
corresponding announcements. How did they escape your notice for
so long? If they did not, why have they only become a problem
now?

> for that excludes the IETF from defining the problem.

How do you mean? (Question to be taken at face value. I honestly
am not sure what you mean here.)

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* David Powell <[EMAIL PROTECTED]> [2006-04-27 12:10]:
> Aristotle's suggestion is ok, in that it saves a bit of typing
> in the common case where there is only one link - but in the
> case where there is more than one link, a combined count seems
> pretty useless: if there are multiple comment links, then
> either the consumer can cope with them and process both the
> links and counts, or the consumer can't cope with them and can
> only process the combined count - but the count alone without
> any links to reach the comments isn't very useful, so why
> bother with it - consumers that can cope with multiple comments
> links will be able to manage addition of the counts if
> necessary.

I don’t think it’s that useless, actually. One case I can think
of is where several comment feeds exist, where some comments are
duplicated in multiple feeds, but others are not. In that case,
the sum of local counts will be greater than the global count. I
expect that in practice, if a global count is present, it will
turn out to be the most precise count available, whereas there’s
nothing you could infer from a sum of local counts. (That does
not change the fact that all counts remain advisory, of course.)

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom ConformanceTests results and feedback


* James Holderness <[EMAIL PROTECTED]> [2006-04-25 22:15]:
> The aggregator developers are actively hostile towards such
> tests.

Really? I can only think of counterexamples, though my sample is
admittedly tiny. Who are the hostile ones?

Personally, as someone who has written patches for an aggregator
and is flirting with the idea of building one, I would be very
glad to have a defined target to aim at instead of just
eyeballing the overlap between the spec and the code. What sort
of motivation would compel a developer to be hostile toward
tests?

> Feed producers probably find informational tests more helpful
> than conformance tests.

But they are the ones who stand to gain from consistent and
complete implementation of the standard, in the long term.

In any case, can’t we even rally four or five people from the WG
who care enough about the spec to want to do something likely to
increase the chance of good implementations? Where are those who
participated in the interminable flamewars brought on by every
rathole that lay on the way to RFC4287? Have they stopped caring
now, or was all that vitriol just bikeshed painting after all?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Atom ConformanceTests results and feedback


* Sam Ruby <[EMAIL PROTECTED]> [2006-04-24 03:50]:
> It would be helpful if every entry had a distinct atom:id.  And
> if the tests were valid:
> 
> http://feedvalidator.org/check.cgi?url=http%3A%2F%2Fplasmasturm.org%2Fattic%2Fatom-tests%2Fxmlbase.atom

Yeah, I should fix those. I’ve also been thinking about the
suggestions to use `` tags to make it easy to scan the
results quickly. Likewise I’ve been thinking about Gordon
Weakliem’s comment on the wiki:

> I suggest that the tests be documented with respect to the
> expected results. For example, TitleConformanceTests is
> perfect: viewing the feed tells you what the expected result
> is. LinkConformanceTests, OTOH, gives me no idea of what the
> author expected to see when viewing the entry in a reader. For
> example, what does the author expect to see when viewing the
> second entry? If I display only the second link, do I pass? Do
> I need to display both links to pass?

I’d like to do more, but writing tests is menial work, and I
don’t have a lot of tuits at the time being. That’s why I asked
about being able to host these at the wiki, so that the touch-up
process would be low-friction.

If you lack tuits to take care of that, I could copy everything
to my site, for the time being, for easier editing.

I make no promises as to when any of that will be, though. :-/

Honestly, I’m a little disappointed that not more tests have been
written so far, and that is has been happening in such haphazard
fashion. Is it really because noone cares? (I suppose I don’t
care that much either, judging by my output.) What would it take
to get more people more involved? Would it help if there was a
list of outstanding testable spec aspects? What aspects need to
be tested (this needs more feedback from consumer developers!)?

Hmm, #atom would be an ideal place to get this done within a
short timeframe, provided a mob got together.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* James M Snell <[EMAIL PROTECTED]> [2006-04-22 03:05]:
>  ... I'm not really happy with it but this would work.

That’s roughly how I feel about it. :-)

It has in fact been the theme all throughout the Thread extension
development discussion…

> To be absolutely honest, David's comments here [1] really got me
> thinking.

Yeah, same here. Credit for my proposition really goes to him,
because his arguments about this matter (not just there, but
taken in entirety) where what drove it.

> I don't like it; the use of the supplemental element is ugly,

Yeah; well sorta: it’s specifically goobering up the document
with duplicate data in the necessary `ref` attributes that annoys
me. But I can’t think of any prettier approach that satisfies all
design goals as per David’s argument.

> Where that gets nasty, of course, is when the href is relative
> and xml:base is being used to set the Base URI.

Augh. Nasty indeed. However, it doesn’t concern me much, because
in Atom, `atom:link` has no children and only a single
URI-carrying attribution. Extensions will probably avoid adding
namespaced attributes or elements to it (cf. current discussion).
This means there’s little reason to apply an `xml:base` to an
individual `atom:link`.

> The updated spec would have an appendix that would explain that
> previous versions of the extension defined the attributes and
> that some implementations have been deployed that use the
> attributes. The spec will indicate that those attributes are
> deprecated in favor of the thr:count element but that feed
> consumers have the discretion of whether or not to support
> them.

I feel uncomfortable about it being codified for “eternity.”
There are still Atom 0.2 feeds in the wild, even though they’re
extremely rare. And we’re not seeing the end of Atom 0.3 anytime
soon. With that experience in mind I’d really prefer that the
previous approach not be legitimised even slightly, because
that’s likely to lead consumer developers to feel that they need
to support the old approach, and might lead publishers to probe
that support. So I’d prefer that there be some pressure for the
old approach to die quickly before it gets implemented in enough
venues for the Atom 0.3 Effect to set in.

I understand why you want it, though.

-0.5, I suppose?

I don’t know what to say about this.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* James M Snell <[EMAIL PROTECTED]> [2006-04-13 09:05]:
> Maybe, but given that WG messed up in not making the link
> element formally extensible, it's not likely to be pretty.

Yes. WGs mess up. It’s just life. In a perfect world, this would
be different, but Atom took long enough to ship. What we shipped
feels very solid and robust to me, despite the occasional hole or
oversight.

So let’s just accept that what we have is somewhat imperfect, and
try to get as close to pretty as we can within the constraints.

> Also, keep in mind that the uglier and more complicated the
> "correct" approach looks, the more implementors are going to
> gravitate towards less-than-correct approaches that meet their
> immediate needs.

I know.

> a. Status quo. Leave things the way they are in the current
>draft with a firm warning to implementors that not all atom
>impls will be capable of supporting them.

-0.5. As David and Byrne pointed out, having this information is
clearly useful, otherwise these attributes would not be part of
the spec; so it’s worth making an effort to make them available.

> b. Drop thr:count and thr:when from the spec.

+0

Though -0.5 if that’s all that would happen. *Some* mechanism for
providing this information should be available.

> c. Create a new replies extension element
> type="..."
> hreflang="..."
> title="..."
> count="..."
> when="..." />

+0.5

> d. Create a supplemental extension element
> 
>d1:
>
>
> 
>Where the ref attribute in  is a
>unique identifier that can be matched to the
>resource linked by the replies link.  If only a
>single replies link is specified, ref can be
>omitted.  There could be one thr:replies for
>each replies link.

+0.5

I’d instead propose a `thr:count` element with content, with
attributes `ref` and `updated` (`when` is too vague, IMO; I’d
prefer names suggestive of RFC4287 vernacular, particularly when
the semantics are comparable). If `ref` is omitted, this is a
global reply count. If it is present, this is a local reply count
for that resource, and the content of the `ref` attribute must be
identical with the `href` attribute of the corresponding link.
`updated` is, of course, optional.

A single global reply count is always permitted, in addition to
local reply counts, of which there may be exactly one per
resource referenced in a `replies` link.

This reduces the typical use case to a single Simple Extension
Element:

5

This accomodates developers with modest immediate needs neatly.

The most complex scenario then looks something like this, where
there are several additional Structured Extension Elements:

http://example.org/06/04/21/blah/comments"; 
type="application/atom+xml" />
http://example.org/06/04/21/blah/trackbacks"; 
type="application/atom+xml" />
http://example.org/06/04/21/blah/comments"; 
updated="2006-04-22T00:50:55+0200">4
http://example.org/06/04/21/blah/trackbacks"; 
updated="2006-04-21T22:21:37+0200">1
5

It’s somewhat ugly, but I think I can stomach it.

How does that look?

So far I’m not decided about whether there should be any language
to suggest some interpretation of a discrepance between a global
reply count and the sum of local reply counts, but I’m leaning
strongly towards no. Since local reply counts would not have to
be given for *every* resource, any constraint that the sum of
local replies match up with global reply count would have to be
qualified to apply only when local reply counts are present for
*all* linked `replies` resources. So not only is it questionable
whether such a constraint would really be useful in the first
place, rather than an unnecessary burden, but it also would be
complex, and yet feeble. That makes it seem like a bad idea.

>d2:
>
>
> 
>only one thr:replies would be specified regardless
>of the number of replies links. count would be
>reflective of the total number of known replies
>across all links.

-1. Having per-link information allows mapping scenarios more
complex than the weblog model, such as a Usenet-ish landscape of
multiple related, but independent distributed feeds. I’d rather
not throw those out.

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* David Powell <[EMAIL PROTECTED]> [2006-04-13 11:10]:
> But what would processors do with an atom:link? Atom Protocol
> uses "edit", there have been calls for a "stylesheet". Links
> aren't necessarily things that you'd display to users (check
> HTML out for examples of that: favicon, P3P, Atom/RSS, GRDDL)

Isn’t that what the `type` attribute is for?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* James M Snell <[EMAIL PROTECTED]> [2006-04-13 04:10]:
> What I did claim was that there is little to no technical
> justification for exactly duplicating the link element for the
> sole purpose of introducing two new optional attributes...

David countered that having this information is clearly useful,
else these attributes would not be in the spec, which means there
is a case to be made for making sure they’re available to all
clients, even those behind an API that only provides access to
Sec.6 extensions.

> With in-reply-to, the key issue that swung the argument in
> favor of a new extension element was whether or not the
> [EMAIL PROTECTED] attribute value could be an atom:id value or
> whether it had to be a dereferenceable URI. In other words, it
> was quite likely that ignorant implementations would do the
> Wrong Thing with a [EMAIL PROTECTED]"in-reply-to"].

My memory was different, so I went and re-read the threads.

The non-dereferencable URI issue was an important sideline, but
it was only a sideline in that discussion. If we were having that
discussion now, I agree that it would be a much bigger sticking
point, but back then, it was an also-ran.

The big debate which swayed the issue at the time was having a
mechanism for associating a source link with an in-reply-to link.
We were trying all sorts of funny combinations with things nested
inside the links or the links nested inside other things, IDREF
attributes, and what have you.

In the end, I put a big torch to my own proposition of an
`in-reply-to` link relation to end the madness:
http://www.imc.org/atom-syntax/mail-archive/msg16594.html

> Big difference in this case. There are no additional semantics
> that make the replies link "look funny".

It’s not nearly as funny-looking as that crazy in-reply-to
business we came up with back then, conceded.

> Not to be snarky, but that philosophy hasn't exactly worked out
> too well in the past (e.g. the rss 2.0 description tag).

But `description` can only appear once in an item, and therefore
there has to be some precedence matrix between it and its
derivatives. Not so with `atom:link` and clones, all of which may
appear any number of times in an entry, and thus pose no
precedence problem. In other words, comparing the two situations
is not quite fair.

> Bottom line: I'd be far more inclined to either drop thr:when
> and thr:count from the spec or document a clear caveat that the
> two attributes are likely not to be supported in some
> implementations than I would be to use anything other than link
> for replies.

Maybe we can think of other ways to expose this information so
that it fits the Atom extension model? Are those attributes
really the only possible approach to this issue?

Regards,
-- 
Aristotle Pagaltzis // 



Re: Feed Thread Draft Updated


* David Powell <[EMAIL PROTECTED]> [2006-04-13 00:15]:
> This seems to be the wrong priority to me.

Convincing arguments, IMHO; +1.

James:

As regards Robert’s vociferous comments, you have to acknowledge
that while the rest of the draft was hashed out in several
iterations, these `thr:count` and `thr:when` things snuck in at a
late stage without any discussion.

And, as regards David’s stance, I think it warrants a reminder
that `thr:in-reply-to` started life as as an `in-reply-to` link
relation as well, but we moved away from that because all of our
attempts to twist Atom links into carrying all the additional
semantics we needed ended up looking funny.

So I would argue that the same appears to be a good idea for the
`replies` relation since it grew beyond the scope of Atom links.

I would even argue that what we are seeing here are really the
first observed instances of a general best practice pattern for
Atom extensions:


Trying to extend `atom:link` is bad. If you need more
semantics than afforded to it by RFC 4287, you should
clone it and tweak the copy.


Regards,
-- 
Aristotle Pagaltzis // 



Re: Don't make Feed Extensions inherit!


* David Powell <[EMAIL PROTECTED]> [2006-04-12 13:40]:
> Reasonable implementations will probably just store the latest
> versions of feed and entry metadata, something like this:

Of course, what they *should* do is use `atom:source` so that
they can preserve all of the feed metadata, including RFC4287
Sec.6 extensions:


  
Dave
x
  
  ...2



  
Dave
x
  
  ...1



  
Someone Else
y
  
  ...4



  
Someone Else
y
  
  ...3


(Whether this is wrapped inside `atom:feed` or each entry is
stored separately is not relevant.)

Regards,
-- 
Aristotle Pagaltzis // 



  1   2   3   4   5   >