[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Concerned about the increasing reliance on XPath

  • From: Stephen D Green <stephengreenubl@gmail.com>
  • To: Philip Fearon <pgfearo@googlemail.com>
  • Date: Mon, 9 May 2011 19:45:43 +0100

Re:  Concerned about the increasing reliance on XPath
On 9 May 2011 18:52, Philip Fearon <pgfearo@googlemail.com> wrote:
> Yes, it seems each vendor has adopted their own 'harness' for setting
> the XPath evaluation context so that saved XPaths are portable.

Yes, but this highlights my issue; they are portable *within instances of
that implementation and not (as much as we'd like) between implementations*


>
> SketchPath's approach is to create grouped sets of XPath expressions
> that are saved in simple XML files so they can be reused easily as a
> resource in other applications.
> (These same XML files are also used to set parameters and processor
> settings for an XSLT test tool).
>
> As well as the XPath itself, additional metadata is stored for each expression:
> 1. A name for the expression - other expressions can use this name to
> reuse the expression as a variable
> 2. An XPath identifying the context node for evaluation
> 3. A descriptive comment

Yes, my interest has been in Tamelizer (GoogleCode project) and this
does the same

>
> Each XML file includes a set of namespace bindings to be used for
> expression evaluation - (these are actually just XPath expressions in
> a special 'namespaces' group with names corresponding to the namespace
> prefix)

Tamelizer uses TAML-X, an XPath profile of TAML
(OASIS-open.org, potential standard in progress)
which puts namespace bindings in each TAML-X
file. I didn't realise it but it might be that more portability
would come by putting the bindings into each TAML
test assertion (as I recently suggested for Schematron
too) so that they can be copied and pasted between
files.

I do notice though that some standards are appearing
which express test assertions in a spec using XPath
and I wonder if they have thought about these details
like namespace bindings and making explicit any defaults.

>
> - A sample XML fof the grouped XPath expressions and their metadata is
> shown below
>
> <?xml version="1.0" encoding="UTF-8"?>
> <cwb:expressions xmlns:cwb="http://www.qutoric.com/2010/XPathCollection">
> <cwb:xsl-param group="" source=""/>
> <cwb:namespace-declarations>
> <cwb:expression name="spec">
> <cwb:main>'http://expath.org/ns/xmlspec'</cwb:main>
> <cwb:comment>Created: 09/05/2011 18:18:45</cwb:comment>
> </cwb:expression>
> </cwb:namespace-declarations>
> <cwb:xpath>
> <cwb:global>
> <cwb:expression name="code-1">
> <cwb:main>p/code</cwb:main>
> <cwb:context>/spec/body/div1[3]/div2[2]</cwb:context>
> <cwb:comment>Created: 09/05/2011 18:24:16</cwb:comment>
> </cwb:expression>
> </cwb:global>
> <cwb:local>
> <cwb:group name="alpha">
> <cwb:expression name="header-1">
> <cwb:main>/spec/header</cwb:main>
> <cwb:comment>Created: 09/05/2011 18:16:13</cwb:comment>
> </cwb:expression>
> </cwb:group>
> <cwb:group name="beta">
> <cwb:expression name="head-1">
> <cwb:main>/spec/body/div1[1]/head</cwb:main>
> <cwb:comment>Created: 09/05/2011 18:17:44</cwb:comment>
> </cwb:expression>
> <cwb:expression name="head-2">
> <cwb:main>/spec/body/div1[1]/head</cwb:main>
> <cwb:comment>Created: 09/05/2011 18:18:00</cwb:comment>
> </cwb:expression>
> <cwb:expression name="Name1">
> <cwb:main>count(spec/body/div1/div2)</cwb:main>
> <cwb:comment>Created: 09/05/2011 18:19:28</cwb:comment>
> </cwb:expression>
> </cwb:group>
> </cwb:local>
> </cwb:xpath>
> <cwb:recyclebin/>
> </cwb:expressions>

Yes, I like that.

Maybe there would be more portability if your XML language could
also allow every group to inlude the bindings though, like this:

             <cwb:group name="alpha">
                <cwb:expression name="header-1">
                    <cwb:namespace-declarations>
                        <cwb:expression name="spec">
                            <cwb:main>'http://expath.org/ns/xmlspec'</cwb:main>
                            <cwb:comment>Created: 09/05/2011
18:18:45</cwb:comment>
                        </cwb:expression>
                    </cwb:namespace-declarations>
                    <cwb:main>/spec/header</cwb:main>
                    <cwb:comment>Created: 09/05/2011 18:16:13</cwb:comment>
                </cwb:expression>
            </cwb:group>


See also my own XPath based test assertions for the Universal Business
Language using the TAML-X profile

http://lists.oasis-open.org/archives/tag-comment/201104/zip00000.zip
and earlier ones here for a previous version of TAML
http://lists.oasis-open.org/archives/ubl-comment/201003/msg00001.html

Maybe here too each test assertion should optionally allow
the namespaces to be declared for it locally.

---

Stephen D Green

>
> -----------
>
> Phil Fearon
> http://qutoric.com
>
> On Mon, May 9, 2011 at 5:13 PM, G. Ken Holman
> <gkholman@cranesoftwrights.com> wrote:
>> At 2011-05-09 16:49 +0100, Stephen D Green wrote:
>>>
>>> I think we tend to hope that XPath expressions can be
>>> written such that they are immune from such implementation
>>> specifics
>>
>> XPath cannot function in a vacuum.
>>
>
> _______________________________________________________________________
>
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
>
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> subscribe: xml-dev-subscribe@lists.xml.org
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>
>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.