[
Lists Home |
Date Index |
Thread Index
]
- From: Sanjay Khattar <sanjaykhattar1@yahoo.com>
- To: Steve.Ball@zveno.com, xml-dev@lists.xml.org
- Date: Mon, 11 Dec 2000 23:17:30 -0800 (PST)
--- Steve Ball <Steve.Ball@zveno.com> wrote:
> "Khattar, Sanjay" wrote:
> >
> > Does anyone here know of a quick way to generate
> an XPath expression like
> > 'elemA[elemB='cdata1']' from an xml node instance
> like
> > <elemA>
> > <elemB>cdata1</elemB>
> > </elemA>
> >
> > Of course, the node instance could be of arbitrary
> complexity.
>
> I can't imagine that a general-purpose library could
> guess
> at the user's intention, as your example seems to
> indicate is
> required. In this example, what is the context,
> what is to be
> selected and how much of the surrounding context is
> to be
> considered?
>
> Perhaps what you want is:
>
> given a context (DOM) node and a target (DOM) node,
> construct an XPath
> which will select the target from the context.
Exactly. That's what I want.
>
> My initial thought is that in general there are many
> solutions for
> any given context and target nodes. In fact, the
> solution set is
> most likely unbounded.
Now is it? Given a context node
<elemA>
<elemB>cdata1</elemB>
</elemA>
and a target node
<elemA>
<elemB>cdata1</elemB>
</elemA>
how many XPath expressions can one create? Even if one
can, wouldn't an XPath like './/elemA[elemB='cdata1']'
search for this particular node alone in any xml doc:
<elemA>
<elemB>cdata1</elemB>
</elemA>
I'd say that this sounds to me something like a SQL
Query Builder - I'd love to know if I am being too
fanciful here.
Thanks
Sanjay
>
> However, it would be feasible to construct a minimal
> path, perhaps
> using only the parent and child axes.
>
> HTHs,
> Steve Ball
>
> --
> Steve Ball | waX Me Lyrical XML Editor |
> Training & Seminars
> Zveno Pty Ltd | Web Tcl Complete |
> XML XSL
> http://www.zveno.com/ | TclXML TclDOM |
> Tcl, Web Development
> Steve.Ball@zveno.com
> +---------------------------+---------------------
> Ph. +61 2 6242 4099 | Mobile (0413) 594 462 |
> Fax +61 2 6242 4099
__________________________________________________
Do You Yahoo!?
Yahoo! Shopping - Thousands of Stores. Millions of Products.
http://shopping.yahoo.com/
|