Re: ease of use proposal - adding 'from' attribute to step to define connection

Jim,

I fully agree with Florent. In a previous message, you wrote that 
connecting to non-primary ports has happened more frequently in practice 
than the XProc 1.0 WG anticipated.

While the existing syntactic shortcuts have proven to be useful in 
linear pipelines, there is demand for a more compact notation in cases 
that still suffer from excessive verbosity. Connecting to a single 
non-primary port (your contested third item) happens more frequently 
than connecting to multiple ports (second item). If we want to cater to 
current and future users’ demand, let’s go all the way and have all 
three connection shortcuts:

– A from attribute for holding reference tokens to the outputs of other 
steps;
– Where References to multiple ports are space separated;
– The ability to refer to a certain non-primary port of another step in 
such a reference token.
I don’t care whether these tokens are formed like step(#port)? or like 
(port@)?step.

As Florent said, it’s almost syntactic sugar. There is a bijection 
between the short and the long form, not by lexical transformation of 
one form into the other though – some pipeline analysis wrt primary 
ports will be necessary.

In my view there is no need to engage in philosophical discussions 
whether we have ID/IDREF relationships when we refer to ports of steps. 
The tuple of port name and step name has to be unique within a step 
declaration; attaching a single ID (@xml:id) to this is purely optional. 
Please note, however, that in contrast to a given @xml:id value, a given 
tuple of step/port names may occur more than once in a single XML file. 
Consider p:library as an example for this.

Furthermore, there is no need to doubt whether the short form is still 
XML. Of course it is. What we are suggesting is not a textual form, like 
rnc is to rng. In order to prove that point, I’ll be happy to provide 
XSLT 2 stylesheets that convert short form XML into long form XML and 
vice versa, without resorting to unparsed-text() (only with resorting to 
tokenize() or xsl:analyze-string).

Take this as a heavily invested user’s 2 ct.

Gerrit


On 01.12.2014 11:44, Florent Georges wrote:
>    Thanks Jim.  And no, I am not in a hurry :-)  Just a couple of points:
>
>      - your 2d and 3d points are equally a "departure from using XML
> structure to represent any single one info"; point 2 is using a
> space-separated list of tokens in a string, instead of using a
> repeatable element, whilst point 3 is using a special character to
> separate both parts of a string as a pair of strings
>
>      - there is already a syntax using exclusively XML structure to
> represent information, and this is exactly what the syntax
> simplification is looking at: providing an alternative to the verbose
> XML syntax
>
>    This is a perma-thread about XML data modelling.  The best example
> of which, I believe, is the following question.  Is 2015-01-01 a
> legitimate data type, or should it rather be
> <date><year>2015</year><month>1</month><day>1</day></date>?
>
>    As we have the XML structure approach already, offering an
> alternative would just be listening to all people having been asking
> for a simplification, for years.  That some people will not use it
> should not prevent the simplification to happen.  If we were talking
> about stopping developing the XML structured version, or reverting it
> back, I could understand those concerns, but I think they are quite
> irrelevant when discussing an alternative.
>
>    Regards,
>

-- 
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, http://www.le-tex.de

Registergericht / Commercial Register: Amtsgericht Leipzig
Registernummer / Registration Number: HRB 24930

Geschäftsführer: Gerrit Imsieke, Svea Jelonek,
Thomas Schmidt, Dr. Reinhard Vöckler

Received on Monday, 1 December 2014 13:09:05 UTC