Re: [EXTERNAL] - Getting rid of @sequence="true/false"?

And I'd like @as being required, to strongly type ports.

Christophe


Le 25/09/2017 à 15:06, Christophe Marchand a écrit :
> +1
>
> As a teacher, it's easy to explain, the students should be fluent in 
> XQuery / Xslt...
>
> Christophe
>
>
> Le 25/09/2017 à 13:08, Vojtech Toman a écrit :
>> +1
>>
>> Vojtech
>>
>> -----Original Message-----
>> From: Imsieke, Gerrit, le-tex [mailto:gerrit.imsieke@le-tex.de]
>> Sent: Monday, September 25, 2017 12:58 PM
>> To: xproc-dev@w3.org
>> Subject: Re: [EXTERNAL] - Getting rid of @sequence="true/false"?
>>
>> I don’t think it will fit well into content-types.
>>
>> But we can think of allowing the as attribute also on input and 
>> output ports, like this:
>>
>> <p:input port="source" as="document-node(element(*))*"/>
>>
>> or
>>
>> <p:output port="result as="document-node()"/>
>>
>> As long we don’t permit arbitrary XDM items on ports, we need to 
>> raise an error though (statically?) if the declared sequence type is 
>> atomic, a map, or anything else except item() or document-node().
>>
>> Gerrit
>>
>> On 25.09.2017 12:45, Kraetke, Martin, le-tex wrote:
>>> Naturally, sequence is the default for 3.0 but I agree that pipeline
>>> authors should have the chance to change this. However, there are
>>> cases where you want to specify the number of possible documents more
>>> precisely. I would suggest that we drop the sequence attribute and
>>> instead specify that a pipeline author can add the operators "?", "*"
>>> and "+" to the content-type attribute, e.g:
>>>
>>> <p:output port="result" content-type="text/xml+"/>
>>>
>>> best, Martin
>>>
>>> Am 23.09.2017 um 08:06 schrieb Imsieke, Gerrit, le-tex:
>>>> The weird errors are probably the processor’s fault. A processor
>>>> should be able to tell you (and should in fact tell you) which step
>>>> in which pipeline expected a sequence / a single document and which
>>>> input that it received or emitted violated this restriction.
>>>>
>>>> -----
>>>>
>>>> If we think that “zero to many documents arriving on a port” is the
>>>> new
>>>> normal: What about keeping the sequence attribute on p:input and
>>>> p:output but make it true by default?
>>>>
>>>> Gerrit
>>>>
>>>> On 22.09.2017 15:21, Ari Nordström wrote:
>>>>> Hi,
>>>>>
>>>>> Getting rid of @sequence seems like a good idea to me. I know I've
>>>>> had it set to false on numerous occasions, only to get weird errors
>>>>> and an 'oh' moment when realising why. Having everything be a
>>>>> sequence makes sense to me.
>>>>>
>>>>> Having said that, I like #3 but need to think about it more.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> /Ari
>>>>>
>>>>>
>>>>> On 22 September 2017 at 15:05, Vojtech Toman <vtoman@opentext.com
>>>>> <mailto:vtoman@opentext.com>> wrote:
>>>>>
>>>>>      I think removing sequence=true/false is a good idea. In the
>>>>> ideal
>>>>>      world, everything is a sequence :)
>>>>>
>>>>>      My personal favorite is option 2. (To be honest, I don't quite
>>>>>      understand option 1 - is this some sort of backward
>>>>> compatibility
>>>>>      mode for old XProc 1.0 pipelines?)
>>>>>
>>>>>      Option 3 (implicit looping) looks fancy but I think it would
>>>>> work
>>>>>      only with simple steps that have only one input port. For steps
>>>>> that
>>>>>      have multiple non-sequence input ports, it is far from clear to
>>>>> me
>>>>>      how it could work. Would it loop? Would it loop over all
>>>>>      combinations of the inputs (implications on streaming)? Etc.
>>>>> Also,
>>>>>      there would probably have to be some mechanism to tell the
>>>>> processor
>>>>>      whether it should loop over a port or not (because sometimes you
>>>>> do
>>>>>      want to pass a sequence of items to the step). Consider, for
>>>>>      example, the p:xquery step: it takes a sequence of documents on
>>>>> the
>>>>>      "source" port (the default collection) and the XQuery on the 
>>>>> "query"
>>>>>      port. You definitely don't want to loop over "source" but you
>>>>> may or
>>>>>      may not want to looping over "query".
>>>>>
>>>>>      Regards,
>>>>>      Vojtech
>>>>>
>>>>>      -----Original Message-----
>>>>>      From: Achim Berndzen [mailto:achim.berndzen@xml-project.com
>>>>>      <mailto:achim.berndzen@xml-project.com>]
>>>>>      Sent: Friday, September 22, 2017 2:41 PM
>>>>>      To: XProc Dev
>>>>>      Subject: [EXTERNAL] - Getting rid of @sequence="true/false"?
>>>>>
>>>>>      Hi all,
>>>>>
>>>>>      A while ago, @ndw and I had a mail conversation about sequence
>>>>> ports
>>>>>      in XProc 3.0. In order to make it easier to learn XProc, we
>>>>>      discussed about elimination non-sequence ports and @sequence, so
>>>>>      that in XProc 3.0 all steps accept sequences on all ports.
>>>>>
>>>>>      Following this line of thought, some options are possible:
>>>>>
>>>>>      1. Nothing changes: All steps accepting sequences on a port in
>>>>> XProc
>>>>>      1.0 will do so in XProc 3.0. Steps that do not accept a sequence
>>>>>      will only raise an error, when an empty sequence is delivered.
>>>>> If
>>>>>      not, they we process the first document in the sequence as
>>>>> described
>>>>>      and discard all others.
>>>>>
>>>>>      2. We simply move task of raising an error to the step and its
>>>>>      semantic: Instead of having one global error (XD0006) we could
>>>>> have
>>>>>      more informative errors like (XS????: It is a dynamic error if
>>>>> not
>>>>>      exactly one document appears on port "stylesheet"
>>>>>      of p:xslt).
>>>>>
>>>>>      3. Implicit looping: One possible consequence I personally like
>>>>> very
>>>>>      much is the idea, that some steps (like p:add-attribute,
>>>>> p:delete,
>>>>>      p:insert etc.) do an implicit looping for the sequence. This
>>>>> might
>>>>>      be more natural the XProc newbies and may appear attractive to
>>>>>      current users, because in some cases you will not need 
>>>>> "p:for-each"
>>>>>      any more. This would be inline with p:viewport in XProc 3.0 with
>>>>>      does implicit looping. For other steps, where implicit looping
>>>>> does
>>>>>      not make sense (e.g. p:compare or p:http-request) we could
>>>>> choose
>>>>>      option (1) or (2).
>>>>>
>>>>>      4. Bad idea, keep it like it is: You might say that the
>>>>> distinction
>>>>>      between a document and a sequence of documents is very easy to
>>>>> grasp
>>>>>      and that it is perfectly established in XSLT, XQuery and other
>>>>>      X-technologies. Also you might argue, that in XProc 3.0 we will
>>>>> have
>>>>>      mixed sequences with XML and non-XML documents and we would need
>>>>> a
>>>>>      special treat when p:add-attribute is applied to a sequence of
>>>>> xml
>>>>>      documents, JPEGs and texts.
>>>>>
>>>>>      What do you think?
>>>>>
>>>>>      Greetings from Germany,
>>>>>      Achim
>>>>>      ------------------------------------------------
>>>>>      Achim Berndzen
>>>>>      achim.berndzen@xml-project.com
>>>>> <mailto:achim.berndzen@xml-project.com>
>>>>>
>>>>>
>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__www.xml-2Dprojec
>>>>> t.com&d=DwIFAg&c=ZgVRmm3mf2P1-XDAyDsu4A&r=aJZr6mdNzy-qsGbVYWF8KIxwje
>>>>> 5rrbk2V7QfMr35EhU&m=cPHeErshVOYtQvSxAMDAic7JkUGz2HP66H7HpBWsndQ&s=mH
>>>>> iMaFmT9YqrWTQHwBnXpOa4VbbxxpA4Y2cOjvacjmY&e=
>>>>>
>>>>>
>>>>>
>>>>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__www.xml-2Dproje
>>>>> ct.com&d=DwIFAg&c=ZgVRmm3mf2P1-XDAyDsu4A&r=aJZr6mdNzy-qsGbVYWF8KIxwj
>>>>> e5rrbk2V7QfMr35EhU&m=cPHeErshVOYtQvSxAMDAic7JkUGz2HP66H7HpBWsndQ&s=m
>>>>> HiMaFmT9YqrWTQHwBnXpOa4VbbxxpA4Y2cOjvacjmY&e=>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>> -- 
>> Gerrit Imsieke
>> Geschäftsführer / Managing Director
>> le-tex publishing services GmbH
>> Weissenfelser Str. 84, 04229 Leipzig, Germany Phone +49 341 355356 
>> 110, Fax +49 341 355356 510 gerrit.imsieke@le-tex.de, 
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__www.le-2Dtex.de&d=DwIDaQ&c=ZgVRmm3mf2P1-XDAyDsu4A&r=aJZr6mdNzy-qsGbVYWF8KIxwje5rrbk2V7QfMr35EhU&m=Jb505Qo7vMf2dajQCVVdR2Emk-_gR88QQPpeC3PFA1o&s=LEGXFnHcgdz9AXrTkawKqKYcPykMpQ2vaiXjoAo0dMA&e=
>>
>> Registergericht / Commercial Register: Amtsgericht Leipzig 
>> Registernummer / Registration Number: HRB 24930
>>
>> Geschäftsführer: Gerrit Imsieke, Svea Jelonek, Thomas Schmidt, Dr. 
>> Reinhard Vöckler
>> ------------------------------------------------------------------------------ 
>>
>> Meet us at Frankfurt Book Fair
>> Hall 4.2, L 72.
>>
>> More at 
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.le-2Dtex.de_en_buchmesse.html&d=DwIDaQ&c=ZgVRmm3mf2P1-XDAyDsu4A&r=aJZr6mdNzy-qsGbVYWF8KIxwje5rrbk2V7QfMr35EhU&m=Jb505Qo7vMf2dajQCVVdR2Emk-_gR88QQPpeC3PFA1o&s=qczjdAsp8eaLo6rh-DDZaO76BiNHIOQPR9fTPoTfYVw&e=
>>
>
>
>

Received on Monday, 25 September 2017 13:15:50 UTC