Subject: Re: XPath - accessing nodes with a namespace with no prefix
From: Markus Flatscher <markus.flatscher@xxxxxxxxx>
Date: Fri, 4 Dec 2009 17:36:32 -0500
|
Philip,
(1) Which element are you trying to access? If it's the "Content
Package and Manifest Analogy" one, I suspect a typo in your XPath:
instead of "/organizations/organization/title[2]/title" (which doesn't
match anything in the sample input), try
"/organizations/organization/item[2]/title".
(2) Re namespaces: in order for the sample XML to be well-formed, you
need to bind "adlnav" to some namespace.
(3) Re your question about local-name(), I'm afraid I'd need more
information about what you're trying to do.
Markus
On Fri, Dec 4, 2009 at 5:04 PM, Philip Vallone
<philip.vallone@xxxxxxxxxxx> wrote:
>
> Hi,
>
> This is a pure xpath question.
>
> Suppose I have a namespace declaration like this:
>
> <organizations version="1.0"
xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">
>
> The namespace does not have a prefix. I want to use local-name() to access
the nodes but not sure how. For example, how do I access a path like this:
>
> XPATH:
>
> /organizations/organization/title[2]/title
>
> XML:
> <organizations version="1.0"
xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">
> <organization>
> <title>SCORM 2004 4th Edition Manifest Basics Content
Example 1.0</title>
> <item>
> <title>Introduction to Manifests</title>
> <adlnav:presentation>
> <adlnav:navigationInterface>
>
<adlnav:hideLMSUI>continue</adlnav:hideLMSUI>
>
<adlnav:hideLMSUI>previous</adlnav:hideLMSUI>
> </adlnav:navigationInterface>
> </adlnav:presentation>
> </item>
> <item>
> <title>Content Package and Manifest
Analogy</title>
> <adlnav:presentation>
> <adlnav:navigationInterface>
>
<adlnav:hideLMSUI>continue</adlnav:hideLMSUI>
>
<adlnav:hideLMSUI>previous</adlnav:hideLMSUI>
> </adlnav:navigationInterface>
> </adlnav:presentation>
> </item>
> </organization>
> </organizations>
>
>
> Thanks,
>
> Phil
|