Hi Micah,

Thank you so much for your help. It worked.

Regards
Amit

On 7 June 2012 10:12, <[email protected]> wrote:

> Send General mailing list submissions to
>        [email protected]
>
> To subscribe or unsubscribe via the World Wide Web, visit
>        http://community.marklogic.com/mailman/listinfo/general
> or, via email, send a message with subject or body 'help' to
>        [email protected]
>
> You can reach the person managing the list at
>        [email protected]
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of General digest..."
>
> Today's Topics:
>
>   1. xdmp:base64Decode returns invalid UTF-8   escape sequence
>      (Steve Spigarelli)
>   2. Re: xdmp:base64Decode returns invalid UTF-8       escape sequence
>      (Michael Blakeley)
>   3. Re: xdmp:base64Decode returns invalid UTF-8       escape sequence
>      (Steve Spigarelli)
>   4. Re: xdmp:base64Decode returns invalid UTF-8       escape sequence
>      (Michael Blakeley)
>   5. Issue with operator in Search api (amit gope)
>   6. Re: Issue with operator in Search api (Micah Dubinko)
>
>
> ---------- Forwarded message ----------
> From: Steve Spigarelli <[email protected]>
> To: [email protected]
> Cc:
> Date: Wed, 6 Jun 2012 14:25:12 -0600
> Subject: [MarkLogic Dev General] xdmp:base64Decode returns invalid UTF-8
> escape sequence
> How do I tell this code that I don't want it to be UTF-8 encoded?
>
> xquery version "1.0-ml";
>
> xdmp:base64-decode('JxrHeSl2YX4LunZkWKZqog==')
>
> Thanks
> Steve
>
>
>
> ---------- Forwarded message ----------
> From: Michael Blakeley <[email protected]>
> To: MarkLogic Developer Discussion <[email protected]>
> Cc:
> Date: Wed, 6 Jun 2012 13:37:34 -0700
> Subject: Re: [MarkLogic Dev General] xdmp:base64Decode returns invalid
> UTF-8 escape sequence
> That function only works with encoded strings, and I think they have to be
> UTF-8 as well. But try this trick:
>
>    binary { xs:hexBinary(xs:base64Binary('JxrHeSl2YX4LunZkWKZqog=='))
>
> -- Mike
>
> On 6 Jun 2012, at 13:25 , Steve Spigarelli wrote:
>
> > How do I tell this code that I don't want it to be UTF-8 encoded?
> >
> > xquery version "1.0-ml";
> >
> > xdmp:base64-decode('JxrHeSl2YX4LunZkWKZqog==')
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Steve Spigarelli <[email protected]>
> To: [email protected]
> Cc:
> Date: Wed, 6 Jun 2012 14:53:48 -0600
> Subject: Re: [MarkLogic Dev General] xdmp:base64Decode returns invalid
> UTF-8 escape sequence
> So the initial string "JxrHeSl2YX4LunZkWKZqog==" is a base64 encoded
> nonce from soapUI. It only contains characters that are valid in a
> base64 world, so Marklogic has no problems with it. It's what happens
> next when one runs the decode that causes the problems.
>
> In order to calculate a SOAP password digest one needs the original
> nonce (base64 decoded of the base64 encoded nonce), the timestamp and
> the password. But, in order to base64 decode a nonce with invalid
> UTF-8 sequences one must use functions that are not available in
> Marklogic. Casting the original base64 encoded string (that is already
> valid) to base64 binary then to hexbinary then to a binary document
> doesn't get me what I need for calling the base64-decode function that
> expects an xs:string.
>
> I think that my colleague will just end up doing simple passwords over
> https instead of password digest unless there is another way to do
> this.
>
> Steve
>
>
> That function only works with encoded strings, and I think they have
> to be UTF-8 as well. But try this trick:
>
>    binary { xs:hexBinary(xs:base64Binary('JxrHeSl2YX4LunZkWKZqog=='))
>
> -- Mike
>
>
> On Wed, Jun 6, 2012 at 2:25 PM, Steve Spigarelli <[email protected]> wrote:
> > How do I tell this code that I don't want it to be UTF-8 encoded?
> >
> > xquery version "1.0-ml";
> >
> > xdmp:base64-decode('JxrHeSl2YX4LunZkWKZqog==')
> >
> > Thanks
> > Steve
>
>
>
> ---------- Forwarded message ----------
> From: Michael Blakeley <[email protected]>
> To: MarkLogic Developer Discussion <[email protected]>
> Cc:
> Date: Wed, 6 Jun 2012 14:11:33 -0700
> Subject: Re: [MarkLogic Dev General] xdmp:base64Decode returns invalid
> UTF-8 escape sequence
> HTTPS sounds reasonable, but you can do a few more tricks with binary
> data. This might get you there:
>
>    xdmp:hex-to-integer(
>      string(xs:hexBinary(xs:base64Binary('JxrHeSl2YX4LunZkWKZqog=='))))
>
> The result is an xs:decimal 18446744073709551615 - is that what you need?
> You might want to construct an xs:unsignedLong from it, and use
> xdmp:not64() and its siblings for the math.
>
> -- Mike
>
> On 6 Jun 2012, at 13:53 , Steve Spigarelli wrote:
>
> > So the initial string "JxrHeSl2YX4LunZkWKZqog==" is a base64 encoded
> > nonce from soapUI. It only contains characters that are valid in a
> > base64 world, so Marklogic has no problems with it. It's what happens
> > next when one runs the decode that causes the problems.
> >
> > In order to calculate a SOAP password digest one needs the original
> > nonce (base64 decoded of the base64 encoded nonce), the timestamp and
> > the password. But, in order to base64 decode a nonce with invalid
> > UTF-8 sequences one must use functions that are not available in
> > Marklogic. Casting the original base64 encoded string (that is already
> > valid) to base64 binary then to hexbinary then to a binary document
> > doesn't get me what I need for calling the base64-decode function that
> > expects an xs:string.
> >
> > I think that my colleague will just end up doing simple passwords over
> > https instead of password digest unless there is another way to do
> > this.
> >
> > Steve
> >
> >
> > That function only works with encoded strings, and I think they have
> > to be UTF-8 as well. But try this trick:
> >
> >    binary { xs:hexBinary(xs:base64Binary('JxrHeSl2YX4LunZkWKZqog=='))
> >
> > -- Mike
> >
> >
> > On Wed, Jun 6, 2012 at 2:25 PM, Steve Spigarelli <[email protected]> wrote:
> >> How do I tell this code that I don't want it to be UTF-8 encoded?
> >>
> >> xquery version "1.0-ml";
> >>
> >> xdmp:base64-decode('JxrHeSl2YX4LunZkWKZqog==')
> >>
> >> Thanks
> >> Steve
> > _______________________________________________
> > General mailing list
> > [email protected]
> > http://community.marklogic.com/mailman/listinfo/general
> >
>
>
>
>
> ---------- Forwarded message ----------
> From: amit gope <[email protected]>
> To: [email protected]
> Cc:
> Date: Thu, 7 Jun 2012 09:57:46 +0530
> Subject: [MarkLogic Dev General] Issue with operator in Search api
> Hello All,
>
> I am new to search api and i am having trouble in implementing one
> functionality. There are basically two things that i am stuck with:
>
>    1. Can i have two operators in the options?
>    2. I have a code which looks something like this:
>
>            <operator name="sort">
>                         <state name="relevance">
>                                 <sort-order>
>                                         <score/>
>                                 </sort-order>
>                         </state>
>                         <state name="date">
>                                 <sort-order direction="descending"
> type="xs:date" collation="">
>                                         <element ns="
> http://www.marklogic.com/app/meta"; name="Date"/>
>                                 </sort-order>
>                                 <sort-order>
>                                         <score/>
>                                 </sort-order>
>                         </state>
>                 </operator>
>                 <operator name="JournalOnlineFirst">
>                         <state name="true">
>
> <searchable-expression>/Publisher[.//JournalOnlineFirst]</searchable-expression>
>                         </state>
>                 </operator>
>
> If my URL has an reads something like this
> "localhost:1234://..../q=issn:1573-4803
> journalonlinefirst:true&api_key=asdbfdas2342sfda" i want the api to fetch
> me those docs which are of the type JournalOnlineFirst. But i get the error
> as :"
>
> XDMP-ARGTYPE: (err:XPTY0004) fn:in-scope-prefixes((<searchable-expression 
> xmlns="http://marklogic.com/appservices/search";>/Publisher[.//JournalOnlineFirst]</searchable-expression>,
>  <searchable-expression 
> xmlns="http://marklogic.com/appservices/search";>fn:collection()</searchable-expression>))
>  -- arg1 is not of type element()"
>
> Please suggest how to achieve the result because i am stuck at this place.
> I have also tried something like this.
>
> "<operator name="JournalOnlineFirst">
>                         <state name="true">
>
>                         </state>
>                 </operator>
>
> <searchable-expression>/Publisher[.//JournalOnlineFirst]</searchable-expression>".
>
>
> Here i dont get the result, but i dont get the error as well. Please let
> me know where i am going wrong. Thanks in advance.
> Regards
> Amit
>
>
>
>
> ---------- Forwarded message ----------
> From: Micah Dubinko <[email protected]>
> To: MarkLogic Developer Discussion <[email protected]>
> Cc:
> Date: Wed, 6 Jun 2012 21:42:50 -0700
> Subject: Re: [MarkLogic Dev General] Issue with operator in Search api
> Hi Amit,
>
> Welcome.
>
> First a bit of general advice, which you may have heard before. Run the
> function search:check-options often. Set up your build environment so that
> it runs every time you do a search. If it returns empty-sequence, you're
> golden, otherwise it's alerting you to current or potential problems.  (It
> does in-depth checks which take time, so don't run it in a production
> environment).
>
> It can be tricky to keep track of which config elements are allowed where,
> but check-options will keep you on the path.
>
> It looks like the error below comes from having multiple
> <searchable-expression>s. Having one inside a <state> should be fine, but
> not with a global one too. Since your global one is pointing at
> fn:collection() which is the default anyway, you can get rid of it.
>
> Try these and let us know how things turn out.
>
> Thanks, -m
>
>
>
>
> On Jun 6, 2012, at 9:27 PM, amit gope wrote:
>
> Hello All,
>
> I am new to search api and i am having trouble in implementing one
> functionality. There are basically two things that i am stuck with:
>
>    1. Can i have two operators in the options?
>    2. I have a code which looks something like this:
>
>            <operator name="sort">
>                         <state name="relevance">
>                                 <sort-order>
>                                         <score/>
>                                 </sort-order>
>                         </state>
>                         <state name="date">
>                                 <sort-order direction="descending"
> type="xs:date" collation="">
>                                         <element ns="
> http://www.marklogic.com/app/meta"; name="Date"/>
>                                 </sort-order>
>                                 <sort-order>
>                                         <score/>
>                                 </sort-order>
>                         </state>
>                 </operator>
>                 <operator name="JournalOnlineFirst">
>                         <state name="true">
>
> <searchable-expression>/Publisher[.//JournalOnlineFirst]</searchable-expression>
>                         </state>
>                 </operator>
>
> If my URL has an reads something like this "localhost:
> 1234://..../q=issn:1573-4803journalonlinefirst:true&api_key=asdbfdas2342sfda" 
> i want the api to fetch
> me those docs which are of the type JournalOnlineFirst. But i get the error
> as :"
>
> XDMP-ARGTYPE: (err:XPTY0004) fn:in-scope-prefixes((<searchable-expression 
> xmlns="http://marklogic.com/appservices/search";>/Publisher[.//JournalOnlineFirst]</searchable-expression>,
>  <searchable-expression 
> xmlns="http://marklogic.com/appservices/search";>fn:collection()</searchable-expression>))
>  -- arg1 is not of type element()"
>
>
> Please suggest how to achieve the result because i am stuck at this place.
> I have also tried something like this.
>
> "<operator name="JournalOnlineFirst">
>                         <state name="true">
>
>                         </state>
>                 </operator>
>
> <searchable-expression>/Publisher[.//JournalOnlineFirst]</searchable-expression>".
>
>
> Here i dont get the result, but i dont get the error as well. Please let
> me know where i am going wrong. Thanks in advance.
> Regards
> Amit
>
>
> _______________________________________________
> General mailing list
> [email protected]
> http://community.marklogic.com/mailman/listinfo/general
>
>
>
> _______________________________________________
> General mailing list
> [email protected]
> http://community.marklogic.com/mailman/listinfo/general
>
>
_______________________________________________
General mailing list
[email protected]
http://community.marklogic.com/mailman/listinfo/general

Reply via email to