2011-01-28 18 views
9

Al principio, escribí un pequeño script de XQuery que fue diseñado para hacer una pequeña tarea y solo eso. Ahora salió que este script de XQuery no es completo, y tengo que arreglarlo. El problema es que mi XQuery se convirtió en un programa y XQuery es un Pain para depurar. Algo que necesitaría sería:Debug XQuery Program

Imprime algo en la línea de comandos para comprobar si el programa tiene los nodos correctos en ese momento.

Una herramienta de depuración que me muestra las variables almacenadas

+0

Buena pregunta, +1. Ver mi respuesta para recomendaciones específicas y enlaces. –

Respuesta

4

Algo que necesitaría sería:

imprimir algo en la línea de comandos para tiempo cheque los progroms tiene las nodos correctos en ese hora.

Utilice la función estándar XPath 2.0 trace().

una herramienta de depuración que me muestra las variables almacenadas

Hay IDE Varios de XQuery que se presentan con un depurador. Por ejemplo, eche un vistazo a oXygen.

0

Hay pocas aplicaciones de diagnóstico centradas en Xml Database. w.r.t a la base de datos MarkLogic Xml.

  1. Diagnóstico/TaskServer UI en la consola de administración .
  2. perfil tabular utilizan su CQ aplicación
  3. xdmp: consulta-trace(), xdmp: trace() son API da una idea acerca de la plan de consulta.
  4. opensource Xquery depurador = xqdebug

son algunas técnicas para tener codificación eficaz.

2

Como sugirió Dimitre, trace() es a lo que recurro cuando nada más funciona. Desordenado pero funciona.

En lugar de: $ foo: = anyXqueryExpression

Haga esto: $ foo: = traza (anyXqueryExpression, "texto")

registra el resultado de la ejecución anyXqueryExpression y añade el prefijo "texto" .