
Hi Freek; On 8/16/11 10:48 AM, thus spake Freek Dijkstra:
Jason wrote:
Even though its a special namespace, it can be reduced to the base which should make services happy.
Freek wondered:
What do you mean with "special" namespace?
Wait, you mean a Chameleon namespace? (you referred to http://books.xmlschemata.org/relaxng/relax-CHP-11-SECT-5.html earlier)
I explicitly to NOT make that assumption. In fact, I'm very hesitant to use the concept of Chameleon namespaces, given the warning at the end of this page:
Chameleon schemas are very controversial. [...] Chameleon schemas work contrary to most developers' namespace expectations, and in the process remove most of the value of using namespaces. For this reason I would recommend you be very cautious when using them!
And this comes from the prime source on the topic...
I do like the concept of subclassing, and I think we can (and should) include that (chameleon namespaces are a special case of subclassing). However, without proper consulting with a true XML expert, who thinks Chameleon namespaces is really the best solution to our problem, I am very hesitant to include that concept in NML.
The only advice I can give you is based on the experience of NMC/perfSONAR. This is the basic design we have tried to follow over the prior years of design, implementation, and use. It has allowed us to keep a basic structure specified, and yet allow extensibility to other data formats not envisioned in the original projects (e.g. new measurements can be specified, and implemented for a given service type very easily - we do not need to re-write the base each time this occurs). To date the base has not changed in 5 years, I believe this fact alone points to extensible schemas being a good way to foster interoperability and encourage adoption. Thanks; -jason