Hi Micah ,

I did not have binary document in my database.
i have price as range index. i got results with <value/> constraint. But the
problem when we use  <range/> constraint .
when i use
  query like this --->search:search("39.98",$options) i am getting the
result.

But if i mention
search:search("price:39.98",$options) for <range/> constraint.
i am getting the error *element nodes cannot have binary node children*. for
the same options.
Of-course, when we use "price:39.98" then only price constraint will be
involved in operation.
but i want to know the root clause.

*XQuery*
import module namespace search =
"http://marklogic.com/appservices/search";
at "/MarkLogic/appservices/search/search.xqy";

let $options :=
<options xmlns="http://marklogic.com/appservices/search";>
<constraint name="price">
<range  type="xs:float">
<element ns="" name="price" />
<bucket name="test" ge="148" lt="150" > Costly </bucket>
</range>
</constraint>
<transform-results apply="raw" />
</options>
return
search:search("39.98",$options)

On Wed, Feb 17, 2010 at 11:20 PM, Micah Dubinko <[email protected]
> wrote:

> Hi,
>
> Just a guess, this might be caused by binary documents in your database
> that are getting returned as search results. (thought it seems a little
> strange that a binary document would get picked up by that search)
>
> As a test, if you change it to transform-results apply="empty-snippet" the
> problem goes away, right?
>
> Is it possible you have binary documents in the database??
>
> -m
>
> On Feb 17, 2010, at 2:17 AM, Nalini v wrote:
>
> > Hi All,
> > I am getting the  error  "element nodes cannot have binary node
> children",
> >
> > here is my query :
> >
> > import module namespace search =
> > "http://marklogic.com/appservices/search";
> > at "/MarkLogic/appservices/search/search.xqy";
> > let $options :=
> > <options xmlns="http://marklogic.com/appservices/search";>
> > <constraint name="price">
> > <range type="xs:float" >
> > <element ns="" name="price" />
> > <bucket name="test" ge="148" lt="150" > Costly </bucket>
> > </range>
> > </constraint>
> > <transform-results apply="raw" />
> > </options>
> > return
> > search:search("price:39.98", $options)
> >
> > Error:
> > [1.0-ml] XDMP-CHILDNODEKIND: $result -- element nodes cannot have binary
> node children
> >
> > Stack trace:
> >
> >
> > in /MarkLogic/appservices/search/search-impl.xqy line 910:
> > impl:do-query("price:39.98", <options xmlns="
> http://marklogic.com/appservices/search";><constraint name="price"><range
> type="xs:float"><element ns="" n...</options>, (), 1, (), false())
> >
> > can you tell me what is the problem.
> >
> > _______________________________________________
> > General mailing list
> > [email protected]
> > http://xqzone.com/mailman/listinfo/general
>
> _______________________________________________
> General mailing list
> [email protected]
> http://xqzone.com/mailman/listinfo/general
>
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to