[dsdl-comment] Re: Want NVDL incorporated into xproc? Now's the time to speak up!

From: Innovimax SARL <innovimax@gmail.com>
Date: Fri Sep 26 2008 - 11:39:45 UTC

Dear,

We indeed have a lot of discussion on this point, but the main limit (that
the first working draft of XProc didn't have, but to be fair, had a lot of
lack) is that we don't have the possibility to declare that a step can have
any number of output/input
<p:output port="*" sequence="yes"/>
<p:input port="*" sequence="yes"/>
in the signature of the step

If XProc doesn't provides this, we are stuck with generating a special
document that would contain the whole dispatched structure on its output

But the most important problem is that NVDL is missing the notion of port
for the moment (which is what Murata is proposing in his email), and this
lack makes the attempt to ask for a construct that is not yet usable more
tricky

So to summarize, what we have on table is

1) a generic p:validate-with-nvdl step

<p:declare-step type="p:validate-with-nvdl">
     <p:input port="source" primary="true"/>
     <p:input port="script" sequence="true"/>
     <p:output port="result" primary="true"/>

     <p:output port="dispatched-result" />
     <p:option name="assert-valid" select="'true'"/> <!--
boolean -->
</p:declare-step>

Where "result" port is the full document after NVDL validation and the
"dispatched-result" is some structure to-be-defined which could contains all
the aggregated results

2) a more complex couple of steps that depends on new feature of NVDL (a.k.a
named port) and a missing feature in XProc

 <p:nvdl-dispatch name?= NCName>
  <p:input port="nvdl"/>
  <p:input port="source" primary="yes"/>
  p:output+
  </p:nvdl-dispatch>

and

<p:nvdl-reconstruct name?= NCName >
   <p:input port="nvdl"/>
   p:input+
   <p:output port="result"/>
 </p:nvdl-reconstruct>

Regards,

Mohamed Zergaoui

On Fri, Sep 26, 2008 at 12:55 PM, MURATA Makoto <murata@hokkaido.email.ne.jp
> wrote:

> I have been thinking about XProc and NVDL for about a year, and I have
> had a lot of discussions about this topic with Mohamed ZERGAOUI and
> Hisashi Miyashita.
>
> I wrote the following memo one year ago. Ideally, we have to extend
> NVDL first and then introduce NVDL actions to XProc.
>
> The missing piece now is NVDL reconstruction: we have dispatching, but
> we also want to reconstruct original XML doducments from validation
> candidates. NVDL dispatching and reconstruction would be very useful
> actions for XProc.
>
> Hisashi Miyashita has already implemented NVDL reconstruction and his
> prototype (publicly available) is very interesting.
>
> After I come back from the SC34 meeting in Jeju, I will write more
> about this topic.
>
> > 1. Extensions to the NVDL syntax
> >
> > 1) Port
> >
> > Introduce a new action "port". It has one mandatory attribute "name",
> > which specifies an XProc port name.
> >
> > Different "name" attributes shall not specify the same name.
> >
> > 2) ID
> >
> > Introduce an optional attribute "id" to all action elements.
> >
> > Different "id" attributes shall not specify the same name.
> >
> >
> > 2. XProc Steps for NVDL
> >
> > 1) nvdl-dispatch
> >
> > <p:nvdl-dispatch name?= NCName>
> > <p:input port="nvdl"/>
> > <p:input port="source" primary="yes"/>
> > p:output+
> > </p:nvdl-dispatch>
> >
> > The input port "nvdl" should contain an NVDL script.
> >
> > The input port "source" should contain an compound XML document.
> >
> > The sequence attribute shall be "yes" for all output ports, while it
> > shall be "no" for the input port.
> >
> > Every output port declared by p:output should be declared in the
> > NVDL Script by the attribute "name". Likewise, every port
> > specified in the NVDL script should be declared by p:output.
> >
> > 2) nvdl-reconstruct
> >
> > <p:nvdl-reconstruct name?= NCName href=IRI>
> > <p:input port="nvdl"/>
> > p:input+
> > <p:output port="result"/>
> > </p:nvdl-reconstruct>
> >
> > The input port "nvdl" contain an NVDL script.
> >
> > The other input ports contain validation candidates.
> >
> > The sequence attribute shall be "yes" for all intput ports but the
> > "nvdl" port, while it shall be "no" for the output port "result".
> >
> > Every input port declared by p:input should be declared in the
> > NVDL Script by the attribute "name". Likewise, every port
> > specified in the NVDL script should be declared by p:input.
> >
> > 3. Dispatching by nvdl-dispatch
> >
> >
> > 4. Reconstruction by nvdl-reconstruct
>
> --
> MURATA Makoto <murata@hokkaido.email.ne.jp>
>
> --
> DSDL comments
>
> To unsubscribe, please send a message with the
> command "unsubscribe" to dsdl-comment-request@dsdl.org
> (mailto:dsdl-comment-request@dsdl.org?Subject=unsubscribe)
>
>

-- 
Innovimax SARL
Consulting, Training & XML Development
9, impasse des Orteaux
75020 Paris
Tel : +33 9 52 475787
Fax : +33 1 4356 1746
http://www.innovimax.fr
RCS Paris 488.018.631
SARL au capital de 10.000 
--
DSDL comments
To unsubscribe, please send a message with the
command  "unsubscribe" to dsdl-comment-request@dsdl.org
(mailto:dsdl-comment-request@dsdl.org?Subject=unsubscribe)
Received on Fri Sep 26 13:39:39 2008

This archive was generated by hypermail 2.1.8 : Fri Sep 26 2008 - 14:33:04 UTC