Thanks everyone for this really interesting discussion. I have added
a note to this effect to the latest atom-owl ontology [1].
In Atom-Owl we could easily do both.
[] :content "<xhtml:div xml:lang="fr">Oui!</xhtml:div>"^:xhtml.
or we could have
[] :content "Oui!"@fr^:xhtml .
or
[] :content [ :xhtml "oui";
:lang "en" ].
It would be simplest I suppose to have the :xhtml type be defined as
always having an <div ...> element. Except that of course it would
look odd for xhtml content that contains an <html> base tag such as
<div>
<html><head>...<body>...</body></head>
</div>
From this discussion it looks like the most reasonable would be to
strip the <div> element. In which case one may wonder what the whole
purpose of putting the <div> in the content really was in the first
place.
Henry
[1] https://sommer.dev.java.net/atom/2006-06-06/awol.html#term_xhtml
On 28 Jun 2006, at 23:53, Antone Roundy wrote:
On Jun 28, 2006, at 3:10 PM, Robert Sayre wrote:
The content in the entries below should be handled the same way:
<entry xml:lang="en" xml:base="http://example.com/foo/">
...
<content type="xhtml">
<xhtml:div xml:lang="fr" xml:base="http://example.com/
feu/"><xhtml:a href="axe.html">axe</xhtml:a></xhtml:div>
</content>
</entry>
<entry xml:lang="en" xml:base="http://example.com/foo/">
...
<content type="xhtml" xml:lang="fr" xml:base="http://
example.com/
feu/">
<xhtml:div ><xhtml:a href="axe.html">axe</xhtml:a></
xhtml:div>
</content>
</entry>
Of course the end result of both should be identical. Is that what
you mean by "should be handled the same way"? The question is, if
the xhtml:div is stripped by the library before handing it off to
the app, how is the app going to get the attributes that were on
the div? Is the library going to push those values down into the
content or act as if they were on the atom:content element (or
something similar to that)?
BTW, it just occurred to me that pushing them down into the content
won't work. Here's an example where that would fail:
<entry xml:lang="en">
...
<content type="xhtml">
<xhtml:div xml:lang="fr">Oui!</xhtml:div>
</content>
</entry>
Notice that there are no elements inside the xhtml:div for xml:lang
to be attached to (and even if there were any, any text appearing
outside of them would not have the correct xml:lang attached to it).
So it looks like the options (both of a which a single library
could support, of course) are:
* Strip the div, but provide a way to get the attributes that were
on it
or
* Leave the div