Re: Fwd: Atom format interpretation question

2007-01-07 Thread Sam Ruby


James M Snell wrote:

If you want to use the text/vnd.IPTC.NewsML media type to
identify the type of XML, then you'd have to escape the markup and treat
it like text.


s/escape/Base64/
s/like text/as binary/

- Sam Ruby



Re: Fwd: Atom format interpretation question

2007-01-07 Thread Sam Ruby


James M Snell wrote:

Ahhh... a slight ambiguity presents itself.  The treatment of text/
types in RFC 4287 is a bit underspecified.  I've always worked off the
assumption that text/* types do not require base64 encoding (that's what
Abdera expects).


On second read, JamesH is right (as were you, originally); I was wrong.

I don't see the ambiguity.


- James

James Holderness wrote:

Sam Ruby wrote:

James M Snell wrote:

If you want to use the text/vnd.IPTC.NewsML media type to
identify the type of XML, then you'd have to escape the markup and treat
it like text.

s/escape/Base64/
s/like text/as binary/

Are you sure? From RFC 4287, section 4.1.3.3:

5.  If the value of type begins with text/ (case insensitive), the
content of atom:content MUST NOT contain child elements.
6.  For all other values of type, the content of atom:content MUST be
a valid Base64 encoding, as described in [RFC3548], section 3.

In this case the type begins with text/ so surely rule 5 applies, not
rule 6.

Regards
James








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

2006-12-15 Thread Sam Ruby


Joe Gregorio wrote:

On 12/14/06, Sam Ruby [EMAIL PROTECTED] wrote:

I believe I first saw this in a response made by Roy Fielding to an
assertion that servers must treat HTTP PUT as a bit-for-bit copy, but I
can't immediately find the reference.


http://www.imc.org/atom-protocol/mail-archive/msg05425.html


That's the one!

- Sam Ruby



Re: Atom Entry docs

2006-12-14 Thread Sam Ruby


Tim Bray wrote:


Bob Wyman wrote:
There is, I think, a compromise position here which will avoid 
breaking those existing implementations which follow the existing RFC's.


co-chair-modeIn case you haven't noticed, the WG is hopelessly split 
between the new-media-type option and the media-type-parameter option. 
If a few people were to put up their hands and say yeah what Bob said 
your co-chairs would probably do a hasty consensus grab./co-chair-mode


+1 to what Bob said

- Sam Ruby



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

2006-12-14 Thread Sam Ruby


Lisa Dusseault wrote:




Can a server ever ignore part of an edit and successfully process the 
rest?


Yes. Think of a client that throws in a slew of random link elements with
relations my server implementation doesn't understand. Same with foreign
markup. The server is in charge.


I completely disagree with this.  It is way too unpredictable for 
clients to deal with.  Clients are left with the illusion of flexibility 
-- it *seems* you can use Atom syntax extensions and do creative things 
that other extended clients can understand -- but in fact the server can 
alter this at will leaving the client without any control over what it's 
really publishing.  In many cases, the client won't even want the server 
to store some stripped version of what it POSTed, because it can really 
change the meaning of some entry to have the server strip some of the 
content and markup.  Imagine removing the start time and location when 
I'm trying to publish an event entry to what I believe ought to be a 
calendar feed.  

Some server changes to submitted documents is of course going to be 
allowable (edit dates, server-provided IDs, changes which are 
effectively XML canonicalization) but I believe these need to be 
limited.  The general case, which is how servers deal with unrecognized 
elements, needs to be severely limited so that the server can either 
reject the whole request or store as provided.  


I believe I first saw this in a response made by Roy Fielding to an 
assertion that servers must treat HTTP PUT as a bit-for-bit copy, but I 
can't immediately find the reference.  In any case: clients must always 
consider the possibility that the server processes other requests (even 
internally generated ones) between the time the one the client issued 
and the next request the server choses to process.  Such requests could 
partially or completely change the representation of the resource.


- Sam Ruby




Re: WG Last Call for draft-ietf-atompub-protocol

2006-09-26 Thread Sam Ruby


Paul Hoffman wrote:


The WG Last Call will close September 26.


Here's a list of Paces that weren't disposed of with the last consensus 
call:


PaceAppEdited
PaceAppEdited2
PaceAppModified3
PaceAppVersion
PaceCollectionLinkType
PaceFixModel
PaceLocationPointsToEntry
PaceOrderCollectionsByAppModified2
PaceRemoveConnegSuggestionOnServiceDoc
PaceRemoveOutOfLineCategoriesFromCategoryDocument
PaceRevertTitle
PaceSecurityConsiderationsRevised
PaceServiceLinkType
UseElementsForAppCollectionTitles2
UseElementsForAppCollectionTitles3

- Sam Ruby



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

2006-08-31 Thread Sam Ruby


M. David Peterson wrote:
via 
http://www.oreillynet.com/xml/blog/2006/08/and_the_winner_of_the_best_ind_1.html#comment-75533


There's one other small problem though: they put XHTML as CDATA in
html text constructs, while they're supposed to contain HTML 4.
And since it's XHTML, they should embed it directly in xhtml
constructs...

Anthony brings out a good point  
http://www.oreillynet.com/xml/blog/2006/08/and_the_winner_of_the_best_ind_1.html#comment-75822 
,


Odd that the validator isn't saying anything about this.

Should it, or is this an edge case that can be difficult, at best, to catch?


At the moment, the HTML content is passed through the following:

http://docs.python.org/lib/module-HTMLParser.html

Note that this parser includes a handle_startendtag method, which is not 
a part of the HTML standard.  Given the rather loose nature of HTML, 
this only tends to catch things like unmatched angle brackets and quotes.


Also, there are a number of tools that attempt to produce well-formed 
XHTML, but don't do so consistently enough to drop the content into an 
Atom feed in such a manner.


- Sam Ruby



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

2006-06-28 Thread Sam Ruby


Robert Sayre wrote:


I'll file a bug
on UFP and I bet you it'll get fixed without a question


http://sourceforge.net/tracker/index.php?func=detailaid=1474256group_id=112328atid=661937

- Sam Ruby



Atom ConformanceTests results and feedback

2006-04-23 Thread Sam Ruby

http://planet.intertwingly.net/AtomConformanceTests/

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

- Sam Ruby



Re: xml:base in your Atom feed

2006-03-31 Thread Sam Ruby

Antone Roundy wrote:
 Sam,
 
 Funny that this should come up today given the recent discussion on  the
 mailing list--NetNewsWire isn't getting the links in your Atom  feed
 right.

There is an off chance that I have been following the list.  ;-)

- Sam Ruby



Re: xml:base in your Atom feed

2006-03-31 Thread Sam Ruby

Antone Roundy wrote:
 On Mar 31, 2006, at 4:12 PM, Sam Ruby wrote:
 
 Antone Roundy wrote:

 Sam,

 Funny that this should come up today given the recent discussion  on 
 the
 mailing list--NetNewsWire isn't getting the links in your Atom  feed
 right.

 There is an off chance that I have been following the list.  ;-)
 
 I certainly didn't mean to imply that you weren't--I just wanted to 
 point out what I'm seeing in case you didn't know that this  particular
 feed reader is having this particular problem today.  And  I thought it
 might be of interest to the WG to know what NNW is doing  given that
 it's doing something that has been argued against within  the last 24
 hours.

;-)

 I don't remember which version of your feed I was subscribed to 
 before--perhaps I wasn't subscribed to the Atom feed and NNW updated  my
 subscription when you redirected to it. So I don't know whether  you
 purposely removed xml:base to see what chaos would ensue, or  whether it
 hasn't been there all along and I just haven't seen the  problem since I
 was subscribed to a different version.

As late as this morning, all link/@href attributes in my Atom feed
contained absolute URIs.

One of the original problems that Atom set out to solve was the desire
by people to use relative URIs.  Even in their content.  In fact,
PARTICULARLY in their content.

My recent post of Common Feed Errors demonstrate that this demand
certainly exists - even in RSS:

http://www.intertwingly.net/blog/2006/03/13/Common-Feed-Errors

It would be helpful if people were to update:

http://intertwingly.net/wiki/pie/XmlBaseConformanceTests

- Sam Ruby



Re: xml:base in your Atom feed

2006-03-31 Thread Sam Ruby

A. Pagaltzis wrote:
 
 Sam: is it possible to host the test suites directly on the wiki,
 by having pages that consist entirely of verbatim text? Ideally,
 the content should be rendered inside the wiki chrome using
 `pre` tags, but be downloadable without the chome by way of
 adding something like `?display=raw;type=application/atom+xml`

At the moment, the raw text can be obtained with ?action=raw

Of course, that means that the non raw text might look a little weird.

I am comfortable enough with the moin code base that I would be willing
to code up a specific action just for this wiki that strips leading {{{
and trailing }}} and then delivers the results raw, with the appropriate
mime type.

How does ?action=atomtest sound?

- Sam Ruby



Re: IE7 Atom Handling (was RE: Link rel attribute stylesheet)

2006-03-01 Thread Sam Ruby

David Powell wrote:
 03. atom:published
 
 While atom:updated is converted to pubDate, atom:published is kept as
 atom:published; except, the date format is converted to RFC822 format.
 I think that the date format should be kept as-is in ISO8601-style
 format.

Why is atom:updated converted to pubDate?  If any atom date is converted
to pubDate, why isn't it atom:published?

- Sam Ruby



Re: IE7 Atom Handling (was RE: Link rel attribute stylesheet)

2006-02-27 Thread Sam Ruby

Sean Lyndersay wrote:
 Thanks James. I’ve filed bugs in our bug tracking database for each of
 the issues that came up in the feed validator (except for flagging
 /atom:*/ items, since these are a correct use of RSS 2.0 extension
 namespaces).

Re the flagging of atom: elements: this was indeed a bug in the Feed
Validator.

The Feed Validator was incorrectly flagging the use of atom:author
elements at the channel level and atom:link elements at the item level.
 A test case has been expanded to include these elements, and these
problems have been corrected.

The fix should be deployed online in a matter of hours.

- Sam Ruby



Re: Fwd: [rss-public] Microsoft Feeds API Enclosure Test

2006-02-25 Thread Sam Ruby

Sean Lyndersay wrote:
 
 As an format that is not intended for publishing on the web, but
 which is really a contract between the platform and the clients of
 the platform, the native format we use is not really required to be
 pure RSS 2.0.

Sean,

I'm not sure what you are looking for.  If the position you find
yourself in is that you are feature complete, the format you have
selected you expect to support in perpetuity, you have baked silent data
loss right into the Windows platform, but you will accept bug reports,
then simply realize that bug reports can be created at will.

If, instead, the position is that you have an internal data model which
is open for discussion, then we can have a discussion.  If you look on
the web, you will find plenty of RSS 2.0 feeds that contain small bits
of HTML markup -- things like bold words or italics -- in titles.  You
will find feeds with multiple enclosures.  You will find feeds with
relative references.  The RSS 2.0 spec doesn't disallow any of these,
nor does it specify how such things are to be interpreted.

Even so, such things are out there.  And they either need to be in your
model, or you have either data loss or data corruption.

You seem to think that you have picked RSS 2.0.  If you take a look at
the current food fight regarding the RSS Advisory Board, you would
realize that RSS 2.0 is frozen.  There are only two paths forward.
Creating new formats with new names, or the use of extensions.  The
newly reconsituted RSS Advisory Board thought that it could change RSS
by providing a small number of much needed clarifications.  They were wrong.

By changing what the description element is, you are changing RSS 2.0.
Call what you are creating a new format.  Or use a different element, in
a namespace.  Perhaps atom:summary would do.  Or you could create your own.

- Sam Ruby



Re: atom:updated handling

2006-02-18 Thread Sam Ruby

Bob Wyman wrote:
 Phil Ringnalda wrote:
 
