Re: PaceExplainDuplicateIds

2005-04-30 Thread Robert Sayre

On 4/30/05, Bob Wyman <[EMAIL PROTECTED]> wrote:
> The spec should STRONGLY state that each entry must have a unique
> atom id. The point of the "require source" language is not to remove the
> requirement for uniqueness but rather to provide a more useful way of doing
> cross-feed determination of uniqueness.

OK, that's fine with me. There is no "required source" language,
though. Someone should write a Pace.

This WG has, shall we say, more active management than most. I'm
afraid I can't just write down what I think you mean.

Robert Sayre



RE: PaceExplainDuplicateIds

2005-04-30 Thread Bob Wyman

Robert Sayre wrote:
> compliant processors will still differ from one-off hacks.
Why in the world are we letting "one-off hacks" influence the design
of Atom? That strikes me as rather unwise. We aren't here to make life easy
for script-kiddies. We're here to design a format that allows us to build
useful applications for the people who rely on our systems. The fact that it
might be a little difficult for some children or hackers to build decent
code is not something that should enter into our considerations.
The spec should STRONGLY state that each entry must have a unique
atom id. The point of the "require source" language is not to remove the
requirement for uniqueness but rather to provide a more useful way of doing
cross-feed determination of uniqueness.

bob wyman



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

2005-04-30 Thread Walter Underwood

--On April 30, 2005 3:03:50 PM -0400 Robert Sayre <[EMAIL PROTECTED]> wrote:
>
> "atom:feed elements MUST NOT contain more than one atom:link element
> with a rel attribute value of "alternate" that has the same
> combination of type and hreflang attribute values."

That actually specifies something different, the duplication, without
saying whether atom:link is recommended. I recommend adding this text:

"An atom:feed element SHOULD/MAY contain one such atom:link element."

I'll let other people contribute on whether it is SHOULD or MAY.

wunder
--
Walter Underwood
Principal Architect, Verity



Re: PaceExplainDuplicateIds

2005-04-30 Thread Robert Sayre

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.

Robert Sayre



Re: PaceExplainDuplicateIds

2005-04-30 Thread Antone Roundy
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?
Thanks.


PaceExplainDuplicateIds

2005-04-30 Thread Robert Sayre

Feel free to suggest alternate mealy-mouthed wording. :)

== Abstract ==

Weakens the constraint on duplicate entry ids in feeds to a SHOULD.

== Status ==

Open

== Rationale ==

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. This
means that compliant processors will still differ from one-off hacks.
Rather than legislate the constraint, we should explain the situation,
and give the validator a SHOULD-level requirement so a warning can be
triggered.

== Proposal ==

Remove the bullet point that reads

{{{ atom:feed elements MUST NOT contain atom:entry elements with
identical atom:id values. }}}

Add a paragraph after the list that reads

{{{
Atom Processors use the atom:id element found in Atom entries to identify 
distinct entries. It is RECOMMENDED that each entry in an Atom Feed Document 
have a distinct atom:id value.
}}}

== Impacts ==


== Notes ==



CategoryProposals



Re: PaceXhtmlDivSuggestedOnly

2005-04-30 Thread Antone Roundy
On Saturday, April 30, 2005, at 12:03  PM, Thomas Broyer wrote:
Graham wrote:
The div is not part of the content, and inline content can safely  
appear within a div.
I'm OK with that but I'm still bothered by putting my titles in a 
block-level element: because the div is still part of XHTML (even if 
not part of the content here), which defines it as a block-level 
container!
PaceXmlContentWrapper would enable the use of an inline element in Atom 
elements that aren't supposed to have block content.  And it would 
enable people who declare the namespace elsewhere to omit the container 
element.  And it would keep the status of the top level element in the 
content, if there is one, unambiguous.

Are you considering the following title OK?

   
  Hey this is an entry title!
  Look what the Atom spec allows us to do with it!
   

If not (which I suppose), then the spec should at least be changed to 
introduce inline vs. block content.

And the same distinction should be done for escaped HTML content to 
forbid (well, actually not, I know, because we use a SHOULD and not a 
MUST) titles like this one:


I'd support forbidding block markup in titles and other such places 
where it's not appropriate.

