[plexippus-xpath-devel] error with expression pointing to nonexistent child node

Ivan Shvedunov ivan4th at gmail.com
Fri Sep 17 20:26:09 UTC 2010


Hello,

On Sat, Sep 18, 2010 at 12:17 AM, David A. Thompson <thompdump at gmail.com> wrote:

> Ivan,
>
> Thanks for the quick response. I'm using SBCL 1.0.39.
>
> SBCL's complaint:
>
> The value NIL is not of type VECTOR.
>   [Condition of type TYPE-ERROR]
>
> Restarts:
>  0: [RETRY] Retry SLIME REPL evaluation request.
>  1: [*ABORT] Return to SLIME's top level.
>  2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "new-repl-thread"
> RUNNING {C2A3F81}>)
>
> Backtrace:
>  0: (CXML-STP-IMPL::NORMALIZE-TEXT-NODES! #.(CXML-STP:ELEMENT #| :PARENT of
> type DOCUMENT |# :LOCAL-NAME "etx"))
>  1: ((SB-PCL::FAST-METHOD XPATH-PROTOCOL:CHILD-PIPE-USING-NAVIGATOR ((EQL
> :DEFAULT-NAVIGATOR) CXML-STP:ELEMENT)) ..)
>  2: ((LAMBDA (XPATH::NODE XPATH::STARTING-NODE)) ..)
>  3: ((LAMBDA (XPATH::N)) #.(CXML-STP:ELEMENT #| :PARENT of type DOCUMENT |#
> :LOCAL-NAME "etx"))
>  4: (XPATH::MAPPEND-PIPE #<CLOSURE (LAMBDA #) {C2B8425}>
> (#.(CXML-STP:ELEMENT #| :PARENT of type DOCUMENT |# :LOCAL-NAME "etx") .
> #<CLOSURE # {C2B84FD}>))
>  5: (XPATH::MAPPEND-PIPE #<CLOSURE (LAMBDA #) {C2B8425}>
> (#.(CXML-STP-IMPL::DOCUMENT :CHILDREN '(#1=#.(CXML-STP:ELEMENT #| :PARENT of
> type DOCUMENT |# :LOCAL-NAME "etx"))) #1# . #<CLOSURE # {C2B84FD}>))
>  6: ((LAMBDA (XPATH::NODE XPATH::STARTING-NODE)) ..)
>  7: ((LAMBDA (XPATH::N)) #.(CXML-STP-IMPL::DOCUMENT :CHILDREN
> '(#.(CXML-STP:ELEMENT #| :PARENT of type DOCUMENT |# :LOCAL-NAME "etx"))))
>  8: (XPATH::MAPPEND-PIPE #<CLOSURE (LAMBDA #) {C2B83C5}>
> (#.(CXML-STP-IMPL::DOCUMENT :CHILDREN '(#.(CXML-STP:ELEMENT #| :PARENT of
> type DOCUMENT |# :LOCAL-NAME "etx"))) . #<CLOSURE # {C2B83A5}>))
>  9: ((LAMBDA (XPATH::NODE XPATH::STARTING-NODE)) ..)
>  10: ((LAMBDA (XPATH:CONTEXT)) #<XPATH:CONTEXT {C2B8361}>)
>  11: (XPATH:EVALUATE-COMPILED #<CLOSURE (LAMBDA #) {C2B8355}>
> #.(CXML-STP-IMPL::DOCUMENT :CHILDREN '(#.(CXML-STP:ELEMENT #| :PARENT of
> type DOCUMENT |# :LOCAL-NAME "etx"))) NIL)
>  12: (SB-INT:SIMPLE-EVAL-IN-LEXENV (XPATH:EVALUATE "//foo" (CXML:PARSE
> "<etx></etx>" (CXML-STP:MAKE-BUILDER))) #<NULL-LEXENV>)
>  --more--
>

Seems like this is CXML-STP whitespace normalization bug which
is already fixed in its git repository. Try it with the fresh version:
git clone http://www.lichteblau.com/git/cxml-stp.git

-- 
Ivan Shvedunov <ivan4th at gmail.com>
;; My GPG fingerprint is: 2E61 0748 8E12 BB1A 5AB9  F7D0 613E C0F8 0BC5 2807




More information about the plexippus-xpath-devel mailing list