Estoy tratando de crear un 'AET' (árbol de expresiones abstractas) para XPath (ya que estoy escribiendo un editor WYSIWYG XSL). He estado golpeando mi cabeza contra la pared con el XPath BNF durante las últimas tres o cuatro horas.Expresiones Parse XPath
He pensado en otra solución. Pensé que podría escribir una clase que implementa IXPathNavigable, que devuelve un XPathNavigator propio cuando se llama a CreateNavigator. Este XPathNavigator siempre tendrá éxito en las llamadas a métodos, y hará un seguimiento de esas llamadas, por ejemplo. nos mudamos al nodo clientes y luego al nodo cliente. Podría usar esta información (con suerte) para crear el 'AET' (para que ahora tuviéramos clientes/clientes en un modelo de objetos).
La única pregunta es: ¿cómo en tierra hago funcionar un IXPathNavigable a través de un XPathExpression?
Sé que esto es excesivamente vago. Pero, ¿alguien más ha realizado el esfuerzo y ha escrito un analizador de expresiones XPath? Todavía no he considerado mi posible solución, porque no puedo probarla (porque no puedo ejecutar XPathExpression en un IXPathNavigable), así que ni siquiera sé si mi solución funcionará.
El texto que comienza en IXPathNavigable es muy confuso. ¿Podrías editar la pregunta y explicar mejor? –