que se pudiera dar a una de las siguientes xml:¿Es posible ignorar los espacios de nombres en C# cuando se utiliza xPath?
<?xml version="1.0" encoding="UTF-8"?>
<dc:video xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>
A vid with Pete
</dc:title>
<dc:description>
Petes vid
</dc:description>
<dc:contributor>
Pete
</dc:contributor>
<dc:subject>
Cat 2
</dc:subject>
</dc:video>
O:
<?xml version="1.0" encoding="UTF-8"?>
<video>
<title>
A vid with Pete
<title>
<description>
Petes vid
<description>
<contributor>
Pete
<contributor>
<subject>
Cat 2
<subject>
</video>
Im tratando de acceder a un elemento:
string title = xmlDocFromOneLan.SelectSingleNode(@"/video/title").InnerXml;
Pero con el documento XML 1 que no funciona debido al espacio de nombres
¿Hay alguna manera en C# de ignorar el espacio de nombres usando xpath? Simplemente quiero seleccionar el nodo que realmente no me importa sobre el espacio de nombres. (el espacio de nombre podría ser DC DN o DCN, etc.).
"/ video"
diga:
<video></video>
or
<dc:video></video>
or
<dcn:video></video>
Gracias Martin, ¿sabes dónde puedo obtener documentación relacionada con eso? – Exitos
+1 Respuesta correcta. –
Pete, XPath 1.0 y 2.0 son especificaciones W3C que puede encontrar en línea: http://www.w3.org/TR/xpath/, http://www.w3.org/TR/xpath20/. Microsoft solo admite XPath 1.0, tienen documentación sobre eso en MSDN: http://msdn.microsoft.com/en-us/library/ms256115.aspx. XPath 2.0 es implementado por terceros como XQSharp http://www.xqsharp.com/ o Saxon 9 http://saxon.sourceforge.net/. Saxon también tiene una buena documentación, la sintaxis *: foo está documentada en http://www.saxonica.com/documentation/expressions/axissteps.xml. –