Patches that will make that more clear are welcome.
 
 The warning message that Phil points to says in part: (at:
 http://feedvalidator.org/docs/warning/DuplicateUpdated.html) 
 
 For example, it would be generally inappropriate for a publishing
  system to apply the same timestamp to several entries which were
  published during the course of a single day.
 
 Of course, this leads one to wonder if it might be appropriate to apply the
 same timestamp to several entries if they were published during the course
 of multiple days...
 
 It would make a great deal more sense to say something like: It would not
 be appropriate to apply the same timestamp to several entries unless they
 were published simultaneously.

As you might imagine, given the context of syndication, the Feed
Validator has the potential for being in the center of controversy.  One
of the reasons why it has avoided being such is that I try to rely
directly on the wording from the spec whenever possible.

http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.3.3

- Sam Ruby



Re: Browser behaviour

2006-01-30 Thread Sam Ruby

Tim Bray wrote:
 
 On Jan 30, 2006, at 8:23 AM, James M Snell wrote:
 
 +1. Serving atom up at application/xml is perfectly acceptable
 
 It is *not*.  Atom has a registered Internet media type (application/
 atom+xml); using anything else is a bug. -Tim

I'm not sure I would stand on principle for that one if I were you.
Xhtml also has a registered Internet media type (application/xhtml+xml),
but many people (grin) serve up their xhtml pages as text/html.

I'd like to take a survey of what web browsers will accept and what they
indicate they prefer.

http://www.intertwingly.net/wiki/pie/AcceptHeaders

Based on the results, I will gladly start sending my feed at
application/atom+xml to those browsers that *don't* indicate a
preference for application/xml.

As well as make a change to the Feed Validator to send such a header itself.

- Sam Ruby




Re: Atom features support in readers?

2006-01-25 Thread Sam Ruby


Stephane Bortzmeyer wrote:

Is there somewhere a comprehensive survey of the current level of
support in readers, with details for each feature, specially the most
Atom-specific?

I tested content=xhtml support for several readers and none does it
properly. I would like to have information for other readers.

(Remember also the discussion here about the support of updated.)


Some results can be found here:

http://www.intertwingly.net/wiki/pie/ConformanceTests

Please feel free to add more.

- Sam Ruby



Re: AtomPubIssuesList for 2005/11/30

2005-12-01 Thread Sam Ruby


Robert Sayre wrote:

On 11/30/05, Sam Ruby [EMAIL PROTECTED] wrote:


Robert Sayre wrote:


I noticed you moved PaceFeedsNotCollections and PaceSimpleIntroduction
into the Closed section.


http://www.imc.org/atom-protocol/mail-archive/msg03545.html

And, unless I misinterpreted, both Paul and Tim confirmed via email
and/or IM that this was their intent;



That message concerned PaceServiceDescription, which has been moved to
Recommended For Closure.  No argument there. PaceFeedsNotCollections
and PaceSimpleIntroduction were moved directly to Closed. Once again,
I'm not arguing, just asking that the WG's decision be documented
explicitly.


Both were moved from the 'not yet taken up' to the 'currently under 
discussion' section the last cycle:


http://www.imc.org/atom-syntax/mail-archive/msg17547.html

Re-reading Tim's Search for Introspection Consensus and Paul's 
Tallying the survey, I now have serious doubts that they this covers 
PaceSimpleIntroduction, so I'm moving that back to revisit.  If it 
turns out that that PaceFeedsNotCollections was not included in what Tim 
was referring to by introspection via feeds/links, then I'll move this 
one back too.


- Sam Ruby



Re: AtomPubIssuesList for 2005/11/30

2005-11-30 Thread Sam Ruby


Robert Sayre wrote:

On 11/30/05, Sam Ruby [EMAIL PROTECTED] wrote:


Sceduling the remaining Introspection/Collection paces as well as the
ones that are under active discussion anyway:



Additionally, I'm recommending the following for closure:


Hi Sam!

I noticed you moved PaceFeedsNotCollections and PaceSimpleIntroduction
into the Closed section. That certainly seems reasonable to me, since
they received opposition and little support. However, the record of
their transition needs to be documented on the mailing list by the
secretary or chairs.


I did this based on the following:

http://www.imc.org/atom-protocol/mail-archive/msg03545.html

And, unless I misinterpreted, both Paul and Tim confirmed via email 
and/or IM that this was their intent; that being said, having one or 
both of them making their intentions more explicit on the mailing list 
wouldn't hurt.


- Sam Ruby



AtomPubIssuesList for 2005/09/05

2005-09-05 Thread Sam Ruby

A lot of work is going on in the area of collections - in at least two
different directions.  Depending on which direction we select, a number
of existing paces may become obsolete.  Accordingly, I'm scheduling:

  PaceAppDocuments2
  PaceSimplifyCollections

And the two paces prereqed by PaceAppDocuments2:

  PaceAppDocuments
  PaceCollectionClasses

As always, discussion of these paces should occur on the atom protocol
list, with a subject line identifying which pace you are expressing an
opinion on.

- Sam Ruby



Re: xml:base abuse

2005-08-21 Thread Sam Ruby

Sjoerd Visscher wrote:
 
 Sam Ruby wrote:
 
 URI(doc) = http://www.w3future.com/weblog/rss.xml?notransform
 xml:base = http://w3future.com/weblog/rss.xml?notransform

 Ah, ok, I missed that. (Just to be sure, you added www yourself, or is
 there a link to the feed somewhere with www in it?)

 Your feed is available from both of the URI's mentioned above.  The
 tinyurl quoted above is based on passing the first one to the feed
 validator.
 
 Oh, this is actually interesting. I send a 301 when you use
 www.w3future.com. It looks like this is handled transparently by your
 http library, giving you the file at w3future.com. In that case it
 should be possible to request the actual uri that is used to get the file.

Fixed.

 And then there's also the Content-Location header, which sets the base
 URI. This is used with content negotiation. F.e. (I haven't actually
 implemented this) if you would send a request to
   http://w3future.com/weblog/
 with the header
   Accept: application/atom+xml
 I could send you the atom file with this header:
   Content-Location: http://w3future.com/weblog/rss.xml?notransform
 
 Afaik this is how the HTTP spec suggest to implement content
 negotiation. Then the value of Content-Location should be considered to
 be the uri of the document.

I now check for content-location too.

- Sam Ruby



Re: If you want Fat Pings just use Atom!

2005-08-21 Thread Sam Ruby

A. Pagaltzis wrote:
 * Bob Wyman [EMAIL PROTECTED] [2005-08-22 01:05]:
 
What do you think? Is there any conceptual problem with
streaming basic Atom over TCP/IP, HTTP continuous sessions
(probably using chunked content) etc.?
 
 I wonder how you would make sure that the document is
 well-formed. Since the stream never actually ends and there is no
 way for a client to signal an intent to close the connection, the
 feed at the top would never actually be accompanied by a
 /feed at the bottom.
 
 If you accept that the stream can never be a complete well-formed
 document, is there any reason not to simply send a stream of
 concatenated Atom Entry Documents?
 
 That would seem like the absolute simplest solution.

I think the keyword in the above is complete.

SAX is a popular API for dealing with streaming XML (and there are a
number of pull parsing APIs too).  It makes individual elements
available to your application as they are read.  If at any point, the
SAX parser determines that your feed is not well formed, it throws an
error at that point.

With a HTTP client library and SAX, the absolute simplest solution is
what Bob is describing: a single document that never completes.

Note that if your application were to discard all the data it receives
before it encouters the first entry, the stream from there on out would
be identical.

- Sam Ruby



Re: If you want Fat Pings just use Atom!

2005-08-21 Thread Sam Ruby

Joe Gregorio wrote:
 Why not POST the Atom Entry, ala the Atom Publishing Protocol?

Essentially, LiveJournal is making this data available to anybody who
wishes to access it, without any need to register or to invent a unique API.

I can, and have, accessed the LiveJournal stream from behind both a
firewall and a NAT device.  Doing so requires the client to initiate the
request.  Therefore, if you really wanted to turn this around, the
client would need to initiate a POST, and the server would need to
return the Fat Pings as the response.

I talked to Brad - in fact, I had independently made the same suggestion
that Bob did.  Brad indicated that if there were clients with different
requirements, he was amenable to accommodating each - endpoints are cheap.

- Sam Ruby



Re: xml:base abuse

2005-08-20 Thread Sam Ruby

Sjoerd Visscher wrote:
 
 Sam Ruby wrote:
 
 Apparently, consuming tools are welcome to aggressively substitute
 references to the enclosing parent document of any element for any
 references that, when resolved according to xml:base, differ from that
 xml:base only in ways that deal with normalization and fragment
 identifiers.  This can only cause confusion if the xml:base in effect
 differs from original xml:base of the document (i.e., the URI used to
 retrieve the document in the first place) in ways other than the
 fragment identifier.
 
 You've nailed it.

Sjoerd, I'd be interested in your comments on this:

http://tinyurl.com/9o6y2

- Sam Ruby



Re: xml:base abuse

2005-08-16 Thread Sam Ruby

Robert Sayre wrote:
 On 8/15/05, Sjoerd Visscher [EMAIL PROTECTED] wrote:
 
Yes, it's a known bug.
https://bugzilla.mozilla.org/show_bug.cgi?id=275689
 
 Well, it's not clear from that bug that any Mozilla committers feel
 it's wise to fix. Even so, they seem to be leaning towards patching
 html:a as a special case, in the event that they do anything.
 
 I'll agree that this should be a warning, and perhaps write something
 that willcome back to haunt me--Atom makes a point of leaning many
 established specifications. It's unwise to lean on those specs in the
 corner cases where they diverge from existing implementations, and a
 warning in the feedvalidator is justified in such cases.

What I see occurring here is implementations dealing with the attendent
confusions that their users face as the result of an unclear
specification of a corner case in a spec.

After all this discussion, I am *still* unclear as to where this corner
case is.

Let me try again.

Apparently, consuming tools are welcome to aggressively substitute
references to the enclosing parent document of any element for any
references that, when resolved according to xml:base, differ from that
xml:base only in ways that deal with normalization and fragment
identifiers.  This can only cause confusion if the xml:base in effect
differs from original xml:base of the document (i.e., the URI used to
retrieve the document in the first place) in ways other than the
fragment identifier.

Sjoerd: is this your understanding?  Note that I'm sidestepping all
questions about who is right or wrong.  Different implementations may
chose different strategies on how aggressive they wish to be.

If my understanding is correct, then I will agree that it is unwise for
feeds to express URIs that some consumers will interpret in one way, and
others will interpret in an other way; therefore a warning is warranted.

If my understanding is correct, I can produce test cases (and would
welcome any contributions in this area), and fix the feed validator.

The recommendations produced by the feed validator will focus on the
areas where the user is most likely to stumble into this problem.  It
seems to me that the largest problem area is at the feed level, and the
recommendation will be to either make xml:base at the feed level match
the URI from which the feed was loaded, or (paradoxically enough) to
reference a resource that you are unlikely to directly reference later
in the document.  Referencing a parent directory of any given document
is OK, what's important is that it isn't the document itself.

And to include an example that matches what Sjoerd's feed (and now Tim's
feed) now do.

Fair enough?

- Sam Ruby



Re: xml:base abuse

2005-08-16 Thread Sam Ruby

Sjoerd Visscher wrote:
 
 Sam Ruby wrote:
 
 Apparently, consuming tools are welcome to aggressively substitute
 references to the enclosing parent document of any element for any
 references that, when resolved according to xml:base, differ from that
 xml:base only in ways that deal with normalization and fragment
 identifiers.  This can only cause confusion if the xml:base in effect
 differs from original xml:base of the document (i.e., the URI used to
 retrieve the document in the first place) in ways other than the
 fragment identifier.
 
 You've nailed it.

Cool.  Took me long enough.

 Note that I'm sidestepping all questions about who is right or wrong. 
 
 I totally agree, there is no right or wrong here. The established usage
 of a base URI is so different from what Roy is saying that he shouldn't
 have changed the RFC in such a way. (The RFC is even an Internet
 Standard, defined as a specification that is stable and well-understood.)

I'm sure that we can find established usages where the consuming tool
has various degrees of agressiveness.  Pure speculation on my part,
but now that I have been able to see how limited in scope this issue is,
I can see where spec authors might have had trouble outlawing one
behavior or another, and decided that publishing a spec within a
reasonable timeframe was of greater value than resolving this issue.

 The recommendations produced by the feed validator will focus on the
 areas where the user is most likely to stumble into this problem.  It
 seems to me that the largest problem area is at the feed level, and the
 recommendation will be to either make xml:base at the feed level match
 the URI from which the feed was loaded, or (paradoxically enough) to
 reference a resource that you are unlikely to directly reference later
 in the document.  Referencing a parent directory of any given document
 is OK, what's important is that it isn't the document itself.
 
 Yes, although I wonder how you would test for unlikely to directly
 reference later.

I will only test for actual references that meet the criteria described
at the top of this note.  When I encounter such a condition, I will emit
a warning containing a one line message accompanied by a link.  That
link will take the user to a web page that repeats the one line message,
provides an explation of that message (probably close to what I said at
the top of the page), provide a recommendation (probably close to what I
said in the second paragraph above this one), and a link to the
feedvalidator mailing list.

- Sam Ruby



Re: xml:base abuse

2005-08-15 Thread Sam Ruby

Sjoerd Visscher wrote:
 
 Let me show you some pseudo-code that implements how to dereference an
 atom link according to rfc3986:
 
 dereference(linkElement) =
   baseURI = linkElement.baseURI
   linkURI = makeAbsolute(linkElement.href, baseURI)
   if stripFragmentID(linkURI) == stripFragmentID(baseURI)
 then return linkElement.ownerDocument
 else return loadDocument(linkURI)
 
 You'll see the problem when you pass the link element of Tim Brays feed.

Focusing on the link href=/ in Tim's existing feed, it seems to me
that Tim intended to express http://www.tbray.org/ongoing/.  How you
interpret the spec is that this will actually resolve to
http://www.tbray.org/ongoing/ongoing.atom.

Am I correct so far?

If so, what would happen if he replaced this with link href=//?
linkURI would still resolve to the same value as baseURI.  Do you
interpret the spec is that this will also resolve to
http://www.tbray.org/ongoing/ongoing.atom?

How about link href=.//?  I guess that would depend on what the
meaning of == is.

 - - -

I am quite willing to add feed validator warnings for edge cases where
reasonable professionals might have differing opinions of how to read
the specification, particularly if there is no compelling use case for
use of the feature.

Can we agree that empty //atom:link/@href values, or //atom:link/@href
values that consist entirely of a fragment are problematic?

- Sam Ruby



AtomPubIssuesList for 2005/08/15

2005-08-15 Thread Sam Ruby

The biggest issue yet to be solved is categorizing draft documents.
Accordingly, I'm scheduling the following, each of which either
addresses the specific issue, or the more general one:

  PaceCollectionControl
  PaceCollectionProcess
  PaceSimpleDraft

Discussion of these paces should occur on the atom protocol list, with a
subject line identifying which pace you are expressing an opinion on.

I'm also marking for closure:

  PaceCategorize
  PaceRenameUriElement

The former seems to have been withdrawn, and the latter is neither a
showstopper or a clarification/bug fix to the format document.  In
either case speak now if you feel otherwise.

- Sam Ruby



Re: atom:id spec bug

2005-08-14 Thread Sam Ruby

Graham wrote:
 
 Simon brown raises a valid point on the Spec explanations for  Pebble?
 thread:
 
   That same paragraph starts, When an Atom Document is relocated, 
 migrated,
   syndicated, republished, exported or imported, the content of its 
 atom:id
   element MUST NOT change.. For me, this paragraph talks about the  *Atom
   Document* moving, rather than the content that it represents (i.e.  a
 blog).
 
 Perhaps we could add or its associated resource after Atom Document?

+1

- Sam Ruby



Re: spec bug: can we fix for draft-11?

2005-08-08 Thread Sam Ruby

Tim Bray wrote:
 
 On Aug 4, 2005, at 1:04 PM, Sam Ruby wrote:
 
 Tim Bray wrote:

 I'm getting increasingly grumpy and just fail is looking better and
 better.  The current normative text, The element's content MUST  be  an
 IRI, is clear and simple and supported by other well-understood
 normative text, supported by lots of interoperable software, that   make
 the meanings of element, content, and IRI not really open  to
 intelligent dispute.  I claim that text enjoyed strong, not rough,
 consensus support from the WG.

 I believe that the term content is open to intelligent dispute.
 Apparently the authors of RFC3470/BCP70 believe so too.
 
 Could you reference that?  It seems to me that the guidance we should 
 take from 3470 is from section 4.16, which seems to me to make it  clear
 that *we* should make it clear that
 
 id
  http://example.com/foo
 /id
 
 is an error and nothing but an error. -Tim

