On Fri, 2006-04-21 at 18:26 +0200, Emmanuele Bassi wrote: > On Fri, 2006-04-21 at 17:15 +0100, Jamie McCracken wrote: > > We need namespaces/classes for metadata as raw DC is > > not appropriate and hierarchical rdf types are very inelegant (and > > unmanageable in tracker's DB). > > You are making a common mistake - I did that too, so a word of advice: > you don't write the spec to adapt it to the implementation; it's really > the other way around. Otherwise, you'll have the perfect implementation, > but other will have to pass through hell. Remember that fixing a bad > implementation is simple - fixing a bad spec is really not. > > You must design the spec *without* the implementation in mind. It's > harder: yes. It creates a *useful* spec: yes.
The W3C XMl Schema specification was designed as you propose, and a lot of people think it's an unmanageable mess. Daniel Veillard has all but given up on implementing them in libxml2, and Daniel is a Damn Fine Programmer who knows his shit with respect to XML. On the flip side, the RELAX NG specification was designed from the reference implementation. It doesn't have all the whiz-bang modeling features of W3C XML Schema, but for validation, it just can't be beat. Specifications without reference implementations suck. You just never know all the problems you're going to encounter until you hammer out the code. If I ran a standards body, I would demand two distinct and interoperable reference implementations and a complete set of conformance tests before I'd ever let anything be called a standard. -- Shaun _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list