Danny Ayers says -
"Although OPML is a sow’s ear, such is the capability of the web (and XML) that folks have been able to use it for things quite silk pursey. The built-in demo for OPod is the Open Ireland Directory OPML, and as the demo shows, that’s pretty sweet."Not to take away from Rowan's programming but I wouldn't agree that OPML is a sow's ear. Nevertheless its good to see someone groks the ideas of Feed Grazing (others think I'm nuts ;-) -
"Ubiquitous computing is on its way, and interaction paradigms that reflect those of the real world certainly stand a much better chance of working."Danny's right about 'static OPML directories' missing the mark. I don't know why I said that really - it's on-the-fly dynamic directories that I've had in mind as the fodder for feed grazers. But yes, OPML ones. Because, unlike Danny, I think the world is a hierarchy. Or at least we naturally think of it that way. Afterall time is a hierarchy (Centuries->Years->Months->Weeks->Days->Minutes->Hours->Seconds) and so is space (Kilometres->Metres->Centimetres-Millimetres). Maybe I'm not thinking about it academically enough but if the space-time continuum can be warped into a hierarchy that's good enough for me. ;-)
PS. I'll have to let Rowan answer the more technical areas of Danny's arguments.
* rant begins *
There is one overarching problem with OPML - it doesn't have a usable specification. Without that, there isn't a well-defined common language, and interop is seriously handicapped.
There are certain technical issues, e.g. you can't put markup in text attributes without escaping it (which means XML tools can't use it directly, and leads to ambiguity further down the line); it doesn't have a namespace which limits mixing with other XML vocabularies. But these issues could largely be covered were there a decent spec.
None of this would matter if it actually brought anything to the table that wasn't already available with XML in general. Essentially all you've got is XML with preset name for elements and mixed content is forbidden. Sure, it can be used for lists/hierarchies of feeds, but then so can a lot of other formats. Try doing anything more interesting with it and you soon get stuck.
* rant ends *
The world is a hierarchy? (Or as you put it better, at least we think of it that way). The cat that is sat on the mat (literally, on the desk to my left) is occupying a certain region of space, for a certain period of time. Even if you have those units of space/time in hierarchies, where are the reference points? Whatever, you already have two hierachies. Ok, she's a cat subClassOf Mammal subClassOf LivingCreature... and she's called Sambuca, she's about 4(?) years old. What hierarchy does all that fit in?
There is loads of academic/computer science work on describing things (usually classified under Knowledge Representation), the foremost side on the web right now being Description Logics (the Web Ontology Language (OWL) is there, RDF is nearby). Here's Sambuca in RDF:
http://semtext.org/pets/profile.xml
(view source for RDF/XML, here are the statements in it: http://www.w3.org/RDF/Validator/ARPServlet?URI=http://semtext.org/pets/profile.xml
)
But you don't have to go far to run into problems with simple hierarchical world models. Sambuca is a cat. She isn't a subcategory of cat. Try expressing the difference in OPML.
Posted by: Danny | February 07, 2006 at 11:05 AM