My point was simply that *we* should make it clear.  Either of the texts
that Rob proposed [1] is sufficient for my purposes.

You appear to have a strong preference for #2, and a strong aversion to
#1.  I haven't heard anybody opposed to #2.  This seems to me to be to
be a sufficient basis for the chairs to declare (re-affirm?) consensus
on this matter.

If either is adopted, I will simply add a slew of tests to [2], ensure
that they pass, and commit the change.

- Sam Ruby

[1] http://www.imc.org/atom-syntax/mail-archive/msg16616.html
[2] http://feedvalidator.org/testcases/atom/2/



Re: spec bug: can we fix for draft-11?

2005-08-04 Thread Sam Ruby

Tim Bray wrote:
 
 I'm getting increasingly grumpy and just fail is looking better and 
 better.  The current normative text, The element's content MUST be  an
 IRI, is clear and simple and supported by other well-understood 
 normative text, supported by lots of interoperable software, that  make
 the meanings of element, content, and IRI not really open  to
 intelligent dispute.  I claim that text enjoyed strong, not rough, 
 consensus support from the WG.

I believe that the term content is open to intelligent dispute.
Apparently the authors of RFC3470/BCP70 believe so too.

I won't dispute your read on the consensus of the working group, but I
would like to request that *SOME* language be present in the spec that
makes this clear.

- Sam Ruby



Re: spec bug: can we fix for draft-11?

2005-08-02 Thread Sam Ruby

Julian Reschke wrote:
 
 James Cerra wrote:
 
 Ian Davis wrote:

 Graham wrote:
 That to me is demonstrates a very clear intention of the working group
 that the content must be exactly equal to the IRI. Changing this to
 allow whitespace would represent a major technical change to the
 format. I will figuratively lie down in the road if anyone suggests
 whitespace should be allowed around any machine-read content (uris,
 @type, @rel, etc).

 Leading and trailing whitespace should be stripped from the content
 of an atom:id element.

 The two examples that Bill gave WILL happen in the wild and Atom
 consumers will just deal with it by stripping the whitespace anyway
 despite what the spec says now. I think this should be endorsed in
 the spec for interoperability.

 +1.  But Sam Ruby's first draft at [1] demostrated more than just
 atom:id.  (He
 changed it now so that the examples don't have white space showing!
 lol!)  They
 also included things like:

 id
   http://example.com/
 /id

 updated
   2003-12-13T18:30:02Z
 /updated

 Neither of those are strictly legal, since white space is illegal in
 both IRI
 and RFC 3339 (dates) I think.  However they are legal with the Relax
 NG grammer
 used.
 
 Why would they be legal with the RNG grammar

From http://www.w3.org/TR/xmlschema-2/#dt-whiteSpace:

For all ·atomic· datatypes other than string (and types ·derived· by
·restriction· from it) the value of whiteSpace is collapse and
cannot be changed by a schema author; for string the value of
whiteSpace is preserve; for any type ·derived· by ·restriction· from
string the value of whiteSpace can be any of the three legal values.

That being said, the RNC grammar for atom contains:

atomId = element atom:id {
   atomCommonAttributes,
   (atomUri)
}

# Unconstrained; it's not entirely clear how IRI fit into
# xsd:anyURI so let's not try to constrain it here
atomUri = text

- Sam Ruby



Re: spec bug: can we fix for draft-11?

2005-08-02 Thread Sam Ruby

Graham wrote:
 
 On 2 Aug 2005, at 12:50 pm, Ian Davis wrote:
 
 The two examples that Bill gave WILL happen in the wild and Atom 
 consumers will just deal with it by stripping the whitespace anyway 
 despite what the spec says now. I think this should be endorsed in 
 the spec for interoperability.
 
 I (and probably others) have already put code out into the wild in  the
 assumption there is no whitespace. As I said before, it's too  late for
 a solution that changes the meaning of the spec.

I have put code out in the wild based on the assumption that whitespace
is not significant.  One or more of us have a bug, and potentially the
spec does too.  Note: the code in the feedvalidators consists entirely
of a single line, and that line was put in there intentionally, and test
cases were coded to ensure that this code behaved as intended.

Note: from an XML point of view, the following are all distinct:

  idhttp://example.com/id
  id![CDATA[http://example.com]]/id
  id http://example.com /id

However, from the point of view of a tool that expects a xsd:anyURI,
they are the same.

I'm not yet sure what the right thing to do here is, but lets to do the
right thing.

Even if we decide that whitespace is not significant, I do believe that
having the feedvalidator issue a warning in such cases is appropriate.

- Sam Ruby



Re: spec bug: can we fix for draft-11?

2005-08-02 Thread Sam Ruby

Julian Reschke wrote:
 
 Robert Sayre wrote:
 
 On 8/2/05, James Cerra [EMAIL PROTECTED] wrote:

 Neither of those are strictly legal, since white space is illegal in
 both IRI
 and RFC 3339 (dates) I think.  However they are legal with the Relax
 NG grammer
 used.

 Yes, they are. Relax NG regex matching strips leading and trailing
 whitespace. Atom Processors will do the same, so we should fix it.
 Comparison operations MUST be based solely on the IRI character
 strings, and the URI specs have always suggested that you should
 strip leading and trailing space.

 Robert Sayre
 
 Me confused.
 
 In
 
 atomDateConstruct =
atomCommonAttributes,
xsd:dateTime
 
 (http://www.atompub.org/2005/07/11/draft-ietf-atompub-format-10.html#rfc.section.3.3),
  how exactly does this allow whitespace around the xsd:datetime value???

Take a look at sections 3.2.7.6 and 4.3.6 of XML Schema Part 2:
Datatypes Second Edition, W3C Recommendation 28 October 2004.

- Sam Ruby



Re: spec bug: can we fix for draft-11?

2005-08-02 Thread Sam Ruby

A. Pagaltzis wrote:
 
 At the very least, the normalization procedure that the spec
 RECOMMENDS should contain language about stripping surrounding
 whitespace.

I too would like to see that added to the recommended normalization
rules in section 4.2.6.  That would make my job easier if somebody were
to challenge why I produced a warning in such a situation.

As it stands now, the spec does NOT clearly outlaw leading and trailing
whitespace from ids, and DOES require anybody the string to be kept
character by character equivalent whenever an entry is relocated,
migrated, syndicated, republished, exported or imported.

If Graham was truly serious about wanting to do his part[1] to ensure
that atom:id is implemented properly, I would expect any atom:ids that
he mints from here on out to contain leading and trailing spaces, tabs,
and newlines (in a variety of Mac, DOS, and Unix styles).

But I wouldn't recommend it.  To me, doing so would be akin to mailing
fragile equipment and paying for insurance, in the hopes of getting the
opportunity to express indignation at the post office.

- Sam Ruby

[1] http://www.imc.org/atom-syntax/mail-archive/msg16243.html



Re: Proposed changes for format-11

2005-08-01 Thread Sam Ruby

Eric Scheid wrote:
 On 1/8/05 5:39 PM, David Powell [EMAIL PROTECTED] wrote:
 
This specification does not place any restrictions on what elements
may be used as Metadata Extensions, but the RelaxNG grammar
explicitly excludes elements in the Atom namespace. The Atom
namespace is reserved for future forwards-compatable revisions of
Atom.

I'm not sure I like this paragraph. It starts by saying that it places
no restriction on the elements, then mentions the RelaxNG, then in the
final sentence, it says that actually there is a restriction after
all. I don't know - perhaps I'm not reading it right, but it sounds
contradictory. It would make more sense to me if everything was
dropped except the last sentence.
 
 I agree, especially since elsewhere the RelaxNG is noted to be Informative,
 not Normative.

This paragraph appears to be expressing two separate thoughts.  Perhaps
the solution is to separate the thoughts into separate paragraphs.

Perhaps the following could be added to section 6.2:

  The Atom namespace is reserved for future forwards-compatable
  revisions of Atom.

Which would enable the text in appendix B to simply state:

  The RelaxNG grammar explicitly excludes elements in the Atom
  namespace which are not defined in this revision of the specification.

- Sam Ruby



Introduction to The Atom Syndication Format

2005-08-01 Thread Sam Ruby

http://www.atomenabled.org/developers/syndication/

Feedback welcome.

- Sam Ruby



Re: Atom 1.0 xml:base/URI funnies

2005-07-17 Thread Sam Ruby


Sjoerd Visscher wrote:

Tim Bray wrote:


On Jul 16, 2005, at 1:28 PM, Sam Ruby wrote:


I didn't realize that path-empty was a valid URI-reference.


Yeah, it means here.


And that's why you can't use it as a reference to your site.

To quote from RFC 3986:

   When a URI reference refers to a URI that is, aside from its fragment
   component (if any), identical to the base URI (Section 5.1), that
   reference is called a same-document reference.  The most frequent
   examples of same-document references are relative references that are
   empty or include only the number sign (#) separator followed by a
   fragment identifier.

   When a same-document reference is dereferenced for a retrieval
   action, the target of that reference is defined to be within the same
   entity (representation, document, or message) as the reference;
   therefore, a dereference should not result in a new retrieval action.

So, link href='' / links to the atom file (as currently in memory), 
not your site.


This is how the feedvalidator evolves.

It is highly unlikely that here is what a person intends as an 
alternate.  Instead, something like the following might be more 
appropriate.


  link href=./

On the other hand, here is *exactly* what a person should be intending 
as self.


  link href= rel=self/

... however, that completely and utterly misses the point of the use 
case that rel=self was intended for (subscription given only the 
content of a feed), UNLESS xml:base is explicitly specified and resolves 
to a fully qualified URI.


Both of these cases merit warnings, IMHO.

Please consider updating http://intertwingly.net/wiki/pie/FormatTests 
with these and any other situations worth warning people about.


- Sam Ruby








Re: Atom 1.0 xml:base/URI funnies

2005-07-17 Thread Sam Ruby


Sjoerd Visscher wrote:

Tim Bray wrote:


On Jul 16, 2005, at 1:28 PM, Sam Ruby wrote:


I didn't realize that path-empty was a valid URI-reference.


Yeah, it means here.


And that's why you can't use it as a reference to your site.

To quote from RFC 3986:

   When a URI reference refers to a URI that is, aside from its fragment
   component (if any), identical to the base URI (Section 5.1), that
   reference is called a same-document reference.  The most frequent
   examples of same-document references are relative references that are
   empty or include only the number sign (#) separator followed by a
   fragment identifier.

   When a same-document reference is dereferenced for a retrieval
   action, the target of that reference is defined to be within the same
   entity (representation, document, or message) as the reference;
   therefore, a dereference should not result in a new retrieval action.

So, link href='' / links to the atom file (as currently in memory), 
not your site.


Upon further reading of 3986, I'm convinced that Tim's current feed is 
correct.


Base URI defaults to the Retrieval URI.  This gives rise to the common 
use case of same-document references.


However, Base URI Embedded in Content.  In XML documents, this takes the 
form of xml:base attribute values.  This is the case in Tim's feed.


- Sam Ruby



Re: Atom 1.0 xml:base/URI funnies

2005-07-16 Thread Sam Ruby


Tim Bray wrote:


I got an email last night from a well known syndication implementor  
pointing out an obvious bug in my Atom feed.  The feed's valid, but  the 
stuff in content was full of relative URIs which were broken  because 
I'd borked the xml:base.  So I went through the code and got  the 
xml:base right and ruthlessly pruned all the pointers.  The feed  looks 
a little weird and it's giving the (pre-alpha) validator a  heartburn, 
but I sort of think it's right.  I also think it's good  practice.  
Check it out:


feed xmlns='http://www.w3.org/2005/Atom'
  xml:base='http://www.tbray.org/ongoing/'
  xml:lang='en-us'
titleongoing/title
link href='' /
link rel='self' href='ongoing.atom' /
logorsslogo.jpg/logo
icon/favicon.ico/icon


I agree that relative URIs are a good practice.

I didn't realize that path-empty was a valid URI-reference.

Looks like another test case to write.  ;-)

 - - -

While it clearly shouldn't be the default behavior, longer term (i.e., 
sometime well after basic Atom 1.0 support is more complete), how much 
value do you think that there would be value in an option to attempt to 
verify all potentially dereferencable URIs resolve to accessible resources?


- Sam Ruby



Re: Media extensions

2005-07-16 Thread Sam Ruby


Danny Ayers wrote:

On 7/16/05, A. Pagaltzis [EMAIL PROTECTED] wrote:


* James M Snell [EMAIL PROTECTED] [2005-07-16 20:05]:


If the community can drive a viable solution without the
overhead of a formalized standardization process, it will work
out best for everyone and the anti-formal-standards crowd will
have far less to complain about or will at least be able to
devote more time to bashing atom ;-)


Yahoo!'s approach did seem to work very well without any formal
process, effectively just a mailing list and editor. But then Apple
came along...


... at which point, I would think that it should be painfully obvious to 
all that that which did seem to work very well without any formal 
process, isn't going to work out very well long term.


While I don't believe that *every* extension needs to the overhead of 
a formalized standardization process, I do believe that there is enough 
interest in *this* extension that this particular effort would benefit 
from a wider set of participants.


Question: can anybody here quantify the overhead of the IETF 
standardization process?  While I certainly would label some of the last 
few weeks overhead, everything else I attribute to the impact of 
allowing and enabling a wider set of participation.


Yes, developing specs up to Atom 0.3 was much easier when Mark, Joe, I, 
and few others could just listen to feedback on mailing lists, blogs, 
and wikis, and do what we thought was best.


But Atom 1.0 is much better.  Much.

My $0.02.

- Sam Ruby



Re: FormatTests

2005-07-15 Thread Sam Ruby


Graham wrote:
Why does the validator apparently fail outright when SHOULD level  
requirements are ignored? This seems unnecessary in light of having a  
spec where conformance levels are clearly defined.


Can you be more specific?

Perhaps this will help: FormatTests documents my intent.  If you see 
something there that is wrong, by all means, go fix it.


What you see with the current validator in terms of Atom 1.0 support is 
what I was able to cobble together on a plane ride out; and I'm taking a 
red-eye back tonight.


I expect this to be rapidly corrected over the next few days.

When I feel that the feedvalidator is anywhere near ready to be 
considered seriously for Atom 1.0 feeds, I'll post something on my weblog.


- Sam Ruby



Re: Old application/atom+xml issues

2005-07-11 Thread Sam Ruby


Bill de hÓra wrote:

Mark Baker wrote:



IMO, it matters not that no spec prescribes the use of this media type
for Atom 0.3 feeds.  What matters is whether it's in use today, which
we seem to agree is the case.  This seems an important piece of
information that implementors should know, which is my motivation for
asking that it be called out in the interoperability considerations
section of the template.  Something like;

 Interoperability considerations: Some existing agents and feeds that
support the Atom 0.3 specification, make use of this media
 type despite Atom 0.3 not being compatible with Atom 1.0.


In the spirit of that point about 0.3 being served with the media type
being an interop issue - what are the behaviors which will lead to
interoperation? The above text is only leads one to ask and I should do
what here? and doesn't say anything useful about what to do.


I'll also point out that there are atom 0.3 feeds being served with a 
mime type of text/html.  And undoubtably there will be atom 1.0 feeds so 
served.


The most we can do is to say that such things are invalid, and to work 
with the producers to correct this.


The majority of the existing atom 0.3 feeds are produced by a relatively 
few producers.  I am confident that these producers will convert over 
quickly.


I am also committed to getting the word out quickly that atom 0.3 feeds 
are not to be considered valid.  In particular, I plan to update the 
feedvalidator to note this as a problem (first as a warning, and later I 
will change this to an error).


- Sam Ruby



Re: Old application/atom+xml issues

2005-07-11 Thread Sam Ruby


Robert Sayre wrote:


So, -1 to mentioning Atom 0.3 at all.


I agree with Robert.

Note how Atom 0.2 isn't a problem at all...  we can (and will) do the 
same thing with Atom 0.3.


- Sam Ruby



FormatTests

2005-07-11 Thread Sam Ruby


http://www.intertwingly.net/wiki/pie/FormatTests

I've taken a pass at enumerating the test cases required to validate 
Atom 1.0, based on the presumption that things are not going to change 
too drastically from draft-ietf-atompub-format-09.


Undoubtedly there are typos, bugs, omissions, and there might even be an 
occasion or two where I have been overzealous.


My experience has been that this is only a starter set at best, as the 
set of possible errors that people will attempt is well beyond anything 
that one can possibly anticipate.


Corrections welcome.

- Sam Ruby



Re: Polling Sucks! (was RE: Atom feed synchronization)

2005-06-18 Thread Sam Ruby


Joe Gregorio wrote:

On 6/17/05, Sam Ruby [EMAIL PROTECTED] wrote:


P.S.  Why is this on atom-sytax?  Is there a concrete proposal we are
talking about here?  Is there likely to be?


Were you expecting [atom-syntax] to vanish in a puff of smoke
once we have a couple RFCs under our belt? Given the technology,
and the participants, I would expect [atom-syntax] to have the 
longevity of [xml-dev].


Silly me.  And here I thought it fertile grounds for a protocol 
discussion.  Carry on, then.


- Sam Ruby



Re: Polling Sucks! (was RE: Atom feed synchronization)

2005-06-17 Thread Sam Ruby


Joe Gregorio wrote:

On 6/17/05, Bob Wyman [EMAIL PROTECTED] wrote:


Joe Gregorio wrote:


The one thing missing from the analysis is the overhead, and
practicality, of switching protocols (HTTP to XMPP).


   I'm not aware of anything that might be called overhead.


I was referring to switching both the client and server from running
HTTP to running XMPP. That may not be practical or even possible
for some people. Yes, I understand that you run this right now.
Yes, I understand that you run a business doing this right now.
Yes, I agree that your solution is one way to solve the problem.

Do you agree that 99.99% of all syndication is done via
HTTP today and also offering an HTTP based solution would be of value?


Joe, I'd be careful with how you structure this argument.  It could be 
applied in a different context, for example:


  Do you agree that 99.99% of all syndication is done via HTTP GET
  and POST today and offering a solution based only on these two
  verbs would be of value?

One can go down this path and cater to the least common denominator 
always, or one can say that perhaps MIDP 1.0 phones are not particularly 
well adapted to perform complex editing tasks beyond simple GET and POST.


Perhaps HTTP is suited to a wide, but not universal, range of 
applications dealing with relatively coarse and relatively infrequently 
updated content; and XMPP is well suited to a different -- always on, 
firehose -- set of applications, with a wide overlap between the two.


And perhaps they could be combined.  I could see a future where there 
was a feedmesh backbone with nodes exchanging data via XMPP, serving 
content out to the rest of the universe via HTTP.


- Sam Ruby

P.S.  Why is this on atom-sytax?  Is there a concrete proposal we are 
talking about here?  Is there likely to be?




Re: some xmlns:atom tomfoolery

2005-05-28 Thread Sam Ruby


Eric Scheid wrote:


An Atom Entry can have XML content, right...

Consider this example:

feed xmlns=http://...atom;
...
entry
titlethe minimal Atom Entry/title
summaryA minimal entry has only .../summary
content type=application/atom+xml
entry
...
/entry
/content
/entry
/feed

Entirely legal, but who wants to bet the feed validator throws a fit ;-)


I'll take that bet.

- Sam Ruby



Re: How is Atom superior to RSS?

2005-05-22 Thread Sam Ruby


Bob Wyman wrote:
Ill be making a presentation on Tuesday which will include a slide on 
how Atom improves on RSS. If you have any thoughts on this subject, I 
would appreciate hearing them


Much of the following is still relevant:

  http://intertwingly.net/slides/2003/xmlconf/

I'm not certain what topic your presentation is supposed to cover, but 
hopefully there is room to mention the protocol.


- Sam Ruby



Re: How is Atom superior to RSS?

2005-05-22 Thread Sam Ruby


Bob Wyman wrote:

This has been an experiment...
I've got lots of thoughts on why Atom is an improvement over RSS but
I am constantly amazed that people are able to continue making the claim
that Atom offers little that RSS doesn't already support. Certainly, Winer
and the Microsoft crowd make that claim regularly. I've often wondered why
people don't see the really important differences between these two. To a
certain extent, the answer comes in the replies I've received to my posting.
i.e. Not even those most familiar with Atom can present a decent list of
clear advantages -- even though they undoubtedly know them.

Yes, we all know the advantages of requiring unique atom:id values,
writing less ambiguous documentation, etc. However, I wonder why advances
like the following don't get more recognition (note: this is not a complete
list.)
1. Explicit support for xml:lang rather than the silly language/
tag of RSS V2.0.