I'm not sure it's so easy. There's another problem with the actual 
spec: it allows any attribute on the XHTML div container without 
defining how they have to be handled.
Should they be discarded along with the div? Should they be somehow 
"inherited" by the content?
I'd support forbidding any attributes other than (a) namespace 
declaration(s) on container elements...in fact, I'm going to add that 
to PaceXmlContentWrapper.

If the spec is changed to forbid any attribute (other than the XHTML 
namespace declaration), then the XHTML div is not really an XHTML div, 
it becomes (and actually it already is, as it is not part of the 
content) a dummy container belonging to the XHTML namespace, whichever 
its name (though it's better if it looks like an existing XHTML 
element).
I disagree with this characterization.  We may have profiled the XHTML 
div element for this particular use, but that doesn't stop it from 
being an XHTML div.

I'm sorry but these kind of "hacks" have nothing to do within a 
standard (IETF or else), especially if they have no mean other than 
just being hacks and if there are clean solutions: Atom is XML using 
XML namespaces, it's enough for usefulness without the need to 
introduce such a dummy container; and people willing to use default 
namespaces only (prefix-free XML names) can still achieve that by 
introducing meaningless "span" or "div" containers, with the 
difference they will be part of the content.
If the author adds a div or span, that's fine.  But if the software ads 
it, it's altering the author's content, and should have a way to so 
indicate so that the change can be undone. 
 



PaceOptionalFeedLink

2005-04-30 Thread Robert Sayre

== Abstract ==

Remove the requirement for a feed-level link element.

== Status ==

Open

== Rationale ==

The requirement makes people jump through hoops for little gain, since
there is a strong incentive to provide the link if you have something.
Unlike entries, feeds are almost always dereferenced from a URI.

== Proposal ==


In section 4.1.1, strike the line that reads

"atom:feed elements MUST contain at least one atom:link element with a
relation of "alternate"."

and replace it with

"atom:feed elements MUST NOT contain more than one atom:link element
with a rel attribute value of "alternate" that has the same
combination of type and hreflang attribute values."


== Impacts ==

== Notes ==




CategoryProposals



Re: PaceXhtmlDivSuggestedOnly

2005-04-30 Thread Thomas Broyer
Graham wrote:
On 30 Apr 2005, at 3:43 pm, Thomas Broyer wrote:
Using a XHTML "div" element is also quite inappropriate in an  
atom:title element as a "div" is meant for block content whereas a  
title is merely expected to be used as inline content (e.g. by  
putting it inside an "h2" or "h3" XHTML element).

The div is not part of the content, and inline content can safely  
appear within a div.
I'm OK with that but I'm still bothered by putting my titles in a 
block-level element: because the div is still part of XHTML (even if not 
part of the content here), which defines it as a block-level container!

Are you considering the following title OK?

   
  Hey this is an entry title!
  Look what the Atom spec allows us to do with it!
   

If not (which I suppose), then the spec should at least be changed to 
introduce inline vs. block content.

And the same distinction should be done for escaped HTML content to 
forbid (well, actually not, I know, because we use a SHOULD and not a 
MUST) titles like this one:


