Funciones XPath definidas por el usuario
El diseñador SPS puede definir funciones XPath 2.0/3.0 personalizadas. Las funciones XPath definidas por el usuario se pueden utilizar en cualquier componente de diseño que acepte expresiones XPath, como cálculos automáticos, condiciones y cuadros combinados, por ejemplo.
Definir y editar funciones XPath
Las funciones XPath definidas por el usuario se crean en la ventana Estructura del esquema y en la ventana Estructura del diseño (imagen siguiente). Todas las funciones XPath definidas por el usuario de un diseño SPS se enumeran bajo el elemento Funciones XPath de las ventanas Estructura del esquema y Estructura del diseño.
Para crear una función XPath definida por el usuario, haga clic en el icono del elemento Funciones XPath. Esto abre el cuadro de diálogo "Funciones XPath" (imagen siguiente). Si quiere editar una función del diseño SPS, haga doble clic en ella en la lista Funciones XPath y se abrirá el cuadro de diálogo "Funciones XPath", donde podrá editar la función.
Una vez creada, la función XPath definida por el usuario se puede usar en cualquier parte del diseño.
Espacio de nombres de las funciones XPath definidas por el usuario
Las funciones XPath definidas por el usuario se crean en el espacio de nombres: https://www.altova.com/StyleVision/user-xpath-functions. Este espacio de nombres está enlazado al prefijo sps:, de modo que debe llamar a las funciones XPath definidas por el usuario con este prefijo de espacio de nombres. Por ejemplo: sps:MiFunción().
Habilitar y deshabilitar funciones XPath definidas por el usuario
Las funciones XPath definidas por el usuario se pueden habilitar o deshabilitar con solo activar o desactivar la casilla situada a la izquierda de la función en la lista Funciones XPath (imagen siguiente).
Esto es muy práctico si por ejemplo hay dos funciones con el mismo nombre. Esto puede pasar cuando, por ejemplo, un módulo SPS importado contiene una función que se llama igual que otra función del SPS.
Llamar a una función XPath definida por el usuario
Puede llamar a funciones XPath definidas por el usuario desde expresiones XPath y desde cualquier posición del diseño. Por ejemplo, podemos llamar a la función XPath definida por el usuario sps:MiFunción con esta expresión XPath dentro de un cálculo automático:
sps:MiFunción()/@name.
Esta expresión XPath se evalúa de la siguiente manera:
1.La función XPath sps:MiFunción() se evalúa. Digamos que la función se define así: \$XML/Trades/Stock[@name=\$XML/Trades/Selection/Stock]. Cuando la función se evalúa devuelve el elemento /Trades/Stock que tiene un atributo name cuyo valor coincide con el contenido del elemento /Trades/Selection/Stock.
2.El resultado del paso 1 se devuelve a la expresión XPath en la llamada a función. Ahora el valor del atributo name de este elemento /Trades/Stock se devuelve como valor del cálculo automático.
Eliminar una función
Para eliminar una función, selecciónela en la lista Funciones XPath de la Estructura del esquema o Estructura del diseño y después haga clic en el icono Eliminar elemento de la barra de herramientas de la ventana. Otra opción es hacer clic con el botón derecho en la función y seleccionar el comando Quitar.