Hi,
I installed pywebdav python library in the version you recommend and installed the carddav module on a local Odoo. When I try to connect to the carddav using this URL:
http://localhost:8169/webdav/carddav/addressbooks/users/admin/a/m-res.partner/default/
I get this error into thunderbird:

And in my Odoo logs, I get this:

Here is your code into document_carddav/carddav_node:

With this request, the variable filter_node.localName = 'addressbook-query' so this raise the value error.
Can you explain me why?
If i return an empty list instead of raising the error. Everything works fine and i get my contacts into Thunderbird

But I suppose i'm missing something. The default value of the url http://localhost:8169/webdav/carddav/addressbooks/users/admin/a/m-res.partner/default/ means what?
Thank you for your help