While your effort to create a concise list is very much appreciated, I 
would recommend avoiding terms like silly.



2. Explicit support, in the core, for digital signatures and
encryption.
3. Atom Entry documents. Thus, support for the protocol as well as
for push delivery of Atom feeds via Atom over XMPP and other such protocols.
(i.e. Atom is designed to enable a push future rather than only working in
the legacy pull-only world of RSS)
4. Atom:source elements which provide robust support, in the core,
for attribution on entries that have been copied from one feed to another
and for preservation of important feed metadata in copied entries. Atom's
source element makes it a superior format for delivering search results, for
constructing feeds which aggregate entries from multiple sources, and for
push applications.
5. Support for XML content types rather than being limited to RSS's
HTML content type.


It isn't even clear what RSS's content type is.  Particularly for title. 
 Even for RSS 1.0.


	6. Explicit support for remote content. 


We all worked hard in getting these new capabilities and others like
them into Atom and properly defined. Why aren't these things given more
press and attention? They are significant improvements over RSS that will
have profound impact on our ability to build better applications for our
users.


Add atom:updated solves exactly this problem:

http://www.25hoursaday.com/weblog/CommentView.aspx?guid=4c8d83e9-bc7e-432d-b5b2-07965bd959ad

Add multiple enclosures.

http://weblog.burningbird.net/archives/2005/05/03/feeds-fixes/

Add relative URIs:

http://intertwingly.net/slides/2003/xmlconf/34.html

Add clear distinction between summary and content:

http://www.imc.org/atom-syntax/mail-archive/msg15208.html
http://www.imc.org/atom-syntax/mail-archive/msg15266.html

- Sam Ruby



Re: Consensus call on last raft of issues

2005-05-19 Thread Sam Ruby
Tim Bray wrote:
On May 18, 2005, at 6:19 PM, Sam Ruby wrote:
Isn't that redundant?  From PaceOptionalSummary:
Yup.  Think we got that covered. -Tim
Off list, Robert pointed out to me that that the spec text I cited 
didn't cover empty summaries.  He's right.

- Sam Ruby


Re: Compulsory feed ID?

2005-05-19 Thread Sam Ruby
Tim Bray wrote:
On May 18, 2005, at 9:11 AM, Sam Ruby wrote:
There seemed to be consensus that feeds needed something to identify
them.  What there wasn't consensus on is which element should be
that identifier.  The solution selected was to make none of the
identifiers required - something I don't think has much support, and
furthermore creates problems with the ability to cite a source.
Paul and I talked this over, and while we're not sure (the email trail 
was confusing) Sam may be right; so let's find out.  Note that it seems 
pretty clear that the cost of requiring atom:id is nearly zero, since 
anyone who's generating Atom has to have an ID generator around for 
entries.  So, let's find out if Sam is right:
Permit me to provide some more background.  I *think* that there is some 
desire that if the SAME entry appears in multiple places (say, 
TheServerSide, Java.net, Artima, etc.) that it not appear multiple 
times.  This specific example was called out here:

  http://www.tbray.org/ongoing/When/200x/2005/04/03/Atom-Now#p-1
I appologize for referencing something outside of the mailing list, and 
if the item I cited does not represent the consensus of the working 
group, then the following text should be removed from PaceDuplicateIDs:

  If multiple atom:entry elements with the same atom:id value appear in
  an Atom Feed document, they represent the same entry
 - - -
If, however, this above is what we desire (and I certainly support it), 
let's see what Bob's objection was:

  http://www.imc.org/atom-syntax/mail-archive/msg14470.html
In that, he said:
  The problem is, once again, that prohibiting duplicate ids provides an
  easy to use attack vector for those wishing to effectively erase
  entries written by another author.
Now, lets take a look again at that text from PaceDuplicateIDs:
  If multiple atom:entry elements with the same atom:id value appear in
  an Atom Feed document, they represent the same entry.
It seems to me that this does not solve the problem that Bob described. 
 More specifically, if pubsub were to republish data from 
TheServerSide, Artima, or other places, then the erasure that Bob 
fears would come to pass.

What's most puzzling is that it appears that PaceDuplicate IDs was 
specifically written in response to Bob's concerns:

  http://www.imc.org/atom-syntax/mail-archive/msg14731.html
What is missing in all this is the following, again from Bob's original 
statement of the problem:

  Graham Park has proposed that we loosen the existing language to
  permit duplicate ids in the case where the entries have atom:source
  elements which identify different URIs in self links. I support
  this compromise and believe it should be supported by the WG and
  incorporated into the Atom Draft.
This proposal seemed to have enjoyed some support, yet it did not seem 
to have made it into the current draft, despite being crucial to the 
solving the issue that PaceDuplicateIDs was designed to address. 
However, for it to work, the re-aggregator would need to have access to 
a self link, which is not required by the current draft.

What should we do?  One way to solve this is to require id *and* 
update Graham's original proposal accordingly, *and* incorporate it into 
the next (and presumably final draft).

 - - -
That's what I meant by There is a danger of looking at changes in 
isolation.:

  http://www.imc.org/atom-syntax/mail-archive/msg15292.html
Of course, breaking any link in my complicated chain of logic above 
would cause the whole argument to collapse, which would be fine with me.

Does anybody see something that I am missing?
- Sam Ruby


Re: Consensus call on last raft of issues

2005-05-18 Thread Sam Ruby
Sam Ruby wrote:
Tim Bray wrote:
On behalf of Paul and myself.
Atom issues list: http://www.intertwingly.net/wiki/pie/AtomPubIssuesList
The volume of correspondence was unfortunately high for an IETF Last 
Call that came after a Working Group Last call.  It is quite possible, 
as always, that the co-chairs have mis-read the consensus of the group 
on one or more issues; in which case please push back.

We can work on this as long as is needed, and given the passion (and, 
in some cases, intransigence) we have seen so far, we do not expect to 
reach unanimity. When you respond to any of these readings of 
consensus, please do so with the intention of helping the chairs 
figure out whether or not we have determined consensus, not just to 
state an opinion one way or another. Thanks!
There is a danger of looking at changes in isolation.  I will point out 
two instances that jump out at me.  There may be more.


PaceAllowDuplicateIDs
We see a bunch of +1's with an unambiguous -1 only from Duerst.  Sayre 
was negative (2005/05/05 6:41 AM) but didn't record a -1.  Parks has 
been mostly against, but a close reading of his posts make it clear 
that his issue is in large part with atom:updated, he remains 
convinced that readers desire notification of every change however 
minor and are unwilling to trust publishers' opinions as expressed in 
atom:updated.  He could live with this Pace if we re-introduced 
atom:modified or inserted wording in the spec emphasizing that if 
multiple entries with the same atom:id appear in a feed, software must 
treat them as XXX of the same entry; there was lively debate as to 
whether XXX was versions, instantiations, or representations.

Conclusion: The Pace is accepted.  The editors are directed to modify 
the phrase which starts If multiple atom:entry elements... as follows:

If multiple atom:entry elements with the same atom:id value appear in 
an Atom Feed document, they describe the same entry and software MUST 
treat them as such.
IIRC, much of this started due to an objection by Bob Wyman that 
treating atom:entries from different sources with the same atom:id as 
the same entry would cause problems for PubSub.  What ever happened to 
that objection?