-1.
Next.
I'm not sure it's so easy. There's another problem with the actual spec: 
it allows any attribute on the XHTML div container without defining how 
they have to be handled.
Should they be discarded along with the div? Should they be somehow 
"inherited" by the content?
If the spec is changed to forbid any attribute (other than the XHTML 
namespace declaration), then the XHTML div is not really an XHTML div, 
it becomes (and actually it already is, as it is not part of the 
content) a dummy container belonging to the XHTML namespace, whichever 
its name (though it's better if it looks like an existing XHTML element).

I'm sorry but these kind of "hacks" have nothing to do within a standard 
(IETF or else), especially if they have no mean other than just being 
hacks and if there are clean solutions: Atom is XML using XML 
namespaces, it's enough for usefulness without the need to introduce 
such a dummy container; and people willing to use default namespaces 
only (prefix-free XML names) can still achieve that by introducing 
meaningless "span" or "div" containers, with the difference they will be 
part of the content.

--
Thomas Broyer


Re: PaceTextShouldBeProvided

2005-04-30 Thread Robert Sayre

On 4/30/05, Graham <[EMAIL PROTECTED]> wrote:
> > Obviously, the WG doesn't find that MUST particularly crucial.
> 
> Robert, will you stop banging your drum about this and let the WG get
> a word in edgeways? If your position has such unanimous support it
> will survive without you.

So, I have to be quiet. Is that what you're saying? Let me suggest you
take your own advice.

I wrote six sentences, after a day of no one paying attention to this
pointless, intentionally obfuscated, and otherwise badly written
proposal.

Robert Sayre


On 4/28/05, Tim Bray wrote:
>
> And of course we're going to have to fish some sort of
> consensus out of this horrid summary-required mess.  -Tim

Bill responded
> I can't agree with that observation. Although there are a few strenuous
> objections against title only feeds, on the balance consensus is for
> them. Is there something you're seeing that should make us think the
> current consensus level is inadequate?



Re: PaceTextShouldBeProvided

2005-04-30 Thread Graham

Obviously, the WG doesn't find that MUST particularly crucial.
Robert, will you stop banging your drum about this and let the WG get  
a word in edgeways? If your position has such unanimous support it  
will survive without you.

Thank you.
Graham


Re: PaceXhtmlDivSuggestedOnly

2005-04-30 Thread Graham
On 30 Apr 2005, at 3:43 pm, Thomas Broyer wrote:
Using a XHTML "div" element is also quite inappropriate in an  
atom:title element as a "div" is meant for block content whereas a  
title is merely expected to be used as inline content (e.g. by  
putting it inside an "h2" or "h3" XHTML element).
The div is not part of the content, and inline content can safely  
appear within a div. -1.

Next.
Graham


Re: PaceTextShouldBeProvided

2005-04-30 Thread Robert Sayre

> Suggestions?  Is this something that the editor can handle?

Maybe Mark can. This editor doesn't understand the rationale.
 
> >
> > This section needs to be reworked. We can't make normative reference to the 
> > RNG.
> 
> Suggestions?  Is this something that the editor can handle?

Paces should provide camera-ready text.

> 
> PaceOptionalSummary does not introduce a MAY, it removes a crucial MUST

Obviously, the WG doesn't find that MUST particularly crucial.

Robert Sayre



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

2005-04-30 Thread Robert Sayre

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.

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

> == 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".

Robert Sayre



PaceXhtmlDivSuggestedOnly

2005-04-30 Thread Thomas Broyer

I'm aware that this Pace actually has two purposes: nuke the xhtml:div 
requirement and add distinction between inline and block content. If 
someone wants me to split it into two Paces, I'll do it, but I think 
these two purposes are related to each other and that's why I made a 
single Pace.

http://intertwingly.net/wiki/pie/PaceXhtmlDivSuggestedOnly
== Abstract ==
Make the XHTML div wrapper optional, as it causes more problems than it 
actually solves.

== Status ==
Open
== Rationale ==
The only purpose of the XHTML div wrapper is to have it carry the XHTML 
namespace declaration in case the feed producer doesn't want to use 
prefixed XML names (i.e. always use default namespaces). The required 
wrapper is also expected to prevent feeds using wrong namespaces.

On the other hand, there has been many discussion about which attributes 
are allowed/forbidden on the wrapper and how they should be handled by 
Atom processors, without a clear and clean solution.

Using a XHTML "div" element is also quite inappropriate in an atom:title 
element as a "div" is meant for block content whereas a title is merely 
expected to be used as inline content (e.g. by putting it inside an "h2" 
or "h3" XHTML element). This has no technical impact in the current spec 
as the div is not part of the content but it might disturb 
XHTML-friendly people.

Finally, mandating a "foreign" (outside the Atom namespace) element but 
requiring it not being part of the content and not behaving as it would 
in its originating language (XHTML) is not a clean position: so is this 
element part of Atom or XHTML?

== Proposal ==
Nuke the XHTML div requirement and adds distinction between inline and 
block content to help producers choose the best container for their 
content (div or span).

This means making the following changes/addition to the 
draft-ietf-atompub-format-08 document.

=== section 3.1 ===
Change the {{{atomXHTMLTextConstruct}}} definition to this one: {{{
   atomXHTMLTextConstruct =
  atomCommonAttributes,
  attribute type { "xhtml" },
  (text
   | anyXHTML)*
}}}
And add the following paragraph: {{{
   This specification further refines the Text construct depending on
   the kind of content that is expected. A Text constructs expecting
   inline content is further named Inline Text construct, whereas a
   Text construct expecting block content is named Block Text construct.
}}}
=== section 3.1.1.2 ===
Replace the last paragraph with:{{{
   If the value of "type" is "html", the content of the Text construct
   MUST NOT contain child elements, and SHOULD be suitable for handling
   as HTML [HTML].  Any markup within MUST be escaped; for example,
   "" as "
". Atom Processors that display such content MAY use that markup to aid in its display. The content is subject to further constraints depending on its kind: o HTML markup within an Inline Text construct SHOULD be such that it could validly appear directly within an HTML element, after unescaping. o HTML markup within a Block Text construct SHOULD be such that it could validly appear directly within an HTML element, after unescaping. }}} === section 3.1.1.3 === {{{ Example atom:title with XHTML content: ... http://www.w3.org/1999/xhtml";> Less: < ... If the value of "type" is "xhtml", the content of the Text construct MUST be XHTML [XHTML] text and markup. Atom Processors which display the content MAY use the markup to aid in displaying it. Escaped characters, such as "&" and ">", represent those characters, not markup. The content is subject to further constraints depending on its kind: o the content of an Inline Text construct MUST be XHTML text and markup that could validly appear within an XHTML span element. o the content of a Block Text construct MUST be XHTML text and markup that could validly appear within an XHTML div element. Examples of valid XHTML content: ... http://www.w3.org/1999/xhtml";> This is an XHTML title http://www.w3.org/1999/xhtml";> Note that using span and div containers allows us to keep using default namespaces (namespaces not bound to any prefix). The container element has been choosen to fit the kind of content it contains: span for inline content and div for block content. ... http://www.w3.org/1999/xhtml";> This is an XHTML paragraph. ... The following example assumes that the XHTML namespace has been bound to the "xh" prefix earlier in the document: ... This is XHTML content. ... }}} === section 4.1.3 The "atom:content" Element === Replace the {{{atomInlineXHTMLContent}}} definition with this one:{{{ atomInlineXHTMLContent = element atom:content { atomCommonAttributes,

Re: PaceTextShouldBeProvided

2005-04-30 Thread Bill de hÓra
Sam Ruby wrote:
== Abstract ==
Encourage interoperability and accessibility by suggesting that key 
textual constructs be both present and non-empty.

== Status ==
Open
== Rationale ==
There are existance proofs of tools that either are less useful in the 
presence of entries without without a title, or ones without either a 
summary or inline textual content.  In fact, at least one such tool 
discards such entries entirely.  This fact, when viewed in isolation, 
would argue that such elements be mandatory.

Unfortunately, there are also existence proofs of title-only feeds, and 
entries for which there are no titles.  Reluctantly, this leads one to 
conclude that while they must be allowed, it would be irresponsible for 
the spec not to warn potential producers of such feeds that not 
providing a textual fallback may lead to interoperability issues.
The bias bothers me - why are the existence of title only feeds 
unfortunate, whereas tools that do not handle them gracefully are not? 
And, is this not the kind of spec text we've been traditionally kicking 
into the Fabled Implementors Guide?


=== section 4.1.2 ===
Add:
  atom:entry elements SHOULD contain an atom:summary element if the 
atom:content in the form of atomInlineOtherContent.
-1 to this addition.

As these requirements are only SHOULDs, no feeds which are currently 
valid will become invalid.  However, those that follow these suggestions 
will find that their feeds are useful to a wider audience than they 
would be otherwise.
As a rationale, usefulness to a wider audience is debatable.
I'm concerned that this text is intended, or will be leveraged, to call 
out title-only feeds as bad practice. If this is accepted, I would ask 
the editors to take care that is not implied.

cheers
Bill



Re: PaceTextShouldBeProvided

2005-04-30 Thread Graham
On 29 Apr 2005, at 5:51 pm, Sam Ruby wrote:
Encourage interoperability and accessibility by suggesting that key  
textual constructs be both present and non-empty.
+1
Graham