element(http:variant)* is not always true

it could also be document-node() so we replace it by node()