[Fwd: Re: [Zope] test for the existence of a nodeValue]

Dieter Maurer dieter at handshake.de
Thu Aug 4 13:58:23 EDT 2005


Jon Bowlas wrote at 2005-8-4 10:31 +0100:
> ...
>But I still cant get it to work. I've changed my get_attributes.py script
>to this:
>
>if not attobject:
>    return ''
>version = attobject.get_viewable()
>nodes = version.content.documentElement.getElementsByTagName(attname) if
>not nodes:
>    return ''
>nodeValue = nodes[0].childNodes[0].nodeValue
>if not nodeValue:
>    return "none"
>return nodeValue
> ...
>But I get the following error:
>Error Type: IndexError
>error Value: list index is out of range

"IndexError -- list index is out of range" tells you that
this is not a "nodeValue" problem.

Almost surely, you got a node without "childNodes". Then
"node.childNodes[0]" will result in an "IndexError".

Thus, you will need to check for this situation (in a way
similar to checks for an empty "nodes" list).

>and the traceback says "Module None, line 7 in get_attributes" is the cause.

This should tell you in which line of "get_attributes" the problem was.

As your mail agent decided to reformat the code (oh this Outlook :-( ),
and you did not number the line, I cannot tell you -- but I guessed above
(and probably not too bad)...

-- 
Dieter


More information about the Zope mailing list