Re: Directed vs. Generic syntax reprise (Was: Re: Syntax noodling)

Jeni Tennison wrote:
> 
> <p:pipeline name="my:process">
>   ...
> </p:pipeline>
> 
> in the same file as a reference like:
> 
> <my:process ... />
> 
> Schema validation goes out the window. 

That's not necessarily true.  If the schema is written correctly, it
can be extended to allow users to supply definitions of their component
syntax.

In smallx, I took the basic idea that each step had its own parser. 
There is a generic "component" step that allows you to invoke your
own component with any special syntax.

The problem with each step having its own directed syntax is that you
need to know something about that syntax to parse out inputs and
outputs.

I think we need to have a generic way of invoking a component with
parameters, inputs, and outputs.  Having a directed syntax is an
import shortcut in that specification.  Maybe we need to have
a two-fold strategy:

1. We always have a generic way to invoke a component as a step:

    <p:step name="p:xslt">
       <p:input name="source" ref="..."/>
       <p:input name="stylesheet" ref="..."/>
       <p:output name="result"/>
    </p:step>

2. We consider a vocabulary shortcut that can be user-defined for
    steps as a second step in this process.

I attempted (2) in smallx pipeline specification [1] in section 2.1.3.
Unfortunately, I never got around to implementing it.

The idea was based on having an XSLT transformation that "compiled"
a custom step definition into a standard step.

I also had a way to write code (e.g. Java) to implement the
transformation for (2).

While I really, really want (2), I know that we need something like
(1) to start.

[1] https://smallx.dev.java.net/pipeline-spec.html

--Alex Milowski

Received on Thursday, 11 May 2006 14:43:48 UTC