- From: Norman Walsh <Norman.Walsh@Sun.COM>
- Date: Thu, 21 Dec 2006 09:54:08 -0500
- To: public-xml-processing-model-wg@w3.org
- Message-ID: <87hcvpnvu7.fsf@nwalsh.com>
/ Norman Walsh <Norman.Walsh@Sun.COM> was heard to say: | I don't think I'm ready to spend telcon time on it, but maybe it's | time to start sketching out our defaulting story in email. Recasting it as a story without names. Here's a pipeline: <p:pipeline name="fig1" xmlns:p="http://www.w3.org/2006/11/pipeline"> <p:input port="source" sequence="no"/> <p:input port="schemaDoc" sequence="yes"/> <p:output port="result"> <p:pipe step="s2" port="result"/> </p:output> <p:step type="p:xinclude" name="s1"> <p:input port="source"> <p:pipe step="fig1" port="source"/> </p:input> </p:step> <p:step type="p:validate" name="s2"> <p:input port="source"> <p:pipe step="s1" port="result"/> </p:input> <p:input port="schema"> <p:pipe step="fig1" port="schemaDoc"/> </p:input> </p:step> </p:pipeline> If we establish the rule that a component with one unspecified input is automatically connected to the output from the preceding sibling, then we get: <p:pipeline name="fig1" xmlns:p="http://www.w3.org/2006/11/pipeline"> <p:input port="source" sequence="no"/> <p:input port="schemaDoc" sequence="yes"/> <p:output port="result"> <p:pipe step="s2" port="result"/> </p:output> <p:step type="p:xinclude" name="s1"> <p:input port="source"> <p:pipe step="fig1" port="source"/> </p:input> </p:step> <p:step type="p:validate" name="s2"> <p:input port="schema"> <p:pipe step="fig1" port="schemaDoc"/> </p:input> </p:step> </p:pipeline> I don't see how to extend that rule to include parents. If we add the rule that a component with one output named is automatically attached to the single output from its last child, we get: <p:pipeline name="fig1" xmlns:p="http://www.w3.org/2006/11/pipeline"> <p:input port="source" sequence="no"/> <p:input port="schemaDoc" sequence="yes"/> <p:output port="result"/> <p:step type="p:xinclude" name="s1"> <p:input port="source"> <p:pipe step="fig1" port="source"/> </p:input> </p:step> <p:step type="p:validate" name="s2"> <p:input port="schema"> <p:pipe step="fig1" port="schemaDoc"/> </p:input> </p:step> </p:pipeline> And finally, if we say that steps are only optionally named, then we get: <p:pipeline name="fig1" xmlns:p="http://www.w3.org/2006/11/pipeline"> <p:input port="source" sequence="no"/> <p:input port="schemaDoc" sequence="yes"/> <p:output port="result"/> <p:step type="p:xinclude"> <p:input port="source"> <p:pipe step="fig1" port="source"/> </p:input> </p:step> <p:step type="p:validate"> <p:input port="schema"> <p:pipe step="fig1" port="schemaDoc"/> </p:input> </p:step> </p:pipeline> Here, I've assumed that it's an error if you attempt to use defaulting and there's more than one choice (e.g, if the preceding sibling has more than one output or you've left more than one input unspecified). On the whole, I like my original name-based rules better. I think they're easier to explain and provide for slightly more abbreviation. Be seeing you, norm -- Norman Walsh XML Standards Architect Sun Microsystems, Inc.
Received on Thursday, 21 December 2006 14:54:23 UTC