Also, it seemed to me that much of the discussion centered around 
distinguishing between multiple versions.  Reintroducing modified was 
rejected, and atom:version never made it into a pace, but should there 
be some hint (perhaps non-normative) that software should look to 
atom:updated to resolve collisions?

=
PaceOptionalFeedLink
Lots of +1's, moderate objections from Ruby, accepted.
http://www.imc.org/atom-syntax/mail-archive/msg14896.html
If feed link becomes optional, there is nothing to anchor atom:source 
elements, which relates back to Bob's objection above.

=
I guess I wrote this too quickly last night, in any case, it wasn't 
clear to Paul, so it might not be clear to others.  Off list, I offered 
the following, and Paul suggested that I post it to the list:

There seemed to be consensus that feeds needed something to identify
them.  What there wasn't consensus on is which element should be
that identifier.  The solution selected was to make none of the
identifiers required - something I don't think has much support, and
furthermore creates problems with the ability to cite a source.
Done!
- Sam Ruby


Re: Consensus call on last raft of issues

2005-05-18 Thread Sam Ruby
Robert Sayre wrote:
I broadly agree with the chairs' opinions. 


Tim Bray wrote:
PaceTextShouldBeProvided
+1 from Ruby, explicit -1's from Sayre and de hÓra.  However, taking 
this and PaceOptionalSummary together, it seems clear that the WG 
generally believes the following:

- Title-only feeds are OK for data where that's really all you have.
- Failing to provide summaries when they could potentially exist is 
regrettable and should be discouraged.
- There are certain classes of software which will not be able to make 
use of content-light feeds, for example full-text indexers.
- It is not acceptable for software to fail (note fail, as opposed to 
not make full use of) just because the summary is missing.

Missed one:
- There are many applications and users that *don't want* summaries.
Some examples include Firefox, Cellphones, Tivos, and whoever is
subscribing to JamesT's title-only feed.
This makes the second bullet point false. It is not regrettable to
provide applications with exactly what they need. However, I agree
that some education is in order.

There is lack of consensus in the WG as to whether RFC2119 SHOULD is 
an appropriate level of language to use in encouraging the provision of 
summaries.

Conclusion: This Pace is rejected.  However, the editors are directed to 
include the following text in 4.2.13:

Experience teaches that feeds which contain textual content are in 
general more useful than those which do not.  

This statement seems overbroad to me, and doesn't directly speak to
the data format.

There are certain classes 
of application, for example full-text indexers, which will be unable to 
make effective use of entries which do not contain text in either 
atom:summary or atom:content.  

Walter mentioned that he wouldn't index them, but just skip through
them to the resources they're linking to. This is a title-only feed's
purpose in life, so it's probably not a good example. I think it would
be more productive to explain why one might want to omit a summary
(see below).

Feed producers should be aware of these 
issues and are encouraged to include a meaningful atom:summary in 
entries lacking atom:content wherever possible.  

See above.

However, the absence of 
atom:summary is not an error and software MUST NOT fail to function 
correctly as a consequence of such an absence.

We don't use the term 'software' in the draft. We discuss Atom
Processors. If we were to define Atom Processors in opposition to an
'application', as in PaceDefineAtomProcessor, we could say a lot about
applications. Note that one major goal of  PaceDefineAtomProcessor is
to avoid making normative requirements on applications.
-
Some applications may choose to require a minimum amount of inline
text or (X)HTML data to function reliably and predictably. For that
reason, atom:entry elements are advised to contain a non-empty
atom:summary element when the entry contains no atom:content element.
The atom:summary element can be omitted if the Atom entry is generated
for an application with known requirements that make the inclusion of
an atom:summary element impractical (such as limited bandwidth).
However, when some general-purpose applications encounter such
entries, those entries might be ignored.
Regardless of how an associated application will handle entries with
no atom:summary element, all Atom Processors MUST NOT fail to process
Atom entries simply because they contain no atom:summary or
atom:content element.

Sam Ruby wrote:
Much of the discussion of this pace centered around the proposed changes 
to section 4.1.2.  However, there is more to this pace.
Sam, do you think any of your concerns could be incorporated into the
text above? If so, please make suggestions. If not, could you be more
specific about the parts of the Pace you feel were overlooked?
A concrete example of my concern is that feeds with atom:entries 
containing atom:title/ will have those entries omitted by Firefox's 
livebookmark support.

The proposed changes to sections 3.1.1.1, 3.1.1.2, and 3.1.1.3, apply to 
all text constructs, not simply atom:summary.

All that needs to be done is to expand whatever wording we come up with 
to include title and content.

- Sam Ruby


Re: Consensus call on last raft of issues

2005-05-18 Thread Sam Ruby
Robert Sayre wrote:
How about this:
Some applications may choose to require a minimum amount of inline
text or (X)HTML data to function reliably and predictably. For that
reason, atom:entry elements are advised to contain a non-empty
atom:title element, a non-empty atom:summary element when the entry
contains no atom:content element, and a non-empty atom:content element
when that element is present.
That works.  Thanks!
- Sam Ruby


Re: Consensus call on last raft of issues

2005-05-17 Thread Sam Ruby
Tim Bray wrote:
On behalf of Paul and myself.
Atom issues list: http://www.intertwingly.net/wiki/pie/AtomPubIssuesList
The volume of correspondence was unfortunately high for an IETF Last 
Call that came after a Working Group Last call.  It is quite possible, 
as always, that the co-chairs have mis-read the consensus of the group 
on one or more issues; in which case please push back.

We can work on this as long as is needed, and given the passion (and, in 
some cases, intransigence) we have seen so far, we do not expect to 
reach unanimity. When you respond to any of these readings of consensus, 
please do so with the intention of helping the chairs figure out whether 
or not we have determined consensus, not just to state an opinion one 
way or another. Thanks!
There is a danger of looking at changes in isolation.  I will point out 
two instances that jump out at me.  There may be more.


PaceAllowDuplicateIDs
We see a bunch of +1's with an unambiguous -1 only from Duerst.  Sayre 
was negative (2005/05/05 6:41 AM) but didn't record a -1.  Parks has 
been mostly against, but a close reading of his posts make it clear that 
his issue is in large part with atom:updated, he remains convinced that 
readers desire notification of every change however minor and are 
unwilling to trust publishers' opinions as expressed in atom:updated.  
He could live with this Pace if we re-introduced atom:modified or 
inserted wording in the spec emphasizing that if multiple entries with 
the same atom:id appear in a feed, software must treat them as XXX of 
the same entry; there was lively debate as to whether XXX was 
versions, instantiations, or representations.

Conclusion: The Pace is accepted.  The editors are directed to modify 
the phrase which starts If multiple atom:entry elements... as follows:

If multiple atom:entry elements with the same atom:id value appear in 
an Atom Feed document, they describe the same entry and software MUST 
treat them as such.
IIRC, much of this started due to an objection by Bob Wyman that 
treating atom:entries from different sources with the same atom:id as 
the same entry would cause problems for PubSub.  What ever happened to 
that objection?

Also, it seemed to me that much of the discussion centered around 
distinguishing between multiple versions.  Reintroducing modified was 
rejected, and atom:version never made it into a pace, but should there 
be some hint (perhaps non-normative) that software should look to 
atom:updated to resolve collisions?

=
PaceOptionalFeedLink
Lots of +1's, moderate objections from Ruby, accepted.
http://www.imc.org/atom-syntax/mail-archive/msg14896.html
If feed link becomes optional, there is nothing to anchor atom:source 
elements, which relates back to Bob's objection above.

=
Finally, I'm not sure what the next step is, but some determination of 
consensus on extensibility (also referred to as change control) is 
needed.  There does seem to be a lot of voices in support of the 
following statement:

  Only those elements defined in IETF RFCs may use the Atom namespace
- Sam Ruby


Re: Consensus call on last raft of issues

2005-05-17 Thread Sam Ruby
Tim Bray wrote:

PaceTextShouldBeProvided
+1 from Ruby, explicit -1's from Sayre and de hÓra.  However, taking 
this and PaceOptionalSummary together, it seems clear that the WG 
generally believes the following:

- Title-only feeds are OK for data where that's really all you have.
- Failing to provide summaries when they could potentially exist is 
regrettable and should be discouraged.
- There are certain classes of software which will not be able to make 
use of content-light feeds, for example full-text indexers.
- It is not acceptable for software to fail (note fail, as opposed to 
not make full use of) just because the summary is missing.

There is lack of consensus in the WG as to whether RFC2119 SHOULD is 
an appropriate level of language to use in encouraging the provision of 
summaries.

Conclusion: This Pace is rejected.  However, the editors are directed to 
include the following text in 4.2.13:

Experience teaches that feeds which contain textual content are in 
general more useful than those which do not.  There are certain classes 
of application, for example full-text indexers, which will be unable to 
make effective use of entries which do not contain text in either 
atom:summary or atom:content.  Feed producers should be aware of these 
issues and are encouraged to include a meaningful atom:summary in 
entries lacking atom:content wherever possible.  However, the absence of 
atom:summary is not an error and software MUST NOT fail to function 
correctly as a consequence of such an absence.
Much of the discussion of this pace centered around the proposed changes 
to section 4.1.2.  However, there is more to this pace.

- Sam Ruby


Re: extensions -- Atom NS and unprefixed attributes

2005-05-16 Thread Sam Ruby
Tim Bray wrote:
On May 15, 2005, at 9:43 PM, Robert Sayre wrote:
   evilExtension /
Legal? Which part of the spec rules it out?
No part.  Per
http://www.atompub.org/2005/04/18/draft-ietf-atompub-format
-08.html#rfc.section.6.2 it's unknown foreign markup, with clear rules
for how to handle it, right?
Yes, there are clear parsing rules. What's the benefit of allowing 
such markup?
The benefit the Web derived from HTML's 
implicit-but-universally-implemented MustIgnore rule; it introduced 
enough slack into the system that people could experiment without 
breaking things.

Related resource: http://www.webratio.com/images/20050408Bosworth.pps
More generally: ruling things out should be avoided unless (a) you're 
really sure they're harmful and (b) you think you can actually 
successfully enforce it.  -Tim
A concrete example of the implications of such a rule:
http://diveintomark.org/archives/2003/04/13/object_and_internet_explorer
... in particular, follow this link:
http://www.robinlionheart.com/stds/html4/objects.html
The only way that authors of future revisions of the specification can 
be confident that they are adding things that don't break anything is if 
either (1) some names (e.g., the atom namespace) are reserved for such 
things, or (2) all future additions go into new namespaces.

I do believe that schemas and/or the feedvalidator can enforce such a 
rule.  And I don't believe that a requirement that people who wish to 
extend Atom do so in their own namespace is overly burdensome.

- Sam Ruby


Re: PaceAllowDuplicateIdsWithModified

2005-05-16 Thread Sam Ruby
Graham wrote:
I'd like to propose an alternative to atom:modified? I've mentioned  
this a couple of times before over the last two years, but anyway:

The only properties of atom:modified we're interested in are:
1) That different versions have different dates
2) Sorting chronologically puts the versions in the correct order
This is to say, the absolute value of the date is irrelevant. The  only 
thing that matters is whether it is before, after or the same as  other 
dates that have appeared on a particular entry.

Proposal:
atom:version
atom:version is a Date Construct that determines the chronology of  
instances of atom:entry. Each time an atom:entry is modified,  
atom:version MUST be given a chronologically later value than other  
values than have appeared in any atom:entry with the same value for  
atom:id.

The value does not need to correspond to any particular event in an  
entries life-cycle. Suitable values include date of last  modification, 
or the date the atom:entry is generated by an Atom  producer.

Is this plausible?
Potential concerns / observations:
 1) cvs versions are numbered with things like 1.99 and 1.103.  This
makes such versions unsuitable for this purpose.  How do we make
this clear?
 2) in the general case, sorting of unicode is culturally sensitive.
This isn't a concern for RFC 3339 based dates given the constrained
set of characters that that grammar permits.
 3) Perhaps version/modified need not be mandatory except in those
instances where entries with duplicate ids are present in a feed?
 4) No semantics can be inferred by two different entries with two
different ids sharing the same version.
- Sam Ruby


Re: PaceOtherVocabularies

2005-05-16 Thread Sam Ruby
Robert Sayre wrote:
Software written to conform
to this version of the specification will not be able to process such
markup correctly and, in fact, will not be able to distinguish it from
markup error.
Please replace that sentence with something reemphasizing the MustIgnore 
rule.

Stating that nobody else is allowed to use the Atom namespace, coupled 
with a statement that everybody must ignore elements that they don't 
understand paves the way for future IETF spec authors to safely add 
optional elements in a backwards compatible manner.

- Sam Ruby


Re: Fetch Me A Rock

2005-05-13 Thread Sam Ruby
David Nesting wrote:
On Thu, May 12, 2005 at 03:46:21PM -0600, Antone Roundy wrote:
The problem we have, as I pointed out earlier on the thread, is that 
we do not specify whether senders and receivers have the same SHOULD. 
I made one assumption, and Rob pointed out that I had made one 
different than he did.
So because both RFC 2119 and the current Atom draft are not explicit on 
this point, it is open either to varied interpretations, or at least to 
misinterpretations.
It is therefore up to us to clarify:
   A summary SHOULD* be present in an entry.  Implementations MUST be
   capable of processing entries with and without summaries (title-only
   feeds).  This is not intended to suggest that implementations must
   do something useful with title-only entries.
* - The implications are that many processors will ignore or reject
entries that do not have summaries, because the processor may place the
emphasis of its processing on the summary.  The feed as a whole is still
valid, however, and it's expected that processors will handle entries
that DO have summaries in the same feed as entries that do NOT.
Very nice.
- Sam Ruby


Re: On SHOULD

2005-05-12 Thread Sam Ruby
People seem confused about RFC 2119.
If it helps, here is an example.  But, be aware, it is JUST an example 
at this point.  I'd like to be able to discuss it without people 
questioning each other's commercial viability, personal relevance to 
this process, or talking about things caching fire or the like, OK?

I'm also staying away from atom:summary for the the moment as there 
continues to be more heat than light in that particular conversation.

