Re: PaceXhtmlNamespaceDiv

2005-02-16 Thread Martin Duerst
(BAt 01:35 05/02/11, Sam Ruby wrote:
(B 
(B Julian Reschke wrote:
(B
(B  Nor am I. The question is what's the best way to enhance the spec. One 
(Balternative suggestion was made by Martin D$B—S(Bst in 
(Bhttp://www.imc.org/atom-syntax/mail-archive/msg13531.html:
(B  "Note: It is important to make sure that correct namespace declarations
(B  for XHTML are present. One way to do this is by using an xhtml:div
(B  element as the content of the atom:content element and specifying
(B  the XHTML namespace on that div element. Here are some examples:
(B  ... [use proposed examples]
(B  There are other ways to declare the namespace URI for XHTML content;
(B  this specification does not limit the placement of such declarations
(B  in any way."
(B 
(B My issue with that wording is that it doesn't make it clear whether the 
(Bxhtml:div that is added is to be considered a part of the content or not.
(B
(BFair point.
(B
(B Put another way, how does the consumer know that if a given xhtml:div 
(Belement is part of the content, or was added per the above?
(B 
(B Julian, you previously said "Let's make the spec as clear and simple as 
(Bpossible."  How about this:
(B 
(Bxhtml:div is required.  xhtml:div is not part of the content.
(B 
(B Clear.  Simple.  And difficult to get wrong.
(B
(BHow about the following alternative:
(B
(B xhtml:div is not required. xhtml:div is part of the content.
(B
(BClear. Simple. And difficult to get wrong :-).
(B
(BIf that's not enough, we can add a note, e.g.:
(B
(B Note: A xhtml:div is just an empty wrapper; it will in general
(B   not affect the processing or display of the content.
(B
(B
(BRegards,Martin. 

Re: PaceXhtmlNamespaceDiv

2005-02-11 Thread James Aylett

On Thu, Feb 10, 2005 at 01:20:55PM -0500, Sam Ruby wrote:

 All that being said, I am OK with any spec wording that enables one to 
 create a document using only default namespaces that:
 
   1) does not require well formed, serialized XHTML fragments to be
  modified.
   2) is unabiguous as to which elements in the document are part of the
  feed structure and which are to be considered the content being
  syndicated.

They're both goals I agree with, but I don't see how xhtml:div/ can
possibly achieve 2). We're saying take an element from a /different/
namespace to atom, but treat it as if it weren't part of its children
in the /same/ different namespace; treat it instead as similar to its
own parent, which is in atom's namespace.

That, to me, is totally different to the way namespaces are usually
used (as a kind of mix-in mechanism). Particularly in RSS.

1) breaks down into four cases:

1a)   people who already have serialised XHTML fragments assuming
  a default namespace
1b)   people who already have serialised XHTML, with an explicit
  namespace on the outermost element of the fragment
1c)   people who don't have anything, and whose tools will use
  a default namespace
1d)   people who don't have anything, and whose tools will use
  an explicit namespace

If you're using string concatenation (and ignoring character encoding
issues), 1a, 1c lead us to the problem we're trying to solve here; 1b,
1d will be fine whatever we choose.

Can't 1a,1c can be done with treating it all as binary data and
setting the type to HTML (modulo appendix C issues)? Isn't that, in
fact, the only safe way of using string concatenation (modulo encoding
issues, and CDATA ]] / text node entity escaping issues)? It's what I
took that mode to have been designed for, so why not mandate that
people use it, rather than confuse the issue with an element in one
namespace that must be treated like it's in another?

Of 1c, there will be a small number of
tools-that-have-yet-to-be-written where strong suggestions in the spec
would lead to the authors instead choosing 1d. The rest we're going to
have to live with, somehow.

James

-- 
/--\
  James Aylett  xapian.org
  [EMAIL PROTECTED]   uncertaintydivision.org



Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Sam Ruby
Henri Sivonen wrote:
On Feb 9, 2005, at 15:28, Sam Ruby wrote:
Here's the key question.  Consider the following XML fragment:
  summary type='XHTML'div xmlns='http://www.w3.org/1999/xhtml'Hey, 
this is my space, if I want to run a picture of a chair I can. And 
its a emnice/em chair./div/summary

Given this fragment, what is the value of the summary?  Is the div 
element to be considered part of the format (and therefore not part of 
the summary).  Or is the div element to be considered part of the 
summary itself.
The div is part of the summary according to current spec text.
That's what I want to change.  I've updated the Pace to make this 
clearer.  I replaced the abstract completely, and added one sentence to 
the proposal.

New abstract:
  Given that common practice is to include this element, making it
  mandatory makes things clearer to both people who are producing
  consuming tools based on the spec, and people who are producing new
  feeds based on copy and paste.
New spec text:
  The xhtml:div element itself MUST NOT be considered part of the
  content.
- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Julian Reschke
Sam Ruby wrote:
That's what I want to change.  I've updated the Pace to make this 
clearer.  I replaced the abstract completely, and added one sentence to 
the proposal.

New abstract:
  Given that common practice is to include this element, making it
  mandatory makes things clearer to both people who are producing
  consuming tools based on the spec, and people who are producing new
  feeds based on copy and paste.
New spec text:
  The xhtml:div element itself MUST NOT be considered part of the
  content.
I find it a bit problematic to use common practice in Atom feeds as 
justification for spec changes. Let's make the spec as clear and simple 
as possible. If this is in conflict with common usage in experimental 
Atom feeds, so be it.

Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Sam Ruby
Julian Reschke wrote:
Sam Ruby wrote:
That's what I want to change.  I've updated the Pace to make this 
clearer.  I replaced the abstract completely, and added one sentence 
to the proposal.

New abstract:
  Given that common practice is to include this element, making it
  mandatory makes things clearer to both people who are producing
  consuming tools based on the spec, and people who are producing new
  feeds based on copy and paste.
New spec text:
  The xhtml:div element itself MUST NOT be considered part of the
  content.
I find it a bit problematic to use common practice in Atom feeds as 
justification for spec changes. Let's make the spec as clear and simple 
as possible. If this is in conflict with common usage in experimental 
Atom feeds, so be it.
That is consistent with your prior statement that you don't believe that 
implementation issues should affect the format:

http://www.imc.org/atom-syntax/mail-archive/msg12699.html
Yes, I want a spec that is simple.  I also want a spec that average 
people can implement simply and correctly.

We have seen on this very mailing list people who have an above average 
understanding of XML trip over this particular area numerous times.

I am not content to create a format for which the answers to such common 
user errors is so be it.

- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Anne van Kesteren
Sam Ruby wrote:
New abstract:
  Given that common practice is to include this element, making it
  mandatory makes things clearer to both people who are producing
  consuming tools based on the spec, and people who are producing new
  feeds based on copy and paste.
New spec text:
  The xhtml:div element itself MUST NOT be considered part of the
  content.
I find it a bit problematic to use common practice in Atom feeds as 
justification for spec changes. Let's make the spec as clear and 
simple as possible. If this is in conflict with common usage in 
experimental Atom feeds, so be it.
That is consistent with your prior statement that you don't believe that 
implementation issues should affect the format:

http://www.imc.org/atom-syntax/mail-archive/msg12699.html
Yes, I want a spec that is simple. I also want a spec that average 
people can implement simply and correctly.

We have seen on this very mailing list people who have an above average 
understanding of XML trip over this particular area numerous times.

I am not content to create a format for which the answers to such common 
user errors is so be it.
However, what is the problem with people using a DIV element inside 
SUMMARY and the CONTENT element if they wish to do so?

By the way, I have read the thing you wrote about things like planet 
copy the contents and put it in their own DIV element but if that is how 
they are going to treat Atom, Atom will not be solving anything and will 
just be another RSS I guess.

Authors who do copy and paste and others should always validate their 
feed. I guess the feed validator could flag elements that are in the 
Atom namespace and should not be there according to the latest updates 
of the Atom namespace.

Eventually, I guess it is about getting the major weblog systems and 
companies to get their implementation right. The Atom WG and other 
people should also provide tutorials on how to create Atom feeds and how 
to make sure everything works as it should.

--
 Anne van Kesteren
 http://annevankesteren.nl/


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Henri Sivonen
On Feb 10, 2005, at 18:02, Sam Ruby wrote:
We have seen on this very mailing list people who have an above 
average understanding of XML trip over this particular area numerous 
times.
Those trip-ups have not been as much about div vs. no div but about 
XMLNS which we can't and should not attempt to change. I should also 
note that typed examples on the list and output from debugged 
serializers are different things.*

* Aka. the tools will save us argument. Despite the tools will save 
us argument being unpopular, I think it is unwise for an average 
developer to approach XMLNS without proper tools.

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Sam Ruby
Julian Reschke wrote:
Sam Ruby wrote:
That is consistent with your prior statement that you don't believe 
that implementation issues should affect the format:

http://www.imc.org/atom-syntax/mail-archive/msg12699.html
What I said is that very *specific* implementation issue shouldn't 
affect the format. Please cite correctly. I also posted the following 
clarification in 
http://www.imc.org/atom-syntax/mail-archive/msg12697.html:

OK, I'll try to rephrase: changing the protocol format because one 
implementor says that this makes it easier to implement IMHO is a bad 
idea. Of course things look differently if this issue affects more 
platforms/parsers/toolkits.

So yes, more information is needed.
Yes, I want a spec that is simple.  I also want a spec that average 
people can implement simply and correctly.

We have seen on this very mailing list people who have an above 
average understanding of XML trip over this particular area numerous 
times.

I am not content to create a format for which the answers to such 
common user errors is so be it.
Nor am I. The question is what's the best way to enhance the spec. One 
alternative suggestion was made by Martin Dürst in 
http://www.imc.org/atom-syntax/mail-archive/msg13531.html:

Note: It is important to make sure that correct namespace declarations
for XHTML are present. One way to do this is by using an xhtml:div
element as the content of the atom:content element and specifying
the XHTML namespace on that div element. Here are some examples:
... [use proposed examples]
There are other ways to declare the namespace URI for XHTML content;
this specification does not limit the placement of such declarations
in any way.
My issue with that wording is that it doesn't make it clear whether the 
xhtml:div that is added is to be considered a part of the content or not.

Put another way, how does the consumer know that if a given xhtml:div 
element is part of the content, or was added per the above?

Julian, you previously said Let's make the spec as clear and simple as 
possible.  How about this:

  xhtml:div is required.  xhtml:div is not part of the content.
Clear.  Simple.  And difficult to get wrong.
- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Julian Reschke
Sam Ruby wrote:

Nor am I. The question is what's the best way to enhance the spec. One
alternative suggestion was made by Martin Dürst in 
http://www.imc.org/atom-syntax/mail-archive/msg13531.html:

Note: It is important to make sure that correct namespace declarations
for XHTML are present. One way to do this is by using an xhtml:div
element as the content of the atom:content element and specifying
the XHTML namespace on that div element. Here are some examples:
... [use proposed examples]
There are other ways to declare the namespace URI for XHTML content;
this specification does not limit the placement of such declarations
in any way.

My issue with that wording is that it doesn't make it clear whether the 
xhtml:div that is added is to be considered a part of the content or not.
I'd assume it's part of the content because that's what the spec 
currently says.

Put another way, how does the consumer know that if a given xhtml:div 
element is part of the content, or was added per the above?
It is, unless the spec says otherwise.
Julian, you previously said Let's make the spec as clear and simple as 
possible.  How about this:

  xhtml:div is required.  xhtml:div is not part of the content.
Clear.  Simple.  And difficult to get wrong.
Well, but not sufficient as spec text right?
To summarize my p.o.v.:
- the spec shouldn't require any specific container element for XHTML 
content,

- the spec should warn people about that the child elements MUST be in 
the XHTML namespace if the recipient is supposed to interpret them as as 
XHTML markup,

- whether or not a feed producer puts in a div container doesn't seem 
to be relevant to me as it doesn't affect the semantics of what the text 
construct carries.

Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread James M Snell
Sam Ruby wrote:
   xhtml:div is required.  xhtml:div is not part of the content.

 Clear.  Simple.  And difficult to get wrong.
I'd much prefer:
  xhtml:div is required. xhtml:div is part of the content.
But I can live with it either way
- James M Snell


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Graham
On 10 Feb 2005, at 3:35 pm, Sam Ruby wrote:
  The xhtml:div element itself MUST NOT be considered part of the
  content.
What does this mean? Define content and considered please.
Graham


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Julian Reschke
Robert Sayre wrote:
Julian Reschke wrote:
So do you think we'll have to live with that, or should the spec be 
clarified/changed to reduce the chance of people getting it wrong?

I think Sam's approach is best. The objections are all impractical 
pedantry.
I think the proposal won't really help for cases where people don't know 
what they do and/or use the wrong tools, but adds completely unnecessary 
complexity for everybody else.

Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Sam Ruby
Julian Reschke wrote:
To summarize my p.o.v.:
- the spec shouldn't require any specific container element for XHTML 
content,
We continue to talk past one another.  The above line is key.
Some examples might help.  Perhaps once we are actually understanding 
each other's points, then we can work backward from there to spec text.

So, suppose my XHTML content is:
  pWhat a nice day!/p
My XHTML container element is p.  That is completely my choice.  It is 
not required by the spec.

Now if I place that inside an atom feed, I'm going to get something like 
this (heavily elided, all namespace details omitted):

  feed
entry
  summary
 pWhat a nice day!/p
  /summary
/entry
  /feed
Depending on the how the question is phrased, one could take the 
position that feed, entry, and summary are container elements.  Or 
not.  Again, depending on how the question is phrased.

I don't believe that these elements are the ones that you have an issue 
with.  Correct?

Now, consider a different document, again heavily elided, etc:
  feed
entry
  summary
 div
   pWhat a nice day!/p
 /div
  /summary
/entry
  /feed
The key difference between these two documents is that instead of three 
elements around which there should be no issue, there now are four.  But 
for some reason, this causes a big controversy.

My theory is that the controversy is that people initially assumed that 
this div element was to be considered part of the content and not part 
of the format.  And thereby was mandating that all content have a given 
container element.  An entirely unreasonable mandate.

I agree that this would be an unreasonable mandate.  But I don't want to 
force a top level container element for the xhtml, I want to define a 
bottom level container element in the format for the xhtml.  There is a 
big difference.

The difference between four feed container elements and mandating that 
all xhtml content have a uniform top level container element.  Which 
again, I will agree is an entirely unreasonable assumption.

 - - -
On the optimistic presumption that you are with me so far, I'll press 
on.  What desirable characteristics are there for feed container 
elements in this circumstance?

To answer that question, it is important to understand how CMS software 
tends to be implemented.  In particular, how they are layered.  This is 
difficult as there isn't any one reference implementation that we can 
consult.  We also need to consider software which isn't written yet.  As 
I said, this is diffuclt.

But we can observe common problems that people have had, and try to 
engineer a solution that avoids them.  I hold the belief that if 
somebody writes a simple and clear spec that a significant number of 
people get wrong, that we are looking at a spec bug.

Enough hand waving, onto the problem at hand.  What we are looking at 
here is an xhtml fragment.  Not a complete xhtml document, but some 
fragment of a web page.

Now, fragments tend not to exist independent of a context.  And in 
virtually all xhtml documents I have seen (including the ones I 
produce), any fragment presumes that the xhtml namespace was defined as 
the default namespace earlier in the document (in particular, on the 
document element).

So, a desirable characteristic for a container element would be one in 
which the default namespace can be set.

At this point, the discussion can fragment into any number of different 
directions.

  - - -
One is for those who view XML as merely one potential serialization 
format, and something that their tool takes care of for them.  For them, 
double escaping the content is the right answer, the simplest thing that 
can possibly work, end of discussion.  While neither you nor I are in 
that camp (nor is Norm, and others), I am quite willing to leave that as 
a valid option, as long as it is explicitly declared.

Another is to declare the use of default namespaces as evil, and rewrite 
 both the document and the content to use explicit namespaces on every 
element.  This may very well be where you and I part ways.  If so, 
peace.  Just please give the people who want to use default namespaces 
the same consideration that I am willing to give those who wish to 
double escape.

And finally, there is a desire to create a format that can be done 
entirely with default namespaces, and without the need to rewrite or 
modify the content.

The simple fact is that well formed xhtml does not always exist in the 
form of DOM nodes.  Sometimes it is serialized as a string and stored in 
a file or a MySQL database.  That does not make it any less well formed. 
 It doesn't mean that it wasn't produced by a proper tool.

Not having seen Tim's implementation, I'm just speculating at this 
point, but it probably falls into this category.  Based on the tools he 
is using, he is confident that his content is well formed, even if it is 
stored as a string.  As such, he can confidently use 

Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Bill de hÓra
Sam Ruby wrote:
 [..snip excellent rationale..]
So, a desirable characteristic for a container element would be one in 
which the default namespace can be set.
That is not a desirable characteristic.

At this point, the discussion can fragment into any number of different 
directions.

[...]

Another is to declare the use of default namespaces as evil, and rewrite 
 both the document and the content to use explicit namespaces on every 
element.  This may very well be where you and I part ways.  If so, 
peace.  Just please give the people who want to use default namespaces 
the same consideration that I am willing to give those who wish to 
double escape.
I believe the easiest, most robust, least error-prone approach to this 
sort of problem is to attempt to eliminate default namespace usage 
whenever possible. Every time a default namespace is elided system 
robustness and comprehension are improved - I've never seen it work the 
other way.


And finally, there is a desire to create a format that can be done 
entirely with default namespaces, and without the need to rewrite or 
modify the content.
That is a questionable desire. It leads us directly to promoting the use 
of a div wrapper to protect XHTML from Atom. Any container format that 
can so easily damage content we have to enforce a shim to protect it, 
arguably has a design flaw. Atom is just the most of recent of string of 
flawed container formats.


So, what would a desirable feed container element be for this scenario? 
 I would suggest that it would be something in the xhtml namespace.  If 
it were in the atom namespace, you would have to do something along the 
lines of:

  atom:summary xmlns:atom=... xmlns=...
Sam is 100% right this is problem. I arrive at a very different conclusion.

If you are still with me, what I am proposing is that the simplest and 
cleanest solution for people who like default namespaces would be to 
define the format so that there is an xhtml:div element between the 
atom:summary and the xhtml fragment that is being syndicated.
It's interesting you call them out so specifically, but no - default 
namespaces are the problem. Free your mind, and all that.

This can be solved in a general way, not just for XHTML, by banning the 
use of default namespaces for Atom elements. That means the Atom format 
would actively subset XMLNS. I see that as a preferable option to 
anything presented in this thread.

[Although it's time past for paces, I have one on this computer 
somewhere for default namespaces, but after I got shouted down last year 
about xmlns= I didn't think there was much point. Maybe I'll publish 
it on April 1st]

In the meantime I support Sam's position, but think we're missing an 
opportunity to produce a more robust XML container format.

cheers
Bill


Re: PaceXhtmlNamespaceDiv

2005-02-10 Thread Julian Reschke
Sam Ruby wrote:
Julian Reschke wrote:
Sam, thanks for the long reply. I'll try my best to dig it and to offer 
constructive remarks...

To summarize my p.o.v.:
- the spec shouldn't require any specific container element for XHTML 
content,

We continue to talk past one another.  The above line is key.
Some examples might help.  Perhaps once we are actually understanding 
each other's points, then we can work backward from there to spec text.

So, suppose my XHTML content is:
  pWhat a nice day!/p
My XHTML container element is p.  That is completely my choice.  It is 
not required by the spec.
Yep.
Now if I place that inside an atom feed, I'm going to get something like 
this (heavily elided, all namespace details omitted):

  feed
entry
  summary
 pWhat a nice day!/p
  /summary
/entry
  /feed
Yep.
Depending on the how the question is phrased, one could take the 
position that feed, entry, and summary are container elements.  Or 
not.  Again, depending on how the question is phrased.
Fine with me.
I don't believe that these elements are the ones that you have an issue 
with.  Correct?
Yes.
Now, consider a different document, again heavily elided, etc:
  feed
entry
  summary
 div
   pWhat a nice day!/p
 /div
  /summary
/entry
  /feed
The key difference between these two documents is that instead of three 
elements around which there should be no issue, there now are four.  But 
for some reason, this causes a big controversy.

My theory is that the controversy is that people initially assumed that 
this div element was to be considered part of the content and not part 
of the format.  And thereby was mandating that all content have a given 
container element.  An entirely unreasonable mandate.
Well, the current spec says it's part of the content. I personally feel 
it really doesn't matter. Adding DIVs around XHTML content doesn't 
change the semantics of the content, in particular if it doesn't carry 
any additional attributes.

So, I wouldn't have any problems with recipients that collapse multiple 
nested xhtml:div elements into one or none (in absence of other 
attributes on it).

I agree that this would be an unreasonable mandate.  But I don't want to 
force a top level container element for the xhtml, I want to define a 
bottom level container element in the format for the xhtml.  There is a 
big difference.
It's still hard to see the difference, It's certainy not obvious on the 
syntactical level, and at the end of the day, that's what we are 
discussing here, right?

The difference between four feed container elements and mandating that 
all xhtml content have a uniform top level container element.  Which 
again, I will agree is an entirely unreasonable assumption.

 - - -
On the optimistic presumption that you are with me so far, I'll press 
on.  What desirable characteristics are there for feed container 
Not entirely, but trying :-)
elements in this circumstance?
To answer that question, it is important to understand how CMS software 
tends to be implemented.  In particular, how they are layered.  This is 
difficult as there isn't any one reference implementation that we can 
consult.  We also need to consider software which isn't written yet.  As 
I said, this is diffuclt.

But we can observe common problems that people have had, and try to 
engineer a solution that avoids them.  I hold the belief that if 
somebody writes a simple and clear spec that a significant number of 
people get wrong, that we are looking at a spec bug.
Sure. But, are we looking at the whole set of implementors, or only 
those who actually read the spec? We all know that those sets aren't 
identical...

Enough hand waving, onto the problem at hand.  What we are looking at 
here is an xhtml fragment.  Not a complete xhtml document, but some 
fragment of a web page.
Yes.
Now, fragments tend not to exist independent of a context.  And in 
virtually all xhtml documents I have seen (including the ones I 
produce), any fragment presumes that the xhtml namespace was defined as 
the default namespace earlier in the document (in particular, on the 
document element).
Well, that depends how you define fragment. For instance, I can use 
XSLT to produce that fragment and I certainly don't have to make any 
assumptions about default namespaces. The XSLT processor cares for me. 
The same thing applies when serializing a node set from an 
namespace-aware DOM (at least that's what I'd expect and MSXML has been 
doing for years now).

So, a desirable characteristic for a container element would be one in 
which the default namespace can be set.
I disagree that this is important, but the atom text constructs do have 
that characteristic already.

At this point, the discussion can fragment into any number of different 
directions.

  - - -
One is for those who view XML as merely one potential serialization 
format, and something that their tool takes care of for them.  For them, 

Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Henri Sivonen
On Feb 7, 2005, at 23:21, Sam Ruby wrote:
  1) Graham (who uses proper XML tools) will have to do more work.
Which tools? How much more? One loop more?
(FWIW, I do not consider Apple's Core Foundation XML parser a proper 
XML tool.)

  2) Tim (who uses string concatenation) will have to do more work.
When I did a string concatenation implementation, using colonified 
names was not a big deal.

  5) For some combinations of clients and servers, entries produced
 via an HTTP POST will end up with multiple divs.
I can anticipate that happening either way.
--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Henri Sivonen
On Feb 8, 2005, at 07:03, Henri Sivonen wrote:
On Feb 8, 2005, at 01:55, Sam Ruby wrote:
Can I get one of you three to mock up what Tim's feed should look 
like?
a:feed xmlns:a='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
version='draft-ietf-atompub-format-04 : do not deploy' 
xmlns='http://www.w3.org/1999/xhtml' xml:lang='en-us'
...
 a:entry
...
  a:content type='XHTML'I was in the drugstore picking up a 
prescription and wandered into the computer section, where I found 
myself impulse-buying a 
href='http://dvforge.com/themousebt.shtml'The Mouse BT/a from some 
outfit
...
OR (even less impact on string concatenators):
feed xmlns='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
version='draft-ietf-atompub-format-04 : do not deploy' 
xml:lang='en-us'
...
 entry
...
  a:content type='XHTML' 
xmlns:a='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
xmlns='http://www.w3.org/1999/xhtml'I was in the drugstore picking up 
a prescription and wandered into the computer section, where I found 
myself impulse-buying a href='http://dvforge.com/themousebt.shtml'The 
Mouse BT/a from some outfit
...

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Henri Sivonen
On Feb 7, 2005, at 22:58, Sam Ruby wrote:
If you are opposed to this pace, then what div element?
If the pace does not get through, it is still permissible to put a div 
in there as part of the content. In fact, either way it is permissible 
to add meaningless extra divs, since a div can nest in a div.

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Julian Reschke
Sam Ruby wrote:
Bill de hÓra wrote:
Sam Ruby wrote:
If this Pace is not adopted, the following predictions can be made:
  1) Graham (who uses proper XML tools) will have to do more work.
I'd like to see a concrete example where this is a problem. As far as I 
can tell, the content construct itself can be considered the container, 
so whether or not a mandatory DIV element is present, there will always 
be a useable container element.

  2) Tim (who uses string concatenation) will have to do more work.
Nothing changes for Tim, he can continue to produce the output he's 
producing currently.

  3) More feeds will be harder to read (that's why I asked you to
 experiment with alternate serializations.
Whether something is easier to read seems to be a matter of taste: I 
certainly prefer a globally scoped XHTML namespace declaration, and no 
additional DIV elements.

  3) More feeds will be invalid (content in atom namespace)

Perhaps I misunderstand... but this shouldn't result in invalid Atom 
feeds ever - content areas should be able to hold any-namespace not 
any-namespace-atom-namespace. Worst case is mangled content when the 
content is lifted out using namespace aware tools. In other words, the 
container markup format is just dandy, but the content they carry is 
potentially trashed. If we condone default namespaces this is what we 
can expect to happen. We discussed warning people about this broken 
piece of XML technology last year and it was punted to an Implementors 
Guide - I'm somewhat unsympathetic now if we find ourselves bitten.

Perhaps I overreached with the word invalid, but I am of the opinion 
that if the type is XHTML that the content should be an xthml fragment.

atom:b and atom:strong elements are examples of things which one would 
not expect to find in xhtml.
Yes, but there are many other things people may get wrong when producing 
Atom. In particular, I would tend to trust those who do generate XHTML 
instead of HTML to get namespace declarations right as well.

Below are some comments that I just added to the Pace:
- Requiring the namespace declaration on a particular element means (a) 
profiling XMLNS, (b) defeating potential space optimizations by having 
the namespace declaration only once, and (c) breaks XML toolkits that do 
not provide full control over where namespace declarations appear.

- if this pace gets accepted, I would ask for the same DIV container 
element for HTML content for reasons of symmetry.

Best regards, Julian


--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Sam Ruby
Julian Reschke wrote:
Sam Ruby wrote:
Julian Reschke wrote:
Anne van Kesteren wrote:
Henri Sivonen wrote:
-1 on PaceXhtmlNamespaceDiv
-1 from me as well. It is hack which might be useful for publishing 
systems (and perhaps aggregators) who do not use the right tools to 
generate a valid Atom file anyway.
Same here: -1
Can I get one of you three to mock up what Tim's feed should look like?
http://www.imc.org/atom-syntax/mail-archive/msg12902.html
- Sam Ruby
I'm not sure I understand this request. We're not asking Tim or anybody 
else not to use div elements, we're asking not to be forced by the 
spec to select a specific way to emit XHTML when many others do as well.

So, this is a -1 on forcing feed creators to use a very specific 
serialization format.
This Pace does *not* force feed creators to use a very specific feed format.
Anne had this right... if this Pace is adopted, then the div is part of 
the format.  Otherwise, it is part of the content.

In other words, if Tim's content has a div element that he wishes to 
syndicate, he would simply nest that div.  This would be rare.

As it stands, the content that Tim is syndicating does not match the 
content on his site.

- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Julian Reschke
Sam Ruby wrote:
Nothing changes for Tim, he can continue to produce the output he's 
producing currently.

What Tim is syndicating does not match the content on his site.  Without 
this Pace, the div element would need to be considered part of the content.
What difference does this make in practice? HTML defines DIV as...
These elements define content to be inline (SPAN) or block-level (DIV) 
but impose no other presentational idioms on the content.

(http://www.w3.org/TR/html401/struct/global.html#edef-DIV)
  3) More feeds will be harder to read (that's why I asked you to
 experiment with alternate serializations.

Whether something is easier to read seems to be a matter of taste: I 
certainly prefer a globally scoped XHTML namespace declaration, and no 
additional DIV elements.

Fair.  However, a globally scoped XHTML namespace declaration will 
require every xhtml tag to be explicitly namespaced.
(unless we make it the default namespace, which usually won't make sense).
- Requiring the namespace declaration on a particular element means 
(a) profiling XMLNS, (b) defeating potential space optimizations by 
having the namespace declaration only once, and (c) breaks XML 
toolkits that do not provide full control over where namespace 
declarations appear.

Nothing in this pace requires such a declaration.
When a Text construct or atom:content's type is XHTML, require it to 
have a single xhtml:div as a child, and require that div to declare the 
XHTML namespace.

Am I looking at the wrong pace? 
(http://www.intertwingly.net/wiki/pie/PaceXhtmlNamespaceDiv)

- if this pace gets accepted, I would ask for the same DIV container 
element for HTML content for reasons of symmetry.

Are you suggesting that the following would need to be required for 
symmetry?

  lt;divgt; ... lt;/divgt;
Yes.
Suggesting this seems petty.
Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Henri Sivonen
On Feb 8, 2005, at 15:59, Julian Reschke wrote:
When a Text construct or atom:content's type is XHTML, require it 
to have a single xhtml:div as a child, and require that div to declare 
the XHTML namespace.

Am I looking at the wrong pace? 
(http://www.intertwingly.net/wiki/pie/PaceXhtmlNamespaceDiv)
The abstract no longer matches the proposal. This seems to cause 
confusion.

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Sam Ruby
Julian Reschke wrote:
- Requiring the namespace declaration on a particular element means 
(a) profiling XMLNS, (b) defeating potential space optimizations by 
having the namespace declaration only once, and (c) breaks XML 
toolkits that do not provide full control over where namespace 
declarations appear.
Nothing in this pace requires such a declaration.
When a Text construct or atom:content's type is XHTML, require it to 
have a single xhtml:div as a child, and require that div to declare the 
XHTML namespace.

Am I looking at the wrong pace? 
(http://www.intertwingly.net/wiki/pie/PaceXhtmlNamespaceDiv)
I have just updated the Pace to remove from the abstract text which is 
no longer reflected in the proposal.

- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Martin Duerst
At 22:59 05/02/08, Julian Reschke wrote:
http://www.intertwingly.net/wiki/pie/PaceXhtmlNamespaceDiv
I have looked at this pace only just very recently, after
following the discussion. So I first want to make sure I
get the current status of this proposal right.
As I currently read it, it does:
1) Require an xhtml:div as the only direct child of content of type XHTML
2) Not limit the placement of namespace declarations in any way above
   and beyond those given in the Namespace spec.
3) Not require any specific namespace prefixes.
If 2) and 3) are correct, I can live with this proposal. Anything
changing 2) or 3), as may have been previously in this Pace, would
get something like a -2 from me. Specs, in particular such fundamental
ones as XML Namespaces, are there to be used as is, not to be tweaked.
As for 1), I could live with it, but the rationale given for it in the
current version says:
Given that even we often forget when writing examples to declare
 the XHTML namespace for XHTML text constructs and content elements,
 it seems likely that people producing actual feeds will forget
 to do so unless the requirement to do so is stated prominently
 and unambiguously.
This doesn't seem to match the proposal, where Namespace declarations
are only used in the examples, but not mentioned in the text.
So while (as said above) I can live with 1), insisting on 1) without
a better rationale doesn't seem to make sense to me.
If the concern expressed in the rationale is important (and I can
agree it is), then addressing this concern can be done in less
constricting ways, i.e. by replacing the requirement for a div
with something like:
Note: It is important to make sure that correct namespace declarations
for XHTML are present. One way to do this is by using an xhtml:div
element as the content of the atom:content element and specifying
the XHTML namespace on that div element. Here are some examples:
... [use proposed examples]
There are other ways to declare the namespace URI for XHTML content;
this specification does not limit the placement of such declarations
in any way.
Regards, Martin.


Re: PaceXhtmlNamespaceDiv

2005-02-08 Thread Eric Scheid

On 9/2/05 3:39 PM, Martin Duerst [EMAIL PROTECTED] wrote:

 Note: It is important to make sure that correct namespace declarations
 for XHTML are present. One way to do this is by using an xhtml:div
 element as the content of the atom:content element and specifying
 the XHTML namespace on that div element. Here are some examples:
 ... [use proposed examples]
 There are other ways to declare the namespace URI for XHTML content;
 this specification does not limit the placement of such declarations
 in any way.

+1



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Sam Ruby
Henri Sivonen wrote:
On Feb 7, 2005, at 19:50, Paul Hoffman wrote:
Even if you sent in a +1, 0, or -1 previously on a particular Pace, 
send it in again. Hopefully, add a short or long comment on why you 
feel it should or should not be considered part of the Atom core.
-1 on PaceXhtmlNamespaceDiv
The div is an additional container inside the Text construct container. 
The main purpose of the div is to save one for loop in a 
document-tree/pull-based client or, alternatively, to give a false sense 
of correctness in tag soup concatenation-based clients. IMO, neither 
rationale warrants a meaningless element inside a Text construct.

(Noting that the Pace was retracted by the original author.)
It was retracted due to a perceived lack of interest - at that point it 
was a two party dialog between yourself and that author.

Since then a number of folks (myself included) expressed support for 
this Pace, I reopened it with an email to the list, and I will now 
reiterate my support now with a +1.

There are a number of issues that this resolves, such as whether the div 
element itself is to be considered part of the content in protocol POST 
methods.  If they are not, you will tend over time to see multiple such 
wrappings.

-Sam Ruby



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Graham
On 7 Feb 2005, at 7:38 pm, Sam Ruby wrote:
Since then a number of folks (myself included) expressed support for 
this Pace, I reopened it with an email to the list, and I will now 
reiterate my support now with a +1.

There are a number of issues that this resolves, such as whether the 
div element itself is to be considered part of the content in protocol 
POST methods.  If they are not, you will tend over time to see 
multiple such wrappings.
+1, and not just because it will make my life easier.
Graham


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Anne van Kesteren
Henri Sivonen wrote:
-1 on PaceXhtmlNamespaceDiv
-1 from me as well. It is hack which might be useful for publishing 
systems (and perhaps aggregators) who do not use the right tools to 
generate a valid Atom file anyway.

--
 Anne van Kesteren
 http://annevankesteren.nl/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Henri Sivonen
On Feb 7, 2005, at 21:52, Antone Roundy wrote:
+1, but I wouldn't object to a variant that required either the DIV 
with a namespace declaration OR for the namespace to be declared in 
content or before content.  Examples of what I'd think was 
acceptable:

feed ... xmlns:xhtml=... /
...
contentThis is xhtml:bbold/xhtml:b/content
This is against the Pace. Are you really supporting the pace?
OR
content xmlns:xhtml=... /This is xhtml:bbold/xhtml:b/content
This is against the Pace, too.
OR
contentdiv xmlns=... /This is bbold/b/content
This one is against the pace as well. Also, the 'b' element would be in 
the same namespace as 'content', which seems wrong.

Here's what I think is just plain ugly and shouldn't be allowed:
contentThis is b xmlns=... bold/b/content
IMO, that should be allowed. Atom has no business in restricting the 
syntactic sugar provided by Namespaces in XML.

OR
contentThis is xhtml:b xmlns:xhtml=... bold/xhtml:b/content
IMO, this on should be allowed on the same grounds.
--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread James M Snell
Ok, now that I'm thinking about this more, I'm changing my initial +0 to 
+1.  This just makes sense.  There does need to be a container for the 
XHTML and div is a solid, logical choice.  I don't think it should 
matter where the xmlns is declared... any ancestor element will do.

- James M Snell
Antone Roundy wrote:
+1, but I wouldn't object to a variant that required either the DIV with 
a namespace declaration OR for the namespace to be declared in content 
or before content.  Examples of what I'd think was acceptable:

feed ... xmlns:xhtml=... /
...
contentThis is xhtml:bbold/xhtml:b/content
OR
content xmlns:xhtml=... /This is xhtml:bbold/xhtml:b/content
OR
contentdiv xmlns=... /This is bbold/b/content
Here's what I think is just plain ugly and shouldn't be allowed:
contentThis is b xmlns=... bold/b/content
OR
contentThis is xhtml:b xmlns:xhtml=... bold/xhtml:b/content




Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Anne van Kesteren
James M Snell wrote:
Ok, now that I'm thinking about this more, I'm changing my initial +0 to 
+1.  This just makes sense.  There does need to be a container for the 
XHTML and div is a solid, logical choice.  I don't think it should 
matter where the xmlns is declared... any ancestor element will do.
I'm still -1. But I was wondering, why only ancestor elements? Wouldn't 
the most logical thing for string based generators be to apply it on 
the DIV element?

--
 Anne van Kesteren
 http://annevankesteren.nl/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread James M Snell
Yes, sorry I wasn't clear.  Not *only* on ancestor elements. any of the 
following cases should be allowed.

feed
  entry
content
  xhtml:div xmlns:xhtml=... /
/content
  /entry
/feed
feed
  entry
content xmlns:xhtml=...
  xhtml:div /
/content
  /entry
/feed
feed
  entry xmlns:xhtml=...
content
  xhtml:div /
/content
  /entry
/feed
feed xmlns:xhtml=...
  entry
content
  xhtml:div /
/content
  /entry
/feed
- James M Snell
Anne van Kesteren wrote:
James M Snell wrote:
Ok, now that I'm thinking about this more, I'm changing my initial +0 
to +1.  This just makes sense.  There does need to be a container for 
the XHTML and div is a solid, logical choice.  I don't think it should 
matter where the xmlns is declared... any ancestor element will do.

I'm still -1. But I was wondering, why only ancestor elements? Wouldn't 
the most logical thing for string based generators be to apply it on 
the DIV element?





Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread James M Snell
Nah, I don't buy it.  XHTML is just a special case of an XML content and 
if we were embedding some XML data (say an atom:feed) it wouldn't make 
any sense (under the assumption that the content / element is top 
level container) for us to do:

content type=application/atom+xml
  head
...
  /head
  entry
...
  /entry
/content
In my opinion, the XML contained in the content or text element should 
be capable of standing alone outside of the content element as a 
well-formed document and XHTML is just a special case of XML content.

- James M Snell
Henri Sivonen wrote:
On Feb 7, 2005, at 22:18, James M Snell wrote:
There does need to be a container for the XHTML and div is a solid, 
logical choice.

The container is the Atom Text construct itself!



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Henri Sivonen
For the record, the additional loop that the div would save in a 
DOM-based client is not that hard:

copyLangAndBase(atomTextCostruct, targetDivInTemplate);
for (Node n = atomTextCostruct.getFirstChild(); n != null; n = 
n.getNextSibling()) {
	targetDivInTemplate.appendChild(templateXhtmlDocument.importNode(n, 
true));
}

Is that too much to ask from clients?
--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Anne van Kesteren
James M Snell wrote:
Nah, I don't buy it.  XHTML is just a special case of an XML content and 
if we were embedding some XML data (say an atom:feed) it wouldn't make 
any sense (under the assumption that the content / element is top 
level container) for us to do:

content type=application/atom+xml
  head
...
  /head
  entry
...
  /entry
/content
I do not follow this example.

In my opinion, the XML contained in the content or text element should 
be capable of standing alone outside of the content element as a 
well-formed document and XHTML is just a special case of XML content.
So you want a DIV as wrapper element for TITLE and similar elements as well?
--
 Anne van Kesteren
 http://annevankesteren.nl/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Sam Ruby
Anne van Kesteren wrote:
James M Snell wrote:
Ok, now that I'm thinking about this more, I'm changing my initial +0 
to +1.  This just makes sense.  There does need to be a container for 
the XHTML and div is a solid, logical choice.  I don't think it should 
matter where the xmlns is declared... any ancestor element will do.
I'm still -1. But I was wondering, why only ancestor elements? Wouldn't 
the most logical thing for string based generators be to apply it on 
the DIV element?
I'm confused.  If you are opposed to this pace, then what div element?
It may also be helpful to look at a specific feed, for example this one:
http://www.imc.org/atom-syntax/mail-archive/msg12902.html
Experiment with alternate serializations if you like.
The important question is whether the div element is part of the 
format or part of the content?  Should aggregators copy it?  When an 
Atom entry is POSTed to a blog, is the div part of the content?

- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Anne van Kesteren
Sam Ruby wrote:
Ok, now that I'm thinking about this more, I'm changing my initial +0 
to +1.  This just makes sense.  There does need to be a container for 
the XHTML and div is a solid, logical choice.  I don't think it 
should matter where the xmlns is declared... any ancestor element 
will do.
I'm still -1. But I was wondering, why only ancestor elements? 
Wouldn't the most logical thing for string based generators be to 
apply it on the DIV element?
I'm confused.  If you are opposed to this pace, then what div element?
That was a question in reply to what James wrote. It appeared to be an 
error.


It may also be helpful to look at a specific feed, for example this one:
http://www.imc.org/atom-syntax/mail-archive/msg12902.html
Experiment with alternate serializations if you like.
The important question is whether the div element is part of the 
format or part of the content?  Should aggregators copy it?  When an 
Atom entry is POSTed to a blog, is the div part of the content?
If the page is adopted, which I hope not, it MUST NOT be part of the 
content. If the page is not adopted it MUST be part of the content.

--
 Anne van Kesteren
 http://annevankesteren.nl/


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread James M Snell
Anne van Kesteren wrote:
James M Snell wrote:
Nah, I don't buy it.  XHTML is just a special case of an XML content 
and if we were embedding some XML data (say an atom:feed) it wouldn't 
make any sense (under the assumption that the content / element is 
top level container) for us to do:

content type=application/atom+xml
  head
...
  /head
  entry
...
  /entry
/content

I do not follow this example.
The point is that content / should not be viewed as the root element 
for contained XML.  The XML content should be able to stand on it's own, 
indepedently of the content or text construct element as well-formed XML.


In my opinion, the XML contained in the content or text element should 
be capable of standing alone outside of the content element as a 
well-formed document and XHTML is just a special case of XML content.

So you want a DIV as wrapper element for TITLE and similar elements as 
well?


For Text construct and Content, if XHTML is used, there should be a DIV. 
 If someone wants to use XHTML for title, then yes, they should use a 
DIV. Otherwise, they can use plain text.


- James M Snell


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Sam Ruby
Anne van Kesteren wrote:
Sam Ruby wrote:
Ok, now that I'm thinking about this more, I'm changing my initial 
+0 to +1.  This just makes sense.  There does need to be a container 
for the XHTML and div is a solid, logical choice.  I don't think it 
should matter where the xmlns is declared... any ancestor element 
will do.

I'm still -1. But I was wondering, why only ancestor elements? 
Wouldn't the most logical thing for string based generators be to 
apply it on the DIV element?
I'm confused.  If you are opposed to this pace, then what div element?
That was a question in reply to what James wrote. It appeared to be an 
error.

It may also be helpful to look at a specific feed, for example this one:
http://www.imc.org/atom-syntax/mail-archive/msg12902.html
Experiment with alternate serializations if you like.
The important question is whether the div element is part of the 
format or part of the content?  Should aggregators copy it?  When an 
Atom entry is POSTed to a blog, is the div part of the content?
If the page is adopted, which I hope not, it MUST NOT be part of the 
content. If the page is not adopted it MUST be part of the content.
I can easily sit back and adopt a wait and see and I told you so 
attitude, but by now it should be obvious that I care too much about the 
success of this format and protocol to do that.

If this Pace is not adopted, the following predictions can be made:
  1) Graham (who uses proper XML tools) will have to do more work.
  2) Tim (who uses string concatenation) will have to do more work.
  3) More feeds will be harder to read (that's why I asked you to
 experiment with alternate serializations.
  3) More feeds will be invalid (content in atom namespace)
  4) More feeds will be incorrect (in the sense that Tim's feed does
 accurately reflect the content of his entries).
  5) For some combinations of clients and servers, entries produced
 via an HTTP POST will end up with multiple divs.
Meanwhile, now that the location where the namespace can be declared 
details have been removed from this pace, Henri can continue to do a 
DOM-to-DOM copy.

I stand by my original statements:
  There are cases where explicit is better than implicit.
  Given that common practice is to include this element, making it
  mandatory makes things clearer to both people who are producing
  consuming tools based on the spec, and people who are producing new
  feeds based on copy and paste.
- Sam Ruby


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Robert Sayre
Sam Ruby wrote:
I can easily sit back and adopt a wait and see and I told you so 
attitude, but by now it should be obvious that I care too much about the 
success of this format and protocol to do that.

After watching this WG fail to communicate clearly on this matter, and 
make a variety of arcane XML serialization mistakes in the course of 
discussion, it's clear to me that Sam is right.

+1 to PaceXhtmlNamespaceDiv
Robert Sayre


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Julian Reschke
Anne van Kesteren wrote:
Henri Sivonen wrote:
-1 on PaceXhtmlNamespaceDiv

-1 from me as well. It is hack which might be useful for publishing 
systems (and perhaps aggregators) who do not use the right tools to 
generate a valid Atom file anyway.
Same here: -1
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Roger B.

I'm +1 when wearing my aggregator hat, and indifferent from a
publishing perspective.

--
Roger Benningfield
JournURL



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Bill de hÓra
Sam Ruby wrote:
If this Pace is not adopted, the following predictions can be made:
  1) Graham (who uses proper XML tools) will have to do more work.
  2) Tim (who uses string concatenation) will have to do more work.
  3) More feeds will be harder to read (that's why I asked you to
 experiment with alternate serializations.
  3) More feeds will be invalid (content in atom namespace)
Perhaps I misunderstand... but this shouldn't result in invalid Atom 
feeds ever - content areas should be able to hold any-namespace not 
any-namespace-atom-namespace. Worst case is mangled content when the 
content is lifted out using namespace aware tools. In other words, the 
container markup format is just dandy, but the content they carry is 
potentially trashed. If we condone default namespaces this is what we 
can expect to happen. We discussed warning people about this broken 
piece of XML technology last year and it was punted to an Implementors 
Guide - I'm somewhat unsympathetic now if we find ourselves bitten.

I'm +1 on this pace, sometimes a judicious hack is the right thing to 
do. I suspect it could result in div nesting - call it gut feeling 
(it's an escaping mechanism after all).

cheers
Bill


Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Sam Ruby
Bill de hÓra wrote:
Sam Ruby wrote:
If this Pace is not adopted, the following predictions can be made:
  1) Graham (who uses proper XML tools) will have to do more work.
  2) Tim (who uses string concatenation) will have to do more work.
  3) More feeds will be harder to read (that's why I asked you to
 experiment with alternate serializations.
  3) More feeds will be invalid (content in atom namespace)
Perhaps I misunderstand... but this shouldn't result in invalid Atom 
feeds ever - content areas should be able to hold any-namespace not 
any-namespace-atom-namespace. Worst case is mangled content when the 
content is lifted out using namespace aware tools. In other words, the 
container markup format is just dandy, but the content they carry is 
potentially trashed. If we condone default namespaces this is what we 
can expect to happen. We discussed warning people about this broken 
piece of XML technology last year and it was punted to an Implementors 
Guide - I'm somewhat unsympathetic now if we find ourselves bitten.
Perhaps I overreached with the word invalid, but I am of the opinion 
that if the type is XHTML that the content should be an xthml fragment.

atom:b and atom:strong elements are examples of things which one would 
not expect to find in xhtml.

- Sam Ruby



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Eric Scheid


 PaceXhtmlNamespaceDiv

+1 



Re: PaceXhtmlNamespaceDiv

2005-02-07 Thread Henri Sivonen
On Feb 8, 2005, at 01:55, Sam Ruby wrote:
Can I get one of you three to mock up what Tim's feed should look like?
a:feed xmlns:a='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
version='draft-ietf-atompub-format-04 : do not deploy' 
xmlns='http://www.w3.org/1999/xhtml' xml:lang='en-us'
...
 a:entry
...
  a:content type='XHTML'I was in the drugstore picking up a 
prescription and wandered into the computer section, where I found 
myself impulse-buying a href='http://dvforge.com/themousebt.shtml'The 
Mouse BT/a from some outfit
...

OR
a:feed xmlns:a='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
version='draft-ietf-atompub-format-04 : do not deploy' 
xmlns:h='http://www.w3.org/1999/xhtml' xml:lang='en-us'
...
 a:entry
...
  a:content type='XHTML'I was in the drugstore picking up a 
prescription and wandered into the computer section, where I found 
myself impulse-buying h:a 
href='http://dvforge.com/themousebt.shtml'The Mouse BT/h:a from some 
outfit
...

OR
feed xmlns='http://purl.org/atom/ns#draft-ietf-atompub-format-04' 
version='draft-ietf-atompub-format-04 : do not deploy' 
xmlns:h='http://www.w3.org/1999/xhtml' xml:lang='en-us'
...
 entry
...
  content type='XHTML'I was in the drugstore picking up a 
prescription and wandered into the computer section, where I found 
myself impulse-buying h:a 
href='http://dvforge.com/themousebt.shtml'The Mouse BT/h:a from some 
outfit
...

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv posted

2005-02-02 Thread Roger B.

 Of course things look differently if this issue affects more
 platforms/parsers/toolkits.

It does. I'm in a similar boat.

On the other hand, since I'm going to be forced to parse Atom 0.3
until the end of time, and some 0.3 feeds don't use the div, it really
doesn't make a difference to me. I'm gonna be looping over and
xmlChildren array no matter what.

Requiring the div could certainly make life easier for those who are
going to restrict parsing to Atom 1.0, though.

--
Roger Benningfield
http://admin.support.journurl.com/



Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Julian Reschke
Sam Ruby wrote:
...
I've reopened it minus the namespace restriction.  I realize that Henri 
is violently opposed to it, but his objection seem to reduce down to 
cruft, and he seems to be in the minority.  I see there to be a good 
chance that rough consensus can be found on this pace.
...
For the record, I'm opposed to it, too. The spec is already saying this:
The content SHOULD be XHTML text and markup that could validly appear 
directly within an xhtml:div element.

...so making it explicit in the on-the-wire format seems to be 
completely useless.

Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Asbjørn Ulsberg
On Sun, 30 Jan 2005 18:43:18 +0100, Julian Reschke [EMAIL PROTECTED]  
wrote:

For the record, I'm opposed to it, too.
Same here.
The spec is already saying this:
The content SHOULD be XHTML text and markup that could validly appear  
directly within an xhtml:div element.

...so making it explicit in the on-the-wire format seems to be  
completely useless.
Indeed.
--
Asbjørn Ulsberg -=|=-http://virtuelvis.com/quark/
«He's a loathsome offensive brute, yet I can't look away»


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Graham
On 30 Jan 2005, at 5:24 pm, Sam Ruby wrote:
I've reopened it minus the namespace restriction.  I realize that 
Henri is violently opposed to it, but his objection seem to reduce 
down to cruft, and he seems to be in the minority.  I see there to 
be a good chance that rough consensus can be found on this pace.
I'm in favor of it. My current parser doesn't let me pull out all 
childen of element x in one go, so I have to step through in a really 
hacky way. With this I can just grab the div.

+1
Graham

smime.p7s
Description: S/MIME cryptographic signature


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Eric Scheid

On 31/1/05 4:43 AM, Julian Reschke [EMAIL PROTECTED] wrote:

 The content SHOULD be XHTML text and markup that could validly appear
 directly within an xhtml:div element.
 
 ...so making it explicit in the on-the-wire format seems to be
 completely useless.

what's missing though is guidance that the XHTML text and markup needs to
be in the xhtml namespace, and not just plonked in there by a crude
template-style publisher.

that is, it needs to be clear from the spec that this is wrong:

content type=XHTMLHere is a bbold statement/b/content

Given the mass of content which is published via crude string concatenation
template driven CMS products, this is something we need to address. As it is
at the moment, a naïve reading of the spec suggests that the above atom XML
is valid because the content element *does* contain XHTML text and markup
that could validly appear directly within an xhtml:div element.

By the way, are we assuming that the reader is meant to assume that the
namespace prefix xhtml has been bound to the xhtml namespace?

e.




Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Julian Reschke
Graham wrote:
On 30 Jan 2005, at 5:24 pm, Sam Ruby wrote:
I've reopened it minus the namespace restriction.  I realize that 
Henri is violently opposed to it, but his objection seem to reduce 
down to cruft, and he seems to be in the minority.  I see there to 
be a good chance that rough consensus can be found on this pace.

I'm in favor of it. My current parser doesn't let me pull out all 
childen of element x in one go, so I have to step through in a really 
hacky way. With this I can just grab the div.
That's an implementation issue that shouldn't affect the format.
Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Julian Reschke
Eric Scheid wrote:
On 31/1/05 4:43 AM, Julian Reschke [EMAIL PROTECTED] wrote:

The content SHOULD be XHTML text and markup that could validly appear
directly within an xhtml:div element.
...so making it explicit in the on-the-wire format seems to be
completely useless.

what's missing though is guidance that the XHTML text and markup needs to
be in the xhtml namespace, and not just plonked in there by a crude
template-style publisher.
that is, it needs to be clear from the spec that this is wrong:
content type=XHTMLHere is a bbold statement/b/content
...at least it's not what the producer probably intends.
Given the mass of content which is published via crude string concatenation
template driven CMS products, this is something we need to address. As it is
at the moment, a naïve reading of the spec suggests that the above atom XML
is valid because the content element *does* contain XHTML text and markup
that could validly appear directly within an xhtml:div element.
By the way, are we assuming that the reader is meant to assume that the
namespace prefix xhtml has been bound to the xhtml namespace?
These are good points, so this should be clarified (independently of 
whether we require div or not).

Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Tim Bray
On Jan 30, 2005, at 10:35 AM, Julian Reschke wrote:
That's an implementation issue that shouldn't affect the format.
Without any comment on the issue Julian was addressing, the above is 
outrageous.  Implementation issues are extremely material in discussion 
of the format.  Perhaps more material than anything else. -Tim



Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Julian Reschke
Tim Bray wrote:
On Jan 30, 2005, at 10:35 AM, Julian Reschke wrote:
That's an implementation issue that shouldn't affect the format.

Without any comment on the issue Julian was addressing, the above is 
outrageous.  Implementation issues are extremely material in discussion 
of the format.  Perhaps more material than anything else. -Tim
OK, I'll try to rephrase: changing the protocol format because one 
implementor says that this makes it easier to implement IMHO is a bad 
idea. Of course things look differently if this issue affects more 
platforms/parsers/toolkits.

So yes, more information is needed.
Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Henri Sivonen
On Jan 30, 2005, at 21:06, Julian Reschke wrote:
OK, I'll try to rephrase: changing the protocol format because one 
implementor says that this makes it easier to implement IMHO is a bad 
idea. Of course things look differently if this issue affects more 
platforms/parsers/toolkits.
FWIW, one could let WebCore see the Atom Text construct element without 
harm. So if a single container is needed, the Text construct itself is 
the obvious container.

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv posted

2005-01-30 Thread Asbjørn Ulsberg
On Sun, 30 Jan 2005 17:57:57 +, Graham [EMAIL PROTECTED] wrote:
I'm in favor of it. My current parser doesn't let me pull out all
childen of element x in one go, so I have to step through in a really
hacky way. With this I can just grab the div.
You can't grab 'atom:content/*[1]' or something similar?
--
Asbjørn Ulsberg -=|=-http://virtuelvis.com/quark/
«He's a loathsome offensive brute, yet I can't look away»


Re: PaceXhtmlNamespaceDiv posted

2005-01-29 Thread Henri Sivonen
On Jan 29, 2005, at 00:39, Sam Ruby wrote:
Henri Sivonen wrote:
On Jan 28, 2005, at 20:21, Sam Ruby wrote:
I also don't like the restriction on where namespace declarations 
must
be placed, but overall, I believe that the pace is a good idea.
I, for one, use gnu.xml.pipeline.NSFilter for ensuring the namespace 
correctness in my RSS feed.  If the current spec language stands, I 
will be able to trivially add Atom output with type='XHTML' by doing 
a DOM to DOM copy (without div cruft) and letting the serialization 
phase sort out the namespace declarations for me. If this pace was 
accepted, I'd have to break the namespace abstraction and fiddle with 
the namespace declaration details to meet additional requirements 
that are unnecessary as per Namespaces in XML.
Are you saying that you can do a DOM to DOM copy to place a series of 
elements inside the following:

  atom:feed/atom:entry/atom:content
But you would find it extraordinarily difficult to place the exact 
same series of elements inside the following:

  atom:feed/atom:entry/atom:content/xhtml:div
If so, I would find such an assertion to be hard to accept.
No, of course those two are equally easy. The latter is just crufty.
My point was that having the namespace declarations appear in a 
particular choice of syntactic sugar would hinder the use of an 
automatic namespace declaration manager.

If element names are prefixed, string concatenation is not an option 
anyway.
Which is why it would be harmful to imply that a string concatenation 
implementation was ok.

If element names are not prefixed (as is the case with the overwheming 
majority of existing HTML), adding a div is exactly what makes things 
safe for simple string concatenators.
I don't see how it makes string concatenation easier that concatenating 
the contents of the Text construct otherwise. But since it doesn't work 
in all cases, it certainly should not be specced for. Speccing for tag 
soup concatenation would just encourage implementors to do tag soup 
concatenation. Wasn't the whole reason for the existence of 
type='XHTML' to provide something that is more sound from the XML point 
of view than entity-encoded HTML?

And no, a div does not give any useful hint to the ViewSourceClan, 
because it is an anything goes element.

I am sorry I brought up the subject of Text constructs. How about 
withdrawing both PaceTypeTextRedundant and PaceXhtmlNamespaceDiv and 
sticking to what draft-ietf-atompub-format-04 said?

--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Joe Gregorio

On Thu, 27 Jan 2005 13:30:40 -0700, Antone Roundy [EMAIL PROTECTED] wrote:
 As far as the question of CSS and/or elements/tags everywhere, I'd
 think that would be a matter for the security considerations section
 (protecting against the Raging Platypus, for example).  Whatever
 restrictions we may pronounce, consumers will still have to include
 code to protect against abuses.  And these issues apply equally to HTML
 as to XHTML.
 
 I'm not in favor of mandating restrictions, because there are probably
 legitimate uses for anything we might try to protect people against.

+1, and the same goes for 'id', just leave it as an item for the security
considerations.

-joe

-- 
Joe Gregoriohttp://bitworking.org



Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Sam Ruby
Antone Roundy wrote:
On Thursday, January 27, 2005, at 10:38  PM, Henri Sivonen wrote:
On Jan 27, 2005, at 22:30, Antone Roundy wrote:
I'm not in favor of mandating restrictions, because there are 
probably legitimate uses for anything we might try to protect people 
against.
The namespace div places restrictions on where namespace declarations 
appear and, therefore, limits the legitimate use of serializers that 
take care of namespace declarations.

-1 for the pace, still.
Okay, this one's obviously dead.  Let's just make sure we have examples 
that make how all these things work clear.
I also don't like the restriction on where namespace declarations must
be placed, but overall, I believe that the pace is a good idea.
Consumers don't want full web pages (complete with html head and titles)
as summaries, they want something that they can *insert* into a web
page.  Requiring a div element addresses a number of needs - it makes it
easier to get the namespace right, and it succinctly provides a rather
good hint as to what child elements are valid.
On content, the situation is a bit different - the content need not be
displayable, after all.  I would be OK with either keeping the
definition of type='XHTML' consistent (there are other types available,
after all) or requiring a summary element to be present if the first
child element of atom:content with type='XHTML' is not an xhtml:div.
- Sam Ruby


Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Julian Reschke
Sam Ruby wrote:
I also don't like the restriction on where namespace declarations must
be placed, but overall, I believe that the pace is a good idea.
Consumers don't want full web pages (complete with html head and titles)
as summaries, they want something that they can *insert* into a web
page.  Requiring a div element addresses a number of needs - it makes it
easier to get the namespace right, and it succinctly provides a rather
good hint as to what child elements are valid.
That's what the spec already says, doesn't it? - 
http://atompub.org/2005/01/27/draft-ietf-atompub-format-05.html#rfc.section.3.1.1.p.6

...
Best regards, Julian
--
green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760


Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Graham
On 28 Jan 2005, at 6:21 pm, Sam Ruby wrote:
I also don't like the restriction on where namespace declarations must
be placed, but overall, I believe that the pace is a good idea.
Yes.
 and it succinctly provides a rather
good hint as to what child elements are valid.
Yes.
I would be OK with either keeping the definition of type='XHTML' 
consistent (there are other types available,
after all)
Yes.
or requiring a summary element to be present if the first
child element of atom:content with type='XHTML' is not an xhtml:div.
Ew.
Graham


Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Sam Ruby
Julian Reschke wrote:
Sam Ruby wrote:
I also don't like the restriction on where namespace declarations must
be placed, but overall, I believe that the pace is a good idea.
Consumers don't want full web pages (complete with html head and titles)
as summaries, they want something that they can *insert* into a web
page.  Requiring a div element addresses a number of needs - it makes it
easier to get the namespace right, and it succinctly provides a rather
good hint as to what child elements are valid.
That's what the spec already says, doesn't it? - 
http://atompub.org/2005/01/27/draft-ietf-atompub-format-05.html#rfc.section.3.1.1.p.6 
There are cases where explicit is better than implicit.
Given that common practice is to include this element, making it 
mandatory makes things clearer to both people who are producing 
consuming tools based on the spec, and people who are producing new 
feeds based on copy and paste.

- Sam Ruby


Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Roger B.

 Given that common practice is to include this element, making it
 mandatory makes things clearer to both people who are producing
 consuming tools based on the spec, and people who are producing new
 feeds based on copy and paste.

+1

--
Roger Benningfield



Re: PaceXhtmlNamespaceDiv posted

2005-01-28 Thread Sam Ruby
Henri Sivonen wrote:
On Jan 28, 2005, at 20:21, Sam Ruby wrote:
I also don't like the restriction on where namespace declarations must
be placed, but overall, I believe that the pace is a good idea.
I, for one, use gnu.xml.pipeline.NSFilter for ensuring the namespace 
correctness in my RSS feed.  If the current spec language stands, I will 
be able to trivially add Atom output with type='XHTML' by doing a DOM to 
DOM copy (without div cruft) and letting the serialization phase sort 
out the namespace declarations for me. If this pace was accepted, I'd 
have to break the namespace abstraction and fiddle with the namespace 
declaration details to meet additional requirements that are unnecessary 
as per Namespaces in XML.
Are you saying that you can do a DOM to DOM copy to place a series of 
elements inside the following:

  atom:feed/atom:entry/atom:content
But you would find it extraordinarily difficult to place the exact same 
series of elements inside the following:

  atom:feed/atom:entry/atom:content/xhtml:div
If so, I would find such an assertion to be hard to accept.
(Similar considerations apply to GenX if the user chooses to leave 
namespace declaration management to the serializer.)

Consumers don't want full web pages (complete with html head and titles)
as summaries, they want something that they can *insert* into a web
page.
Insertion is possible without a div as well if the insertion is 
implemented using proper XML tools and the target of the insertion is a 
real XHTML skeleton and not a tag soup skeleton and the resulting 
document is sent down the XML code path of Gecko, WebCore, Presto, etc. 
For Trident, the aggregator would have to serialize to HTML, which is 
pretty easy.

On the other hand, a div does not make Atom safe for tag soup 
concatenators, because the element names may be prefixed.
If element names are prefixed, string concatenation is not an option anyway.
If element names are not prefixed (as is the case with the overwheming 
majority of existing HTML), adding a div is exactly what makes things 
safe for simple string concatenators.

- Sam Ruby


Re: PaceXhtmlNamespaceDiv posted

2005-01-27 Thread Henri Sivonen
On Jan 27, 2005, at 22:30, Antone Roundy wrote:
I'm not in favor of mandating restrictions, because there are probably 
legitimate uses for anything we might try to protect people against.
The namespace div places restrictions on where namespace declarations 
appear and, therefore, limits the legitimate use of serializers that 
take care of namespace declarations.

-1 for the pace, still.
--
Henri Sivonen
[EMAIL PROTECTED]
http://iki.fi/hsivonen/


Re: PaceXhtmlNamespaceDiv posted

2005-01-27 Thread Antone Roundy
On Thursday, January 27, 2005, at 10:38  PM, Henri Sivonen wrote:
On Jan 27, 2005, at 22:30, Antone Roundy wrote:
I'm not in favor of mandating restrictions, because there are 
probably legitimate uses for anything we might try to protect people 
against.
The namespace div places restrictions on where namespace declarations 
appear and, therefore, limits the legitimate use of serializers that 
take care of namespace declarations.

-1 for the pace, still.
Okay, this one's obviously dead.  Let's just make sure we have examples 
that make how all these things work clear.