In plain terms, what are the consequences of doing the following:
<feed xmlns="http://www.w3.org/2005/Atom">
<id>...</id>
...
<entry>
<id>...</id>
...
</entry>
...
</feed>
While we do it all the time with Atom, this is an example of a document embedded inside another - Atom entry inside Atom feed. There are a number of issues lurking under the surface that one has to consider before copying the entry bits in to the feed itself. In general, there are many issue to consider while embedding one XML document inside another.
These issues don't surface if you are managing all the bits yourself, i.e., you store the original bits of everything and normalize to a common set of encodings, namespaces, signatures, entities, and so on. However, if you are aggregating content from different publishers, then it's a different ball game. I started thinking about these issues as a result of Mark Nottingham's feedback about the Atom in-line I-D.
Here are some of the issues I could think about (and manifestations in the case of Atom):
- Duplication of content (e.g., <atom:title>)
- Inherited values for metadata (e.g., xml:lang, xml:base)
- Character set and encoding (for XML and binary content)
- Entity declarations
- Namespace declarations
- Digital signatures
- Protocol metadata (ETag, Content-Length, Content-Type)


0 comments:
Post a Comment