Blog de Luis Arévalo
Feb 08
XQDoc es una herramienta para la generación automática de documentación en formato HTML a partir de código fuente XQuery, es decir, es la herramienta Javadoc para código XQuery (Javadoc una utilidad de Sun Microsystems para la generación de documentación automática de APIs en formato HTML). Este post surgió a partir de mi anterior entrada sobre «Guía de estilos en […] [...more]
Posted: under eXist, XML, XQuery.
Tags: Documentación, XQDoc, XQuery
XQDoc es una herramienta para la generación automática de documentación en formato HTML a partir de código fuente XQuery, es decir, es la herramienta Javadoc para código XQuery (Javadoc una utilidad de Sun Microsystems para la generación de documentación automática de APIs en formato HTML). Este post surgió a partir de mi anterior entrada sobre «Guía de estilos en XQuery«.
Al igual que en Javadoc, es necesario introducir comentarios especiales en los módulos/ficheros XQuery para que posteriormente la herramienta pueda generar la documentación HTML. Principalmente deben documentarse dos elementos: more_link_text
Feb 01
Todo lenguaje de programación tiene su propia «guía de codificación», consensuada generalmente por un grupo de «expertos» en la materia, que facilitan la codificación y compresión de código para dicho lenguaje. Y para no ser menos, también existe una guía para el lenguaje XQuery (Guía de Estilo). En ella se establece entre otras cosas: Modulos […] [...more]
Posted: under eXist, XML, XQuery.
Tags: Buenas Prácticas, Codificación XQuery, Estilos XQuery
Todo lenguaje de programación tiene su propia «guía de codificación», consensuada generalmente por un grupo de «expertos» en la materia, que facilitan la codificación y compresión de código para dicho lenguaje. Y para no ser menos, también existe una guía para el lenguaje XQuery (Guía de Estilo).
En ella se establece entre otras cosas:
- Modulos XQuery. Como realizar la correcta definición de modulos XQuery y posteriormente realizar su importación.
- Indentación
- Comentarios donde existe un formato similar a Javadoc para posteriormente generar la documentación HTML automáticamente (Herramienta xqdoc)
- El correcto orden de las expresiones
- Colocación de los espacios en blancos.
- Buenas prácticas de codificación.
A partir de ahora, otro manual para tener siempre encima de la mesa de trabajo.
Ene 20
Después de una larga temporada sin poder añadir entradas, me he propuesto intentar una a la semana. En la entrada de hoy voy a indicar cómo configurar dos aspectos básicos de eXist: cambiar el puerto de la base de datos y cómo incrementar la memoria qué esta utiliza. [...more]
Posted: under eXist.
Tags: Configuración eXist, Memoria en eXist, Puerto en eXist
Después de una larga temporada sin poder añadir entradas, me he propuesto intentar una a la semana. En la entrada de hoy voy a indicar cómo configurar dos aspectos básicos de eXist: cambiar el puerto de la base de datos y cómo incrementar la memoria qué esta utiliza.
more_link_text
Dic 18
En muchas ocasiones me ha sucedido, igual que a muchos compañeros, que hemos tenido que instalar de cero una distribución GNU/Linux con la problemática de tener que instalar todos los paquetes que tenías anteriormente. Por lo general tengo que recurrir a un papel y bolí, antes de realizar la instalación, para apuntar todos los paquetes […] [...more]
Posted: under GNU/Linux.
En muchas ocasiones me ha sucedido, igual que a muchos compañeros, que hemos tenido que instalar de cero una distribución GNU/Linux con la problemática de tener que instalar todos los paquetes que tenías anteriormente. Por lo general tengo que recurrir a un papel y bolí, antes de realizar la instalación, para apuntar todos los paquetes más importantes que tengo para que así no se me olvide ninguno.
Para evitar esto, existe una opción en el programa dpkg que te indique los paquetes instalados, de modo que podemos crear un backup con esta información.
dpkg --get-selections > backup.txt
La salida generada tiene todos los paquetes instalados, que suelen ser muchísimos. Aunque puede ser muy engorroso, pero te aseguras que no se te olvida ninguno.
Sep 22
Después de unos meses absorbido por completo con la tesis, ya tengo un poco más de tiempo para continuar con el blog. El objetivo de las siguientes entradas será proporcionar algunos códigos XQuery/XSLT de utilidad. En la entrada de hoy mostraré una función XQuery para recuperar un documento XML completo. Estamos habituados a usar doc(«/db/examples.xml») […] [...more]
Posted: under eXist, XML, XQuery.
Después de unos meses absorbido por completo con la tesis, ya tengo un poco más de tiempo para continuar con el blog. El objetivo de las siguientes entradas será proporcionar algunos códigos XQuery/XSLT de utilidad. En la entrada de hoy mostraré una función XQuery para recuperar un documento XML completo.
Estamos habituados a usar doc(«/db/examples.xml») para recuperar un documento XML en XQuery, pero que sucede si queremos recuperar el documento XML completo con sólo algunos elementos hijos o con algunos atributos concretos. En este caso es necesario hacer una función XQuery recursiva para esta operación.
01. declare namespace f='f.ns';
02. declare function f:RetrieveXML($nodes as node()*) {
03. for $x in $nodes
04. return
05. if ($x instance of comment()) then $x
06. else if ($x instance of processing-instruction())then $x
07. else if ($x instance of element()) (:también $x:)
08. then element {node-name($x)} {
09. for $y in $x/@* (: también $x/@*:)
10. return attribute {local-name($y)}{$y}
11. ,
12. for $y in $x/node()
13. return f:RetrieveXML($y)
14. }
15. else if ($x instance of text()) then xs:string($x)
16. else ()
17. };
(: Ejemplo de uso : )
18. f:RetrieveXML(doc("/db/examples.xml")/*)
La implementación se realiza mediante la instrucción instance of. En primer lugar y a partir del nodo XML recibido (línea 2) se procesan todos sus descendientes y dependiendo de su tipo se realiza un procesamiento distinto: comentario (5), instrucción de procesamiento (6), elemento (7) o texto(15). En el caso de un elemento XML se procede a crear el elemento en cuestión (element), sus atributos (attribute) y a llamar recursivamente a sus descendientes.
En el caso de los atributos o elementos se podría hacer directamente $x pero he utilizado las instrucciones element y attribute de XQuery para entender su funcionamiento.
May 13
eXist is an XML database, that is, it allows us to store XML documents as well as to store another kind of documents, such as :XQuery Query documents (. xq), XQuery Module documents (. xqm), stylesheet documents (.xslt), etc… in a binary way. In this post, I will show an XQuery code to retrieve the […] [...more]
Posted: under eXist, XML, XQuery.
Tags: Recuperación documentos binarios eXist xq XQuery
eXist is an XML database, that is, it allows us to store XML documents as well as to store another kind of documents, such as :XQuery Query documents (. xq), XQuery Module documents (. xqm), stylesheet documents (.xslt), etc… in a binary way. In this post, I will show an XQuery code to retrieve the textual information from a binary document stored in eXist.
let $binary := util:binary-doc("/db/queries/query.xq")
let $text := util:binary-to-string($binary) //Convertir binario a texto
return $text
where the binary document (query.xq) is stored in the /db/queries collection. In case you want to retrieve a binary document from an external eXist database, you should use the following URL in the previous binary-doc function:
xmldb:exist://HOST:PORT/db/queries/vdoc2doc.xq
May 10
Ayer sábado 9 de mayo de 2009 tuve el enorme placer de acompañar al alumnado del Centro Universitario de Mérida, probablemente, en uno de los días más importantes de su vida: La graduación. El evento llevado al cabo, finalmente después de una dura lucha entre el alumnado y el consorcio, en el majestuoso Teatro Romano […] [...more]
Posted: under Docencia.
Tags: CUM Telemática
Ayer sábado 9 de mayo de 2009 tuve el enorme placer de acompañar al alumnado del Centro Universitario de Mérida, probablemente, en uno de los días más importantes de su vida: La graduación.
El evento llevado al cabo, finalmente después de una dura lucha entre el alumnado y el consorcio, en el majestuoso Teatro Romano de Mérida el cual actuó de un anfitrión inmejorable para este acto. Eso si, todos los asistentes echamos un auténtico órdago a la madre naturaleza que ganamos con una 31 in-extremis pues justo empezó a llover al minuto de acabarse el acto.
Además, en mi caso, el día fue más conmovedor si cabe pues además de poder acompañar a Juanfran, Carlos S., Carlos U. y Javier tuve el enomer placer de realizar la imposición de beca al alumno que he tutorizado durante los tres últimos años: Juanfran. Sirva la presente entrada de mi blog como agradecimiento hacia Juanfran por haber contado conmigo para este acto, por haber sido un excelente tutorando y desearte un futuro lleno de grandes triunfos (puedes conseguir lo que te propongas). Finalmente también me gustaría agradecer a los alumnos de Telemática (Gema) y de Diseño Industrial (Marta) por acordarse de mi en sus discursos. Gracias.
May 07
Navegando, navegando, …. hoy he encontrado lo que en Español llamaría «Chuletario XML» de gran ayuda para las personas que necesitamos tener en un único documento pdf todas las funcionalidaes/funciones de estos lenguajes de forma resumida. Se encuentra en formato pdf para los lenguajes XML, XSLT v1, XSLT v2, XPath, XQuery y expresiones reguales. He […] [...more]
Posted: under XML, XQuery.
Tags: Chuletario XML XPath XQuery XML Quick Reference
Navegando, navegando, …. hoy he encontrado lo que en Español llamaría «Chuletario XML» de gran ayuda para las personas que necesitamos tener en un único documento pdf todas las funcionalidaes/funciones de estos lenguajes de forma resumida.
Se encuentra en formato pdf para los lenguajes XML, XSLT v1, XSLT v2, XPath, XQuery y expresiones reguales. He decido pegar los enlaces directamente de la página web del autor (gracias Mulberry por estos valiosísimos documentos)
May 06
Aquellas personas que me conocen y saben mi experiencia en XML, GNU/Linux, …. tarde o temprano me hacen la misma pregunta. «Qué editor XML / XQuery/XSLT bajo GNU/Linux» me recomiendas. [...more]
Posted: under XML, XQuery.
Tags: Editor XML, XQuery en GNU/Linux
Aquellas personas que me conocen y saben mi experiencia en XML, GNU/Linux, …. tarde o temprano me hacen la misma pregunta. «Qué editor XML / XQuery/XSLT bajo GNU/Linux» me recomiendas. more_link_text
Abr 30
Un grupo de 25 estudiantes y tres profesores de Ingeniería Técnica de Telecomunicaciones, especialidad Telemática, del Centro Universitario de Mérida han participado esta semana en un viaje tecnológico a Madrid como actividad dentro del Proyecto de Acogida y Tutorización de la Titulación de Telemática. El alumnado realizó la visita a una de las mayores empresas […] [...more]
Posted: under Docencia.
Tags: Universidad CUM Telemática
Un grupo de 25 estudiantes y tres profesores de Ingeniería Técnica de Telecomunicaciones, especialidad Telemática, del Centro Universitario de Mérida han participado esta semana en un viaje tecnológico a Madrid como actividad dentro del Proyecto de Acogida y Tutorización de la Titulación de Telemática. El alumnado realizó la visita a una de las mayores empresas de Comunicaciones, Cisco Systems, y al museo de Correos.
La visita a la multinacional Cisco permitió al alumnado tener un acercamiento directo a una de las empresas punteras del sector de las telecomunicaciones a nivel mundial donde asistieron a una conferencia y demostración sobre Comunicaciones Unificadas, una sesión de telepresencia y una mesa redonda sobre el mercado de las telecomunicaciones.
Las Comunicaciones Unificadas combinan todas las formas de comunicación empresarial en un solo sistema unificado. Es un tecnología muy novedosa que consiste en integrar en una misma infraestructura todos los servicios de telefonía, mensajería electrónica (correo electrónico, voz y fax), mensajería instantánea, recursos compartidos por web, etc.
A continuación, se realizó una sesión de telepresencia con Lisboa. La telepresencia se puede considerar como el siguiente paso a la video-conferencia donde el objetivo que se persigue es que los integrantes de la conferencia tenga la sensación de estar físicamente juntos pudiendo estar a miles de kilómetros de distancia.
Por la tarde, los alumnos visitaron el Museo de Correos situado en Aravaca, donde asistieron a una presentación sobre la historia de éste ente para posteriormente visitar las distintas salas que lo compone: instrumentos de la telegrafía del siglo XIX, siglo XX y las salas dedicadas a aspectos más relacionados con Correos como la sala de sellos o uniformes.