With that in mind, I suggest that the following are roughly equivalent:
atom:title MAY be empty, but be aware that if it is empty, the
recipient MAY chose to ignore the entire entry.
atom:title SHOULD NOT be empty, lest the recipient choses to ignore
the entire entry.
While the latter is slightly stronger, what is being conveyed in each 
case is you are free to do this, but be aware that there are 
implications that you need to consider.  This is not meant as a value 
judgment.  And to illustrate this example, I offer the following for 
Firefox users:

  http://intertwingly.net/stories/2005/05/12/
Even with this example in mind, things are not cut and dry:
We could decide as a group that titles MUST be present and not
empty.  Even knowing that this means that somewhere that somebody
will create a feed either ignoring this requirement.  And it might
even work.  But when things break, it is clear who to blame.
We could decide as a group that titles SHOULD be present and not
empty.  This puts both parties on notice.  If you include it, more
things work.  If you don't, many things will still work.
Furthermore, people who parse feeds are put on notice that from
time to time they will encounter entries with empty titles.
We could decide as a group that titles are completely OPTIONAL.
This is pretty much the reverse of the MUST case above.  If things
break, it is the recipient who is to blame.
I claim that we are free to pick amongst all three of these 
alternatives.  We would also shunt this issue off to a Best Current 
Practices document.

What's worse, there is no magic numbers to guide us in this decision. 
Examples of things you WON'T find: if not including a title affects 
more than 17% of the user base or a if this affects a tool produced by 
a company with a market cap of greater than 6.3 billion dollars.

It comes down to judgment.  And on matters of judgment, reasonable 
people will disagree.

 - - -
So far, we seem to have consensus that atom:id MUST be present in 
atom:entries.  People who intend to consume atom feeds have expressed 
this requirement pretty clearly, and as a group we seem inclined to 
satisfy this requirement.

So far, I don't recall anybody stepping forward and saying that feeds 
without atom:category elements will be less effective.  Now that I have 
said that, I'm sure that somebody could come up with an example, but 
that would only prove my point that this is about judgment.

 - - -
We have RFC 2119.  We have Paul on record saying that if this actually 
is the will of the working group, scenarios such as these are 
appropriate uses of the word SHOULD.  Note: this is not Paul advocating 
any particular outcome, simply saying that that option is open to us.

With all this in mind, my suggestion is that we all calm down for a few 
days, and discussion things other than text elements.  And when we do 
revisit this discussion early next week, lets not start with 
atom:summary, OK?

- Sam Ruby


Re: PaceOptionalSummary

2005-05-10 Thread Sam Ruby
Robert Sayre wrote:
On 5/9/05, Sam Ruby [EMAIL PROTECTED] wrote:
I also feel the need to express deep dismay at the way that author of
PaceOptionalSummary has been pursuing a scorched earth approach whereby
everybody who expresses an opinion to the contrary is viciously attacked
for doing so.  I believe that this has significantly hampered the
ability of the work group to hold a reasonable discourse on the subject.
I believe the secretary significantly hampered discourse on this
subject for *months*, by claiming the issue had consensus and was
closed.
It appears that the scorched earth campaign is destined to continue 
unabated.  It is an interesting theory, now lets explore the facts.

The secretary's job is to schedule the discussion of Paces. 
PaceOptionalSummary was authored on 2005/04/30, and scheduled on 2005/05/05.

PaceOptionalSummary was preceded by PaceCoConstraintsAreBad, which was
authored on 2005/04/06.  It, too, was scheduled in the very next round
of paces.
I agree with Robert; it conflicts with PaceOptionalSummary and I doubt
it would exist if PaceOptionalSummary had not make the cut. 
-1 as well. Doesn't solve a technical problem. It's just gamesmanship.
Alternate theory.  After months of foreshadowing, PaceOptionalSummary
was exquisitely timed to coincide with last call.  Along with a
diversionary burst of fire concerning alleged process issues.
Here's where SHOULD comes in. We're lucky that we have an example of
what happens when a SHOULD is violated. I'm sure most of you saw the
nasty arguments, accusations, and all-around busted software that
happen this week with Google Web Accelerator and Ruby On Rails.[0]
Ugly, right? This WG should be proud that we've kept the SHOULDs to a
minimum.
Interesting analogy, let's see how it pans out.
The W3C could have made idempotency a MUST, which effectively would have
prevented useful things like hit counters.
Or they could have made idempotency a MAY, slamming the door shut not
only things like Google's WebAccelerator, but also on all web crawlers.
Instead, they decided to make idempotency a SHOULD, opening the door for
web crawlers by putting servers on notice that in the event of a
conflict, the onus is on them.
 - - -
Back to Atom.
If a entry in a feed does not include a title, and Firefox's Live
Bookmark support choses not to display it, who is the onus on?
If an entry in a feed contains neither a textual content nor a summary,
and Walter's search engine choses not to index it, who is the onus on?
Simply put, PaceOptionalSummary is incomplete.
Also, I'm having trouble reconciling your road lying with the
assertion that the two proposals are compatible. How can they be if
their outcomes are so different?
In my note yesterday morning, I made it abundantly clear what I objected 
to.  It wasn't the text between the ==Proposal== and ==Impacts== markers.

 - - -
The W3C got it right.  And so should we.
Answer the two questions above.  Without hysterics like burst into
fire.  What we actually are talking about here is aggregators that drop
information on the floor.
Should we warn producers about this?
- Sam Ruby


Re: Atom 1.0?

2005-05-10 Thread Sam Ruby
Walter Underwood wrote:
I'd also be happy with just Atom and saying RFC  Atom when
pressed for a version.
+1
- Sam Ruby


Re: PaceOptionalSummary

2005-05-09 Thread Sam Ruby
Antone Roundy wrote:
+1.
...oh, and the wording I just suggested for part of 
PaceTextShouldBeProvided would depend on this also being accepted.
With deep regret, I'm going to express my -1 on PaceOptionalSummary.
Not because I object to the text expressed in the proposal section.
In fact, I clearly do not as I lifted large sections of it to be placed 
into PaceTextShouldBeProvided.

No, it is because the author of PaceOptionalSummary has made it clear
that he interprets the two paces to be incompatible, so each and every
+1 for PaceOptionalSummary is a vote against
PaceTextShouldNotBeProvided.  Despite wording that accompanied several
of these +1's, like the wording describe above.
I also feel the need to express deep dismay at the way that author of
PaceOptionalSummary has been pursuing a scorched earth approach whereby
everybody who expresses an opinion to the contrary is viciously attacked
for doing so.  I believe that this has significantly hampered the 
ability of the work group to hold a reasonable discourse on the subject.

Despite this, I have attempted to see if there was some common ground to
be found.  I drafted up a Pace, and offered a few suggestions.  It has
since become clear to me that PaceOptionalSummary is being pursued in a 
winner take all manner.

As such, I see no other path than to offer my -1 on the Pace.  Face
down, arms and legs outstretched, in the middle of the road.
One thing I would like those who advocate PaceOptionalSummary to the
exclusion of all other Paces on the subject to consider... what happens
if the chairs determine that consensus can't be found on either of these
paces?  Look at the current wording of draft-08.  Is that what you
really want?
We can do better.
- Sam Ruby


Re: PaceOptionalFeedLink

2005-05-06 Thread Sam Ruby
Graham wrote:
On 6 May 2005, at 3:50 am, Sam Ruby wrote:
FYI: we have an instance proof of this requiring an existing tool  to 
do additional work:

  http://www.imc.org/atom-syntax/mail-archive/msg13983.html
Tools will have to be updated to work with Atom? Scandalous.
+1 to the Pace
This Pace is not one that I plan to lie down in the road over.  However, 
it continues to puzzle the bejeebers out of me.

The channel link element is required in every version of RSS from 0.91 
to 1.0 to 2.0.  And as a co-author of the feedvalidator, I have seen a 
lot of broken feeds where people have either inadvertently or 
deliberately ignored the specification, but I don't recall ever seeing 
one where this element was not present.

My concern is not that tools will need to be updated.  My concern is 
that tools won't know that they need to update.  How will they know that 
they need to update to handle a set of feeds that nobody is currently 
providing?

Something that WOULD attract my attention is somebody saying here is a 
set of feeds that I would like to provide that I can't provide in a 
valid way according to any of the available RSS specifications.

- Sam Ruby


Re: PaceTextShouldBeProvided vs PaceOptionalSummary

2005-05-06 Thread Sam Ruby
Bill de hÓra wrote:
3. It's the kind of spec text we have rejected in the past as 
impletation specific and/or best current practice guidance:

 those that follow these suggestions will find that their feeds are 
useful to a wider audience than they would be otherwise.
Um, that text is not part of the proposal.  It is part of the rationale.
- Sam Ruby


Re: FeedId

2005-05-06 Thread Sam Ruby
Bill de hÓra wrote:
PaceFeedIdOrAlternate, withdrawn, no comment
PaceFeedIdOrSelf  0
PaceOptionalFeedLink +1
I agree with the rationale; no point making people things they can't do. 
I'm assuming that if PaceOptionalFeedLink goes through feed:id is a MUST.
On what do you base that assumption?
- Sam Ruby


Re: FeedId

2005-05-06 Thread Sam Ruby
Graham wrote:
On 6 May 2005, at 4:28 pm, Bill de hÓra wrote:
That there is consensus we'll want to identify a feed, even if we  
can't provide a link.
I'd +1 an ordinary make feed:id required Pace.
I'd +1 any Pace that has a chance of achieving consensus that makes at 
least one element that can be used as a feed identifier mandatory.

At the moment, alternate link is the element of record.
-1 to PaceOptionalFeedLink if it to be accepted in isolation or to be 
portrayed as inconsistent with any other feed id related paces (hey, I 
might be dumb, but I learn quick)

+1 to any Pace that moves this to responsibility to a more appropriate home.
- Sam Ruby


Re: Selfish Feeds...

2005-05-06 Thread Sam Ruby
Bob Wyman wrote:
I've got another example of a selfish feed which is producing dynamic
content which will cause many duplicate entries to float around the
blogosphere. The feed in question here is an RSS feed. Nonetheless, I think
we must expect people will do the same stupid tricks with Atom feeds. Check
out:
http://www.b-eye-network.com/xml/articles.php
What you'll get is a feed with entries that look something like the one at
the bottom of this page. The interesting thing to note is that the item has
a link element with the url:
  linkhttp://www.b-eye-network.com/view/index.php?
   cid=836fc=0frss=1ua=Mozilla/4.0 (compatible; 
MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; Alexa Toolbar)/link

What's happened here is that the site has appended my User Agent to the URL
in the link. I assume that this is to allow some kind of tracking. However,
the impact is that the contents of the feed depend on what tool you use to
read the feed. If you access the feed, you will undoubtedly get different
content then I did... For instance, if PubSub's crawler had read the feed,
the value of the ua attribute in the URL would have been different and the
URL would have read:
   linkhttp://www.b-eye-network.com/view/index.php?
cid=836amp;fc=0amp;frss=1amp;ua=PubSub.com RSS reader - 
http://www.pubsub.com//link

If this feed is read by more than one synthetic feed generator or if items
from the feed are copied from this feed to another, it is inevitable that
we'll have multiple copies of the item floating around and we'll have very
little means for determining which one is authoritative -- essentially they
all are. It would be handy to have a dynamic content flag that allows us
to ignore this stuff...
It seems to me that instead of adding a dynamic content flag, having a 
separate id element (or in RSS 2.0's case, utilizing the guid element) 
would be more to the point.

- Sam Ruby


Re: PaceOriginalAttribute

2005-05-06 Thread Sam Ruby
Tim Bray wrote:
+1
I'm not 100% convinced it solves the problems Rob says it does, but it 
seems cheap, lightweight, and unlikely to cause any harm. -Tim
I'm growing increasingly comfortable with the concept of allowing 
redistributors to assign new ids as long as they track the original 
(i.e.: not immediate predecessor!) entry.

That being said, I have two things I want to think more about w.r.t. how 
this Pace is currently worded.  (Note: the first is actually only a nit 
concerning the current draft, not the Pace itself):

1) MAY be preserved
   I would prefer if this were recast not so much as an RFC 2119
   interoperability statement, but rather as a definitional one.
   original attributes in atom:source elements are used to
   indicate...  Something along those lines.
2) Atom feeds MUST NOT contain duplicate atom:id values
   How did that get in there?  Depending on how you read it, this Pace
   is incompatible with PaceAllowDuplicateIDs, implying that Tim's
   +1 above can be construed as voting against a Pace he authored!
Whether or not the work group comes to consensus about allowing multiple 
entries to share the same ID in a feed, it still is true that entries 
may change over time.  Perhaps atom:source elements could also define an 
@updated attribute.  As atom:updated is a required element for 
atom:entry, it would not be an unreasonable burden to require @updated 
attributes on atom:source elements.

- Sam Ruby


AtomPubIssuesList for 2005/05/05

2005-05-05 Thread Sam Ruby
*** REMINDER **
** Use more specific subject lines when responding to this note! **
*** REMINDER **
First the meat... here's the new atom pub issues list, conveniently 
sorted into categories:

  EntryId:
http://intertwingly.net/wiki/pie/PaceAllowDuplicateIDs
http://intertwingly.net/wiki/pie/PaceDuplicateIDWithSource2
http://intertwingly.net/wiki/pie/PaceDuplicateIDWithSource
http://intertwingly.net/wiki/pie/PaceExplainDuplicateIds
  FeedId:
http://intertwingly.net/wiki/pie/PaceFeedIdOrAlternate
http://intertwingly.net/wiki/pie/PaceFeedIdOrSelf
http://intertwingly.net/wiki/pie/PaceOptionalFeedLink
  Provenance:
http://intertwingly.net/wiki/pie/PaceOriginalAttribute
http://intertwingly.net/wiki/pie/PaceSourceRecs
  Status:
http://intertwingly.net/wiki/pie/PaceEntryState
http://intertwingly.net/wiki/pie/PacePubControl
http://intertwingly.net/wiki/pie/PacePubStatusResource
  Text:
