Looks like you are running into a bug fixed in 6.0-2.x.  Time to upgrade....

-Danny

From: [email protected] 
[mailto:[email protected]] On Behalf Of Jakob Fix
Sent: Wednesday, February 20, 2013 3:01 PM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] how to declare a namespace for a range 
path index?

6.0-1.1

cheers,
Jakob.

On Wed, Feb 20, 2013 at 11:58 PM, Michael Blakeley 
<[email protected]<mailto:[email protected]>> wrote:
If I change the database name to 'Documents' that gist runs fine on 6.0-2.1. 
Which release are you using?

-- Mike

On 20 Feb 2013, at 14:54 , Jakob Fix 
<[email protected]<mailto:[email protected]>> wrote:

> Danny, yes, I agree, but I think we do exactly what you describe here:
> https://gist.github.com/jfix/4999929
> No? Maybe it's simply too late for me here and my eyes are getting glassy ...
>
> cheers,
> Jakob.
>
>
> On Wed, Feb 20, 2013 at 11:48 PM, Danny Sokolsky 
> <[email protected]<mailto:[email protected]>> wrote:
> You have to use admin:database-add-path-namespace first to add it to your 
> configuration (the path-namespace just creates the path specification, not 
> the configuration).  Something like this:
>
>
>
>   xquery version "1.0-ml";
>
>
>
>   import module namespace admin = "http://marklogic.com/xdmp/admin";
>
>       at "/MarkLogic/admin.xqy";
>
>
>
>   let $config := admin:get-configuration()
>
>   let $dbid := xdmp:database("Documents")
>
>   let $ns := admin:database-path-namespace("foo", "foo")
>
>   let $config := admin:database-add-path-namespace($config, $dbid, $ns)
>
>   let $pathspec := admin:database-range-path-index(
>
>   $dbid,
>
>   "string",
>
>   "/a/foo:b/c",
>
>   "http://marklogic.com/collation/";,
>
>   fn:false(),
>
>   "ignore")
>
>   return
>
>     admin:database-add-range-path-index($config, $dbid, $pathspec)
>
>
>
> -Danny
>
>
>
> From: 
> [email protected]<mailto:[email protected]>
>  
> [mailto:[email protected]<mailto:[email protected]>]
>  On Behalf Of Jakob Fix
> Sent: Wednesday, February 20, 2013 2:27 PM
> To: MarkLogic Developer Discussion
> Subject: Re: [MarkLogic Dev General] how to declare a namespace for a range 
> path index?
>
>
>
> Thanks Sujith (and Evan!), that explains it very well, and indeed it is a 
> very useful feature.
>
>
>
> However, I just looked over the script we use again, and the namespace has 
> been previously declared:
>
>
>
>
>
> let $config := admin:database-add-path-namespace($config, $dbid,
>
>
>     admin:database-path-namespace("oe", 
> "http://www.oecd.org/metapub/oecdOrg/ns/";)
>
>
> )
>
> let $config := admin:database-add-range-path-index($config, $dbid,
>
>
>     admin:database-range-path-index($dbid, "string", "/oe:item/@type", 
> "http://marklogic.com/collation/";, fn:false(), "reject")
>
>
> )
>
> Any idea why this threw the abovementioned error?
>
>
>
> ADMIN-BADPATHNAMESPACE: (err:FOER0000) Undefined path namespace(s): oe.
>
>
> cheers,
> Jakob.
>
>
>
> On Wed, Feb 20, 2013 at 11:04 PM, Sujith 
> <[email protected]<mailto:[email protected]>> wrote:
>
> Hi Jakob,
>
>
>
> you can even refer to marklogic blog (Evan Lenz). It has with examples.
>
>
>
> http://developer.marklogic.com/blog/path-range-indexes
>
>
>
> http://developer.marklogic.com/blog/path-range-indexes-2
>
>
>
>
>
>
>
> On Wed, Feb 20, 2013 at 4:55 PM, Danny Sokolsky 
> <[email protected]<mailto:[email protected]>> wrote:
>
> Hi Jakob,
>
>
>
> You need to create a Path Namespace for your prefix, then you can use that 
> prefix in your path index.  Here is the procedure:
>
>
>
> http://docs.marklogic.com/guide/admin/range_index#id_54948
>
>
>
> -Danny
>
>
>
> From: 
> [email protected]<mailto:[email protected]>
>  
> [mailto:[email protected]<mailto:[email protected]>]
>  On Behalf Of Jakob Fix
> Sent: Wednesday, February 20, 2013 1:50 PM
> To: General Mark Logic Developer Discussion
> Subject: [MarkLogic Dev General] how to declare a namespace for a range path 
> index?
>
>
>
> Hi, I'm trying to create a range path index using a namespace prefix which 
> should be possible.
>
>
>
> There doesn't seem to be a place to define the namespace for the element(s).
>
>
>
> Trying "/oe:item/@type" returns this error in the admin interface:
>
> Invalid input: Undefined namespace prefixes: oe.
>
>
> I tried the clark notation (you never know):
> /{http://www.oecd.org/metapub/oecdOrg/ns/}item/@type<http://www.oecd.org/metapub/oecdOrg/ns/%7ditem/@type>
>
> which returns another error message:
>
> Invalid input: XDMP-UNINDEXABLEPATH, invalid path expression.
>
>
> Running this script https://gist.github.com/jfix/4999929
>
> also returns an error (with or without the namespace declaration):
>
>
>
> ADMIN-BADPATHNAMESPACE: (err:FOER0000) Undefined path namespace(s): oe.
>
>
>
> Quite obviously, there must be a way to do this, but I can't seem to find it. 
> Thanks for your help.
>
>
>
> cheers,
> Jakob.
>
>
>
>
>
> _______________________________________________
> General mailing list
> [email protected]<mailto:[email protected]>
> http://developer.marklogic.com/mailman/listinfo/general
>
>
>
>
>
>
> --
> Thanks & Regards
> Sujith
>
>
> _______________________________________________
> General mailing list
> [email protected]<mailto:[email protected]>
> http://developer.marklogic.com/mailman/listinfo/general
>
>
>
>
> _______________________________________________
> General mailing list
> [email protected]<mailto:[email protected]>
> http://developer.marklogic.com/mailman/listinfo/general
>
>
> _______________________________________________
> General mailing list
> [email protected]<mailto:[email protected]>
> http://developer.marklogic.com/mailman/listinfo/general

_______________________________________________
General mailing list
[email protected]<mailto:[email protected]>
http://developer.marklogic.com/mailman/listinfo/general

_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to