W3C home > Mailing lists > Public > public-xml-processing-model-wg@w3.org > June 2006

Minimal requirements for XPath usage

From: Henry S. Thompson <ht@inf.ed.ac.uk>
Date: Wed, 07 Jun 2006 15:15:16 +0100
To: public-xml-processing-model-wg <public-xml-processing-model-wg@w3.org>
Message-ID: <f5bu06x9hmz.fsf@erasmus.inf.ed.ac.uk>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I have an action to say something about my preferences for how XPath
expressions work

Here's what I want simple pipelines to look like.  You can consider
this as a proposal either for the 'user' language in a two-language
approach, or the as-defaulted-as-possible version in a one-language
approach:

 <pipe>
  <step process="xsdValidate">
   <input name="schemaDoc" href="my.xsd"/>
  </step>
  <step process="xslt1.0">
   <input name="stylesheet" href="my.xsl"/>
  </step>
 </pipe>

Seems to me the minimum advance on that to allow conditionals should
look like this:

 <pipe>
  <choose>
   <when test="/root/@version < 3.0">
    <step process="xsdValidate">
     <input name="schemaDoc" href="stale.xsd"/>
    </step>
   </when>
   <otherwise>
    <step process="xsdValidate">
     <input name="schemaDoc" href="current.xsd"/>
    </step>
   </otherwise>
  </choose>
  <step process="xslt1.0">
   <input name="stylesheet" href="my.xsl"/>
  </step>
 </pipe>

In other words, the 'primary input' document is the context for the
evaluation of XPaths.

This still allows e.g.

 <pipe>
  <step process="xsdValidate">
   <input name="schemaDoc" href="my.xsd"/>
  </step>
  <choose>
   <when test="$format='print'">
    <step process="xslt1.0">
     <input name="stylesheet" href="print.xsl"/>
    </step>
   </when>
   <otherwise>
    <step process="xslt1.0">
     <input name="stylesheet" href="screen.xsl"/>
    </step>
   </otherwise>
  </choose>
 </pipe>

That is, 'free' variable references use parameter bindings from the
pipeline itself.

Resemblances to SXPipe altogether intentional.

I once again serve notice that I will push back quite hard against any
proposed syntax which does _not_ allow something at most a relabelling
away from my first example above.

ht
- -- 
 Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFEht90kjnJixAXWBoRAhvWAJwJsxzSycSVrAsI8fdVYUI9OlgR+QCfcWyr
VWSg8uppZzQFz1Aga627qZ8=
=nzLm
-----END PGP SIGNATURE-----
Received on Wednesday, 7 June 2006 14:15:28 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:21:47 GMT