http://intertwingly.net/wiki/pie/PaceBriefExample
http://intertwingly.net/wiki/pie/PaceCoConstraintsAreBad
http://intertwingly.net/wiki/pie/PaceOptionalSummary
http://intertwingly.net/wiki/pie/PaceRecommendPlainTextContent
http://intertwingly.net/wiki/pie/PaceTextShouldBeProvided
  Recommended for Closure:
http://intertwingly.net/wiki/pie/PaceXhtmlDivSuggestedOnly
http://intertwingly.net/wiki/pie/PaceXmlContentWrapper
Now for some administrivia.  No progress was made on the last published 
issued list[1], so I've gone ahead and marked those issues that were 
recommended for closure, closed; and those currently under discussion 
were moved back to Needing to Revisit.

Next, I'd like to remind everybody that last call for the Atom Format 
went out.  Operationally, what this means is that the secretary and 
co-chairs are going to be increasingly reluctant to revisit things 
simply because somebody wants to bring them up again.  What that means 
is that in order to successfully bring up an issue, you need to do a 
little homework.  Demonstrate that you have revisited the previous 
discussion, and that you either have something new to add, or can point 
out some evidence that the previous consensus call was made in error.

Tim has taken the opportunity to lead by example on this one with 
PaceAllowDuplicateIDs.  The secretary and co-chairs all are in agreement 
that the XhtmlDiv related paces don't meet this criteria.  If anyone 
disagrees, what we would like to ask is that you follow Tim's lead.

Because we are in last call, I've scheduled everything related to the 
Format document.  As one of the status paces touches on the format, I've 
scheduled all three.  All we need to resolve now is the extent to which 
this is going to affect the format document.

I believe that PaceBriefExample is truly editorial, meaning that the 
editors can act on this at their discretion.

- Sam Ruby
[1] http://www.imc.org/atom-syntax/mail-archive/msg13691.html


Re: AtomPubIssuesList for 2005/05/05

2005-05-05 Thread Sam Ruby
Walter Underwood wrote:
--On May 5, 2005 7:17:00 AM -0400 Sam Ruby [EMAIL PROTECTED] wrote:
Demonstrate that you have revisited the previous discussion, and that you either
have something new to add, or can point out some evidence that the previous
consensus call was made in error.
PaceCaching was not discussed and rejected based on false information.
It was rejected because it was HTTP-specific (it is not), and because
it was non-core (similar features are common in other RSS specs).
Actually, it never has been rejected.  I had miscategorized it as 
protocol.  I've fixing that now, and scheduled it for this cycle.

Sorry for the confusion.
- Sam Ruby


Re: PaceTextShouldBeProvided

2005-05-05 Thread Sam Ruby
Robert Sayre wrote:
On 5/5/05, Antone Roundy [EMAIL PROTECTED] wrote:
+1 except for one thing: In section 4.1.2, I'd suggest something along
these lines:
atom:entry elements which do not contain an atom:content element, or
whose atom:content element's type attribute indicates a MIME media
type, SHOULD contain an atom:summary element.
This Pace is incompatible with PaceOptionalSummary and incomplete. -1.
Something a little less curt would be appreciated.
The stated abstract of PaceOptionalSummary (i.e., removing the 
requirement for atom:summary) is met.  In your mind, this equates to 
completely optional.  That has yet to be conclusively established.

What concerns me more, however, is that interoperability issues that 
PaceOptionalSummary not only creates, but also uncovered during its 
discussion.

Unless there is some plan for addressing these interoperability issues 
(and by that, I mean something more constructive than That's fine, but 
we're not here to tailor the format to your app.), then perhaps BOTH 
paces are incomplete.

There are a number of ways to finesse the identification of the issue 
into the spec.  For example, take a look at how Tim worded 
PaceAllowDuplicateIDs.  Producers are put on effectively put on notice 
that if they include multiple entries with the same ID, that some or all 
of them may be ignored.

How should we convey a similar sentiment about the reality that entries 
without a readily available textual representation may suffer the same fate?

- Sam Ruby


Re: PaceOptionalFeedLink

2005-05-05 Thread Sam Ruby
Tim Bray wrote:
+1
There are people who want to publish feeds without rel=alternate 
links.  I'm against telling people they can't do something they want to 
do without strong reasons, as in loss of interoperability.  I don't see 
the reasons here as strong enough.  -Tim
FYI: we have an instance proof of this requiring an existing tool to do 
additional work:

  http://www.imc.org/atom-syntax/mail-archive/msg13983.html
- Sam Ruby


Re: PaceFeedIdOrSelf

2005-05-05 Thread Sam Ruby
+1
From prior discussion, people have indicated that they want *something* 
that they can use to track feeds identity, and the consensus seemed to 
be that id and/or self was more appropriate than link.

- Sam Ruby


Re: PaceExplainDuplicateIds

2005-05-01 Thread Sam Ruby
John Panzer wrote:
Eric Scheid wrote:
On 2/5/05 1:51 AM, A. Pagaltzis [EMAIL PROTECTED] wrote:
I would +1 allowing identical IDs if it was required that the
entries sharing an ID had different sources.
perhaps we need to explain the concept of 'entries' (as resources), as
distinct from entrys (as representations), and explain that 'entries' must
have unique IDs, and that the atom:id element of any atom:entry ties it
back to the 'entry' resource. It would then follow that multiple entry
representations which happen to have the same atom:id value are just
different representations of the source 'entry', and possibly even different
instantiations in time.
e.
+1.
To me, this sounds very much like the following Pace:
  http://www.intertwingly.net/wiki/pie/PaceRepeatIdInDocument
If the current proposal is different, how so?
If not, have people reviewed the discussion that occurred when that 
particular proposal was brought before the working group?

- Sam Ruby



Re: PaceTextShouldBeProvided

2005-04-30 Thread Sam Ruby
Robert Sayre wrote:
On 4/29/05, Sam Ruby [EMAIL PROTECTED] wrote:
== Abstract ==
Encourage interoperability and accessibility by suggesting that key
textual constructs be both present and non-empty.
I'd prefer that a bit more of the rationale made it into the text.
Explain why we are saying SHOULD.
Suggestions?  Is this something that the editor can handle?
=== section 4.1.2 ===
Add:
  atom:entry elements SHOULD contain an atom:summary element if the
atom:content in the form of atomInlineOtherContent.

This section needs to be reworked. We can't make normative reference to the RNG.
Suggestions?  Is this something that the editor can handle?
== Notes ==
In the event that PaceOptionalSummary is adopted, the words is either
not present or would need to be added to the proposed addition to
section 4.1.2.
-1 to this.
If PaceOptionalSummary is adopted, the summary will be a MAY, not a
SHOULD. Please put your proposals in the section marked Proposal.
At the moment, the proposal is based on the existing 
draft-ietf-atompub-format-08.

PaceOptionalSummary does not introduce a MAY, it removes a crucial MUST 
-- one that, if removed, would exasperate the problem that 
PaceTextShouldBeProvided is intended to address.

- Sam Ruby


Re: PaceExplainDuplicateIds

2005-04-30 Thread Sam Ruby
Robert Sayre wrote:
On 4/30/05, Antone Roundy [EMAIL PROTECTED] wrote:
On Saturday, April 30, 2005, at 02:02  PM, Robert Sayre wrote:
The proposed compromise to allow duplicate IDs in feeds, on the
condition that a source element is present, doesn't address the
problem of quick scripts that probably won't group duplicate IDs.
I don't understand the last part of this sentence--could you explain?
Sure. Take a look at the discussion here:
http://www.intertwingly.net/blog/2005/04/09/Clone-Wars
Say someone writes a quick PHP script that doesn't keep any state and
loops through the entries to display them on a web page. They'll have
different results than a well-written desktop aggregator.
There can be no expectation about interoperability of invalid feeds.  In 
the feed mentioned there, I presume that the spid part of the URI was 
meant to be substituted with some sort of product id.  The ids encoded 
inside the links clearly would do.  Heck, the links themselves are 
better globally unique identifiers than the ones provided as the guids.

One of the clearest requirements that aggregator authors have provided 
to Atom is the wisdom of requiring unique IDs on entries.  There may be 
consensus that unique by source is sufficient.

- Sam Ruby


Re: PaceOptionalSummary

2005-04-28 Thread Sam Ruby
Robert Sayre wrote:
On 4/28/05, Roger B. [EMAIL PROTECTED] wrote:
Do you have an example?
Robert: I'm an example. I also drop title-free feeds (see Scripting
News)... given the nature of the app, a feed without titles or content
is just worthless.
That's fine, but we're not here to tailor the format to your app.
Robert: why did you ask for an example?
- Sam Ruby


Re: Cleanup phase

2005-04-28 Thread Sam Ruby
Graham wrote:
On 28 Apr 2005, at 11:34 am, Bill de hÓra wrote:
I haven't seen any objections to title only feeds which you state 
is my and Sam's and other's position (we object to feeds that could 
have a summary included but don't).
That last objection in parens sounds like some of the positions held 
around dates - that providers ought to do the right thing for some 
definition of the right thing. Given that legacy, I'll claim it's 
clear we're not here to police what people ought do with feeds that 
could have a summary.
Then what are we here to do? Would you support removing all of the other 
requirements from the spec?

And if Robert's assertion elsewhere (Every bit of syndication code 
written since my.netscape.com in 1999 can deal with title-only feed) 
is remotely true , ie there's not large number of codebases that will 
break, then you can add innovation through standards to my list of 
objections to any position that makes summaries non-optional.
First, note that this is mistating Graham's position.  He is not arguing 
that summaries be made non-optional.

Every code base can also cope without dates or ids. We still require them.
This is not a theoretical discussion.  Quoting from RSS 0.92[1]:
 * All sub-elements of item are optional
 * any 0.92 source is also a valid 2.0 source
Is this really where we want to go?
- Sam Ruby
[1] http://backend.userland.com/rss092


Re: PubSub CAN NOT support Atom with existing no duplicate id constraint

2005-04-27 Thread Sam Ruby
Bob Wyman wrote:
I know that nobody seems to like this issue However, I have explained 
on numerous occasions that the existing prohibition against duplicate 
ids in a feed simply cannot be supported by PubSub or any other feed 
aggregator. The problem is, once again, that prohibiting duplicate ids 
provides an easy to use attack vector for those wishing to effectively 
erase entries written by another author. (i.e. by publishing an entry 
with an id identical to one published earlier, one can force the earlier 
entry to be flushed from Atom feeds.)

If synthetic feed generators such as PubSub implement the current 
prohibition against duplicate ids, they will simply become open channels 
for attack. Well soon see anti-abortionists publishing entries with ids 
identical to those of entries whose content they disapprove of. Well 
see ex-boyfriends attack critical entries written by girls whom they 
displeased on Saturday night. Well see skinheads flush from the 
system any entries that might have been written by jews and blacks. This 
is not good and I will not allow the system I build to be used in this 
manner.

Graham Park has proposed that we loosen the existing language to permit 
duplicate ids in the case where the entries have atom:source elements 
which identify different URIs in self links. I support this 
compromise and believe it should be supported by the WG and incorporated 
into the Atom Draft.

I dont believe the issue here is one of taste and I dont see any 
responsible option other then modifying the existing constraint. No one 
has been able to provide any argument which explains why the attack 
vector I describe is **NOT** a problem. If the WG refuses to modify this 
constraint, then it should at least feel compelled to include text in 
the security considerations section that clearly describes the attack 
and lets people know that no atom entry is safe from trivial attacks 
as a result of this constraint. If the WG refuses to modify this 
constraint, then they should expect that responsible feed aggregators 
and generators of synthetic feeds will simply be forced to deny support 
for Atom as specified.

If anyone has a clear argument explaining why the attack is not possible 
or not a problem, they should make it. Alternatively, if you have a 
better method then that proposed by Graham for defending against the 
attack, please describe it. Otherwise, Grahams compromise should be 
accepted and the specification revised.
It would help if a Pace could be written.
IIRC, the objections to PaceRepeatIdInDocument centered around the 
request to support multiple versions of a resource - a concern that does 
not apply to Graham's proposed compromise.

- Sam Ruby


Re: PaceOptionalSummary

2005-04-26 Thread Sam Ruby
Tim Bray wrote:
I was driving to the airport with Lauren, whom some of you will know, 
she's technical but hasn't been following Atom.  I explained the debate 
we are having over the required-ness of atom:summary, and she said 
Don't you have anything better to talk about?  I suspect she has a 
point.  Suppose we leave it the way it is... people who don't want to 
include a summary can use summary/, so it's just silly to say that 
there's an example of a current feed that would be ruled out.  For that 
matter, Graham's body-only feeds can be done with title/.  I can see 
Sam's arguments, but on the other hand, the errors that might get caught 
by requiring summary are probably boring corner-cases anyhow.

Which is to say, it doesn't matter very much.
Which is to say, Paul  I are gonna watch a little more debate and then 
we'll call rough consensus one way or the other, at which point I at 
least will become crushingly rude to anyone who wants to invest more 
time in this.  -Tim
The feedvalidator catches silly, boring corner-cases every day.
I hesitate to bring it up again as it has proven to incite adhominen 
attacks from within this workgroup, but we have an example of a 
respected journalist who has published a book in which he specifically 
called out this.

And we have the experience from RSS 2.0 (motto: everything is optional! 
and extensible!) whereby Don Box introduced xhtml:body into his feed in 
place of description, something that most aggregators support today.

On the other hand, what we have is arguments that entries with empty 
summaries is not possible with the current format - something that is 
blatantly incorrect.

We also had a very complex and delicate negotiation a while back that 
seems to have been forgotten.  It is quite possible to produce feeds 
with content that is base64 encoded binary or out of band.  What is 
desired in such circumstances is precisely akin to specifications that 
require alt attributes for img tags.  It atom's case, it is a summary.

If you want to push through this pace, I suggest that we revisit and 
reopen those discussions.  Schedule be damned.

- Sam Ruby



Re: PaceOptionalSummary

2005-04-26 Thread Sam Ruby
Graham wrote:
This argument has a got a bit sidetracked. My position is:
a) I think title-only feeds should be allowed where there's nothing 
sensible to put in the summary or content elements.
b) Under all other circumstances, a summary of some kind should be 
required when atom-based textual content is absent.

