validar sentencia que producido pattern online nodo ningĂșn ejemplos curso consultas altova xml xpath contains xmlnodelist

sentencia - xpath xml



xpath para seleccionar nodos excluyendo por lista de valores de atributos (4)

Me gustaría saber si hay un enfoque más corto para seleccionar una lista de nodos que ignoran los que tienen un valor de atributo especificado en una lista

Ejemplo de trabajo:

/item[not(@uid=''id1'') and not(@uid=''id2'')]

Alternativa deseada:

/item[not(@uid in(''id1'',''id2''))]


Al menos en Xpath 2, las comparaciones generales de las secuencias se realizan de manera pareada y existencial, por lo que puede escribir:

/item[not(@uid = (''id1'',''id2''))]


Puede usar expresiones regulares (si su implementación xpath lo admite) o escribir

/item[not(@uid=''id1'' or @uid=''id2'')]

lo que podría ser un poco más corto.


Tal vez algo como esto?

/item[not(contains(''id1 id2'', @uid))]


Si la lista de nombres de atributos es muy larga, la siguiente es una buena manera de manejar esta situación :

//item[not(contains(''|attr1|attr2|attr3|attr4|attr5|attr6|attrN|'', concat(''|'', @uid, ''|'') ) )]