From: Clark C. E. <cc...@cl...> - 2002-10-01 19:15:00
|
On Tue, Oct 01, 2002 at 10:10:55AM -0600, why the lucky stiff wrote: | A popular convention in the Ruby kingdom is to classify objects by their | methods. (Like Interfaces in Java.) Any class which defines an 'each' | iterator can use the Enumerable mixin to gain other similiar methods (such | as 'grep' and 'each_with_index'). Yes. Mix-ins are big with Python as well. Also there are two "big" use cases for interleving in XML land: 1) XSLT is entirely based on the concept, within a "template" object will be content from one or more namespaces, and perhaps within them, other calls in the XSLT namespace to pull values... <xslt:template ...> <html:body> <xslt:value-of ...> 2) XHTML mixing with other domains. For example, you may want to have some symbolic content readable by a browser. Thus, you mix both xhtml and your prefix, quite liberally. XHTML is desined to skip intermediate nodes from namespaces that it doesn't know about; instead only validating using content from the XHTML namespace. An example of this usage is RDDL. It is primarly XHTML but with RDDL objects litterred everwhere (using just elements and attributes). Anyway, I wanted to stress that I don't deny that this is a use case... I just think that it is probably less than 5% of the documents out there; and it brings with it complexity. Also, I have a hunch that one could accomplish the same "mixing" at the schema level rather than at the document level. Thus, we'd want some sort of cross-product operator for schemata... so that one schema can be dynamically constructed as the cross between two existing schemata (perhaps then sighting restrictions). So; I'd like to keep core yaml "simple" and see if this complexity of interleaving can be done at the shema level; if not, then we will have to come back and revisit this. For now, perhaps we can make sure that some prefix character is allowed after ! but not part of the production. I'm sure that this exists, but it may be nice to verify. | If there was a user out there that wanted to write a plugin class for Yod, | and they named it outside of the yaml4r.sf.net domain, they could still | add it to the yod/PageContent type class in !okay/schema. I believe RELAX-NG | has a similiar mechanism. *nods* Clark |