The pace as written newly allows the omission of a summary and content 
on the whim of the publisher. It also allows its omission when the 
content of the entry has been placed in a non-atom container. My first 
problem is that neither of these consequences seem intended. My second 
is that it is the interopability issue. I'm within my rights as a 
consumer to reject title-only feeds as not worth bothering with (before 
you condemn this as an arbitrary decision, bear in mind the current Atom 
spec makes the same judgement). The atom spec would not give publishers 
fair warning of this. This is why I think it makes more sense as a 
SHOULD requirement.
Well stated.  I'd also add that apparently summary SHOULD be non empty 
in all of the cases where it is currently required as well as one new 
case: the case where the content is empty.

- Sam Ruby


Re: PaceOptionalSummary

2005-04-26 Thread Sam Ruby
Robert Sayre wrote:
On 4/26/05, Sam Ruby [EMAIL PROTECTED] wrote:
Graham wrote:
The pace as written newly allows the omission of a summary and content
on the whim of the publisher. 

That's right.

I'm within my rights as a
consumer to reject title-only feeds as not worth bothering with (before
you condemn this as an arbitrary decision, bear in mind the current Atom
spec makes the same judgement). 

It is arbitrary. My point is that the spec does not reflect consensus
in this working group or help interop. You're within your rights to
reject anything, you just want the spec to back you up, and that's
ridiculous.

The atom spec would not give publishers
fair warning of this. This is why I think it makes more sense as a
SHOULD requirement.
Well stated.  I'd also add that apparently summary SHOULD be non empty
in all of the cases where it is currently required as well as one new
case: the case where the content is empty.
Nonsense. Never. There are plenty of people here disagreeing with you.
If you attempt to syndicate a contentless and summaryless entry, there 
will be people who drop it on the floor.  It doesn't matter how many 
people write software that behaves otherwise, it is a reality that some 
will behave this way.

From RFC 2119:
   SHOULD   This word, or the adjective RECOMMENDED, mean that there
   may exist valid reasons in particular circumstances to ignore a
   particular item, but the full implications must be understood and
   carefully weighed before choosing a different course.
I am willing to concede that there are valid reasons in particular 
circumstances to ignore the requirement for a summary.  Are you willing 
to concede that there are implications to such a decision that must be 
understood and carefully weighed before chosing to omit a summary?

- Sam Ruby


Re: PaceOptionalSummary

2005-04-25 Thread Sam Ruby
Tim Bray wrote:
On Apr 25, 2005, at 11:01 AM, Graham wrote:
Can you post some links to examples of feeds you think are difficult 
to express in the current syntax? That would be considerably more 
constructive than whatever the hell that was.
What Rob wants is what he said in 
http://www.imc.org/atom-syntax/mail-archive/msg14157.html

I decided it would help if there was an actual Pace: 
http://www.intertwingly.net/wiki/pie/PaceOptionalSummary
  -1
Steamroll over me and others if you must, but I believe that title only 
feeds are more often that way due to an error of omission than by an 
explicit design choice.  Enough so that it warrants someone explicitly 
saying this summarly intentionally left blank, thus:

  summary/
Given a way to express an intentional omission of a summary, this 
discussion changes from a discussion of use cases that allegedly are not 
supported, to one of whether tools like RNG grammars and feedvalidators 
can assist people who produce feeds in making their intents clear.

- Sam Ruby


Re: Last Call: required summary or content?

2005-04-25 Thread Sam Ruby
Robert Sayre wrote:

* What the specification does currently
In an Atom Entry, the specification currently requires a minimum set of 
elements: title, id, and updated. Typically, there will also be a 
link element. The specification includes a provision that allows its 
omission on the condition that there is a content element. In addition 
to that, the specification requires that either summary or content 
be present.

* What you would like it to do instead
I want to allow the metadata-only feeds allowed by all flavors of RSS, 
and the omission of the content and summary. Such feeds are commonly 
termed title-only feeds, because that is all that is visible to the 
user (the title is usually hyperlinked w/ the link element).
I will again point out that the current format allows for empty summary 
and/or content elements.

I have seen errors that the requirement for the inclusion of such 
elements would have prevented.

I have seen no arguments as to why placing such empty elements would 
impose an unreasonable burden on implementers.

- Sam Ruby


Re: PaceCoConstraintsAreBad

2005-04-07 Thread Sam Ruby
Robert Sayre wrote:
Sam Ruby wrote:
If, instead, it opens the door for multiple changes without explicit 
rationale; at the last minute; overturning carefully formed consensus; 
then it was not.
Uh, so your changes are ok, but mine aren't? We continue the lovely 
pattern of DOSing proposals.
Unfair.  I've withdrawn my proposal.
At this point, small surgical changes to address specific concerns may 
(or may not) be acceptable.  Wholesale changes with little rationale are 
less likely to be so.

- Sam Ruby


Re: PaceCoConstraintsAreBad

2005-04-07 Thread Sam Ruby
Robert Sayre wrote:
Sam Ruby wrote:
Content remains optional.
The pace did not drop the requirement for a link element in the absence 
of content.
OK, I missed that.  What else did I miss at this late date?
As it stands, this Pace declares co-constraints bad, selectively removes 
a few co-constraints, and leaves others, with little rhyme or reason.

Am I misreading the Pace?  The abstract seems clear enough...
While I agree with your recent statement that no one has spoken up in 
favor of the current text, I resonate more with Paul's recent 
statement[1] that:

  It doesn't matter whether or not they are too controversial; the
  spec is frozen for significant technical changes.
  Unless, of course, the WG decides we really do want to open it all up
  again an take another probably four months of deciding what else we
  want to add and change. We can do that by amending our charter. So
  far, I have not heard consensus going towards that, but I could be
  wrong.
I wrote a Pace that inserted seven words and only changed one element, 
feeling that we might be able to come to an agreement on that.  This 
appears to have been a tactical error... 
Strawmen are usually tactical errors.
It was a serious proposal.  And if it results in a clear consensus 
around PaceFeedIdOrSelf, then it was useful.

If, instead, it opens the door for multiple changes without explicit 
rationale; at the last minute; overturning carefully formed consensus; 
then it was not.

My order of preference:
  PaceFeedIdOrAlternate
  PaceFeedIdOrSelf
  Current Text
  PaceCoConstraintsAreBad

no one has spoken up in favor of the current text remains true.
I am willing to go with PaceFeedIdOrSelf.  A number of people have 
expressed support for it.  I don't know if it meets a threshold or not - 
at the moment the bar is pretty high.  And the number of active 
proposals is troublesome.

I've marked PaceIdOrAlternate withdrawn.
I remain -1 on PaceCoConstraintsAreBad.
Robert Sayre
- Sam Ruby


Re: PaceCoConstraintsAreBad

2005-04-07 Thread Sam Ruby
Robert Sayre wrote:
Sam Ruby wrote:
At this point, small surgical changes to address specific concerns may 
(or may not) be acceptable.  Wholesale changes with little rationale 
are less likely to be so.
Well, who really cares anyway. I'll get the draft ready. Nobody propose 
any 'wholesale changes' in the meantime, OK?
I don't know about you, but I do care.
Whether it is for accessibility, or for general usability, I want to 
ensure that every entry has a textual, non-remote component to it.

You have made a number of noises that it is your intent to use last call 
as your opportunity to challenge the working group to revisit this.

Please don't.
If you truly are concerned about co-occurrence constraints, recast the 
grammar so that content and summary are the same element, possibly with 
multipart alternatives.  See if you can come up with a less hideous 
syntax than either 0.3 or -07.  Make this element mandatory, and I'm happy.

If your real goal, however, is to make textual non-remote information 
optional, please don't.

- Sam Ruby


Re: PaceCoConstraintsAreBad

2005-04-06 Thread Sam Ruby
Robert Sayre wrote:
http://www.intertwingly.net/wiki/pie/PaceCoConstraintsAreBad
Abstract

Require atom:id, atom:title, atom:updated, atom:author. That's it.
Status

Open
Rationale

The spec delivers value when it can make an element mandatory.
co-constraints are bad.
Entries without either a summary or content or even a link to where you 
can find the data are worse.

-1
- Sam Ruby
P.S.  If it pleases your sense of aesthetics, merge these three elements 
into one mandatory element, with an attribute to specify whether the 
innerxml represents a summary or a content, and another optional element 
specifying the location.  Oh, and allow multiples of this element as 
there are scenarios in which both summaries and content are provided.



Re: PaceCoConstraintsAreBad

2005-04-06 Thread Sam Ruby
Robert Sayre wrote:
Sam Ruby wrote:
co-constraints are bad.
Entries without either a summary or content or even a link to where 
you can find the data are worse.
Does my Pace allow such a creature?
This pace dropped the requirement for an alternate link.  This pace 
dropped the requirement for a summary when content is not present. 
Content remains optional.

Am I misreading the Pace?  The abstract seems clear enough...
While I agree with your recent statement that no one has spoken up in 
favor of the current text, I resonate more with Paul's recent 
statement[1] that:

  It doesn't matter whether or not they are too controversial; the
  spec is frozen for significant technical changes.
  Unless, of course, the WG decides we really do want to open it all up
  again an take another probably four months of deciding what else we
  want to add and change. We can do that by amending our charter. So
  far, I have not heard consensus going towards that, but I could be
  wrong.
I wrote a Pace that inserted seven words and only changed one element, 
feeling that we might be able to come to an agreement on that.  This 
appears to have been a tactical error as it was immediately followed by 
a pace that changed one word and added twenty one, affecting two 
elements.  Now you introduce a pace that changes the definition of three 
elements.

My order of preference:
  PaceFeedIdOrAlternate
  PaceFeedIdOrSelf
  Current Text
  PaceCoConstraintsAreBad
- Sam Ruby
http://www.imc.org/atom-syntax/mail-archive/msg14049.html


Re: Obs on format-07

2005-04-06 Thread Sam Ruby
An additional observation: neither of the examples in section 1.1 
include the summary element.  Suggestion: change the content in the 
first (minimal) example to summary.

- Sam Ruby


PaceFeedIdOrAlternate

2005-04-04 Thread Sam Ruby
http://www.intertwingly.net/wiki/pie/PaceFeedIdOrAlternate
Background: there seems to be some feeling that *something* should be 
required.  Opinions vary from id should be a MUST to id is at best a MAY.

While there are use cases for feeds without alternate html 
representations, I've been concerned that they are such outliers that 
the would be mostly ignored by the predominant feed producers; with the 
inevitable result that such feeds would be poorly handled and would 
therefore reflect poorly on both the authors of such feeds and the feed 
format itself.  As this issue keeps coming up, this concern is lessening 
for me.

Notes: this pace was written in such a way to minimize the amount of 
change to the existing document.  It does not express a preference 
between the two elements.  Upgrading one or both elements to a SHOULD 
would require a separate Pace.  Upgrading the Self link to a SHOULD or 
MUST would require a separate Pace.

- Sam Ruby


Re: [FeedValidator] atom 0.3 feed with link rel=related considered valid by feedvalidator

2005-02-25 Thread Sam Ruby
patrick chanezon wrote:
I wanted to get your opinion about this, and maybe some rationale about 
why you chose this approach in FeedValidator, which is supposed to 
adhere more strictly to the specs than our parsing library.
First, a statement of direction.  At or shortly after Atom 1.0 goes 
final, the feedvalidator will no longer consider Atom 0.3 feeds as valid.

As to pre-IETF history, the development was quite a bit less formal and 
rigorous, and therefore a number of factors were considered in the Atom 
0.3 support.  In particular, the following two sources were also taken 
as input:

http://intertwingly.net/wiki/pie/LinkTagMeaning
http://www.xml.com/lpt/a/2004/06/16/dive.html
- Sam Ruby


Re: AtomPubIssuesList for 2005/02/22

2005-02-22 Thread Sam Ruby
Ezra Cooper wrote:
I don't object to these being closed, but I'd like to have the chance to
make a new proposal which would be an alternative to PaceEntryQuery.
My proposal will:
  * provide for collections, obeying the slash semantics
  * allow for date-range queries over any (top-level) collection or
sub-collection
  * not provide for index-based ranges, or other kinds of searches.
If I can have this done by the end of the day, could we discuss it in this
round?
Yes.
- Sam Ruby


Re: link rel=link type=????/

2005-02-22 Thread Sam Ruby
Bob Wyman wrote:
However, atom requires that a link element have a mime-type. Given that we
have no idea what the mime-type for the URI is, what mime-type should we
use?
It type attributes are optional in the current draft.
http://www.ietf.org/internet-drafts/draft-ietf-atompub-format-05.txt
4.6.3  The type Attribute
   Link elements MAY have a type attribute, whose value MUST conform to
   the syntax of a MIME media type [RFC2045].
This was changed in Format-03 as a result of the following:
   http://www.intertwingly.net/wiki/pie/PaceLinkAttrDefaults
(Note: there is a typo in abstract, should be make the TYPE attribute 
optional)

- Sam Ruby


Re: PaceRepeatIdInDocument solution

2005-02-20 Thread Sam Ruby
Bob Wyman wrote:
	Given that history shows that publishing repeated ids has never
bothered anyone enough to cause them to complain, we should permit this
benign practice to continue. 
I have exactly the opposite experience.  I have people who have thanked 
me for noticing that they have repeated ids as it indicated an error in 
their software.

- Sam Ruby


Re: TEXT, HTML, and XHTML

2005-02-17 Thread Sam Ruby
Tim Bray wrote:
On Feb 17, 2005, at 10:25 AM, Joe Gregorio wrote:
On Thu, 17 Feb 2005 12:12:49 -0500, Norman Walsh [EMAIL PROTECTED] wrote:
Any chance we could change those attribute values to text, html,
and xhtml?
I originally wrote them that way to make it painfully obvious to the eye 
that THIS IS NOT A MEDIA-TYPE, but I'm not religious about it. -Tim
I PERSONALLY DON'T THINK THAT SHOUTING IS NECESSARY.
- Sam Ruby
P.S.  ;-)


  1   2   >