1. XPath. Introducción. 2. El modelo de datos de XPath. 1.1 Qué es y para qué sirve Construcción del Árbol de Nodos

Tamaño: px
Comenzar la demostración a partir de la página:

Download "1. XPath. Introducción. 2. El modelo de datos de XPath. 1.1 Qué es y para qué sirve. 2.1. Construcción del Árbol de Nodos"

Transcripción

1 1. XPath. Introducción 1.1 Qué es y para qué sirve Todo el procesamiento realizado con un fichero XML está basado en la posibilidad de direccionar o acceder a cada una de las partes que lo componen, de modo que podamos tratar cada uno de los elementos de forma diferenciada. El tratamiento del fichero XML comienza por la localización del mismo a lo largo del conjunto de documentos existentes en el mundo. Para llevar a cabo esta localización de forma unívoca, se utilizan los URI (Unifom Resource Identifiers), de los cuales los URL (Unifom Resource Locators) son sin duda los más conocidos. Una vez localizado el documento XML, la forma de seleccionar información dentro de él es mediante el uso de XPath, que es la abreviación de lo que se conoce como XML Path Language. Con XPath podremos seleccionar y hacer referencia a texto, elementos, atributos y cualquier otra información contenida dentro de un fichero XML. XPath en sí es un lenguaje sofisticado y complejo, pero distinto de los lenguajes procedurales que solemos usar (C, C++, Basic, Java...). Además, como casi todo en el mundo de XML, aún está en estado de desarrollo, por lo que no es fácil encontrar herramientas que incorporen todas sus funcionalidades. XPath es a su vez la base sobre la que se han especificado nuevas herramientas que aprovechar para el tratamiento de documentos XML. Herramientas tales como XPointer, XLink y XQL (el lenguaje que maneja los documentos XML como si de una base de datos se tratase), que también están en estado de desarrollo, pero que sin duda cambiarán el modo en que actualmente concebimos la navegación por la Web. Así, XPath sirve para decir cómo debe procesar una hoja de estilo el contenido de una página XML, pero también para poder poner enlaces o cargar en un navegador zonas determinadas de una página XML, en vez de toda la página. 2. El modelo de datos de XPath 2.1. Construcción del Árbol de Nodos Un documento XML es procesado por un analizador (o parser) construyendo un árbol de nodos. Este árbol comienza con un elemento raíz, que se diversifica a lo largo de los elementos que cuelgan de él y acaba en nodos hoja, que contienen sólo texto, comentarios, intrucciones de proceso o incluso que están vacíos y sólo tienen atributos La forma en que XPath selecciona partes del documento XML se basa precisamente en la representación arbórea que se genera del documento. De hecho, los "operadores" de que consta este lenguaje nos recordarán la terminología que se utiliza a la hora de hablar de árboles en informática: raíz, hijo, ancestro, descendiente, etc... Un caso especial de nodo son los nodos atributo. Un nodo puede tener tantos atributos como desee, y para cada uno se creará un nodo atributo. No obstante, dichos nodos atributo NO se consideran como hijos suyos, sino más bien como etiquetas añadidas al nodo elemento. A continuación se muestra un ejemplo de cómo se convierte en árbol un documento XML. Este mismo ejemplo será usado a lo largo de todo el tutorial. En primer lugar se muestra el documento XML y a continuación el árbol que genera. Página XML: <libro> <titulo>dos por tres calles</titulo> <autor>josefa Santos</autor> <capitulo num="1"> La primera calle Era una sombria noche del mes de agosto...

2 <parrafo destacar="si"> Ella, inocente cual <enlace href=" que surca el cielo en busca de libaciones... </capitulo> <capitulo num="2" public="si"> La segunda calle Era una obscura noche del mes de septiembre... Ella, inocente cual <enlace href=" que surca el viento en busca del nectar de las flores... </capitulo> <apendice num="a" public="si"> La tercera calle Era una densa noche del mes de diciembre... Ella, candida cual <enlace href=" que surca el espacio en busca de bichejos para comer... </apendice> </libro> Árbol generado: / +---libro +---titulo +---(texto)dos por tres calles +---autor +---(texto)josefa Santos +---capitulo [num=1] +---(texto)la primera calle +---parrafo +---(texto)era una sombría noche parrafo +---(texto)ella, cual inocente mariposa capitulo [num=2] +---(texto)la segunda calle +---parrafo +---(texto)era una obscura noche parrafo +---(texto)ella, cual inocente abeja...

3 2.2. Tipos de Nodos Existen distintos tipos de nodos en un árbol generado a partir de un documento XML, a saber: raíz, elemento, atributo, texto, comentario e instrucción de procesamiento (respectivamente; root, elements, attribute, text, comment y processing instruction). Nodo Raíz Se identifica por /. No se debe confundir el nodo raíz con el elemento raíz del documento. Así, si el documento XML de nuestro ejemplo tiene por elemento raíz a libro, éste será el primer nodo que cuelgue del nodo raíz del árbol, el cual es: /. Insisto: / hace referencia al nodo raíz del árbol, pero no al elemento raíz del documento XML, por más que un documento XML sólo pueda tener un elemento raíz. De hecho, podemos afirmar que el nodo raíz del árbol contiene al elemento raíz del documento. Nodo Elemento Cualquier elemento de un documento XML se convierte en un nodo elemento dentro del árbol. Cada elemento tiene su nodo padre. El nodo padre de cualquier elemento es, a su vez, un elemento, excepto el elemento raíz, cuyo padre es el nodo raíz. Los nodos elemento tienen a su vez hijos, que son: nodos elemento, nodos texto, nodos comentario y nodos de intrucciones de proceso. Los nodos elemento también tienen propiedades tales como su nombre, sus atributos e información sobre los "espacios de nombre" que tiene activos. Cualquier elemento de un documento XML se convierte en un nodo elemento dentro del árbol. Cada elemento tiene su nodo padre. El nodo padre de cualquier elemento es, a su vez, un elemento, excepto el elemento raíz, cuyo padre es el nodo raíz. Los nodos elemento tienen a su vez hijos, que son: nodos elemento, nodos texto, nodos comentario y nodos de intrucciones de proceso. Los nodos elemento también tienen propiedades tales como su nombre, sus atributos e información sobre los "espacios de nombre" que tiene activos. Una propiedad interesante de los nodos elemento es que pueden tener identificadores únicos (para ello deben ir acompañados de un DTD que especifique dicho atributo y asegura que toma valores únicos), esto permite referenciar a dichos elementos de una forma mucho más directa. Nodos Texto Por texto vamos a hacer refrenecia a todos los caracteres del documento que no está marcados con alguna etiqueta. Un nodo texto no tiene hijos, es decir, los distintos caracteres que lo forman no se consideran hijos suyos. Nodo Atributo Como ya hemos indicado, los nodo atributo no son tanto hijos del nodo elemento que los contiene como etiquetas añadidas a dicho nodo elemento. Cada nodo atributo consta de un nombre, un valor (que es siempre una cadena) y un posible "espacio de nombres". Aquellos atributos que tienen por valor el valor por defecto asignado en el DTD se tratarán como si el valor se le hubiese asignado al escribir el documento XML. Al contrario, no se crea nodo para atributos no especificados en el documento XML, y con la propiedad #IMPLIED definida en su DTD. Tampoco se crean nodos atributo para las deficiones de los espacios de nombre. Todo esto es normal si tenemos en cuenta que no es necesario tener un DTD para procesar un documento XML. Nodos comentario y de instrucciones de proceso Aparte de los nodos indicados, en el árbol también se generan nodos para cada nodo con comentarios y con instrucciones de proceso. Al contenido de estos nodos se puede acceder con la propiedad string-value.

4 3. Los Location Paths 3.1. Conceptos básicos Expresiones Una "instrucción" en lenguaje XPath se denomina una expresión. Y pongo entre comillas lo de "instrucción" porque XPath es un lenguaje declarativo, por lo que las intrucciones no son exactamente como estamos acostumbrados a ver. Dichas expresiones pueden incluir cierta variedad de operaciones sobre distintos tipos de operanods. En nuestro caso nos vamos a ceñir a dos tipos de operandos: llamadas a funciones y location paths (algo así como caminos de localización). Un location path es la más importante de los tipos de expresiones que se pueden especificar en notación XPath. La sintaxis de un location path es simliar a la usada a la hora de describir los directorios que forman una unidad de disco en Unix o Linux (y similar a la de los sistemas basados en MS DOS y Windows, si exceptuamos la unidad de disco C:, A: y que las barras usadas son / en vez de las típicas \ de estos últimos sistemas operativos). Sin embargo, sólo la sintaxis es lo similar al sistema de archivos. El significado de las expresiones es totalmente diferente. Por ejemplo, el siguiente path en Unix: /usr/home/pepeillo/docs hace referencia a un único directorio: docs el cual cuelga de el conjunto de directorios /usr/home/pepeillo. Sin embargo, la siguiente expresión en XPath: /libro/capitulo/parrafo hace referencia a TODOS los elementos parrafo que cuelguen directamente de CUALQUIER elemento capitulo que cuelgue de CUALQUIER elemento libro que, finalmente, cuelguen del nodo raíz, /. Bueno, el último "TODOS" sobra dado que solo puede haber un elemento raíz: libro. Hay que tener en cuenta que una expresión en XPath no devuelve los elementos que cumplen con el patrón que representa dicha expresión, sino que devuelve una referencia a dichos elementos; es decir, una expresión XPath nos devuelve una lista de apuntadores a los elementos que encajan en el patrón. Dicha lista puede estar vacía o contener uno o más nodos. Nodo contexto Un location path siempre tiene un punto de partida llamado nodo contexto. Para entendernos es como el directorio actual si nos referimos a un sistema de ficheros. Así, si estando en Unix, damos una orden ls obtendremos los ficheros que existen en el directorio actual, mientras que si decimos ls /usr/bin obtendremos el listado de los ficheros existentes en el directorio /usr/bin con independencia del directorio en que estemos colocados al dar la orden. En los location path ocurre lo mismo. A menos que se indique un camino explícito, se entenderá que el location path parte del nodo que en cada momento se esté procesando. El concepto de "nodo contexto" es imprescindible para comprender cómo se lleva a cabo la elección de los nodos que ajustan con el patrón indicado en el location path. para explicar esto, veamos cómo actuaría un motor de evaluación de expresiones XPath al leer la siguiente expresión aplicada al documento XML que manejamos desde el principio del turtorial: /libro/capitulo/parrafo (Aviso: lo que viene a continuación requiere de pausada lectura, descansito para ir al frigorífico a por algo de beber y pequeño masaje en los ojos... como mínimo) En primer lugar comienza por leer /, lo cual le dice que debe seleccionar el nodo raíz, independientemente del nodo

5 contexto que en ese momento exista. En el momento en que el evaluador de XPath localiza el nodo raíz, éste pasa a ser el nodo contexto de dicha expresión. Siguiendo con nuestro ejemplo, el analizador leería ahora libro, lo cual le dice que seleccione TODOS los elementos que cuelgan del nodo contexto (que atendiendo al párrafo anterior es el nodo raíz) que se llamen libro. Bueno... en este caso solo hay uno... porque (otra vez) solo puede haber un elemento raíz. Sigamos avanzando con nuestro ejemplo. A continuación el analizador leería capitulo, lo cual le dice que seleccione TODOS los elementos que cuelgan del nodo contexto (que atendiendo al párrafo anterior es el nodo libro). En un disco sería imposible que hubiera dos directorios con el mismo nombre colgando de un mismo directorio padre. Sin embargo, en nuestro documento XML podemos ver como hay dos elementos capitulo colgando del elemento raíz libro. Por tanto, en estos momentos hay dos elementos que encajan con el patrón /libro/capitulo. El analizador continua leyendo la expresión XPath que le hemos dado y llega a parrafo. Con ello le estamos diciendo que seleccione TODOS los elementos parrafo que cuelgan del nodo contexto... pero NO hay un nodo contexto, sino DOS!! Bueno, no pasa nada, cada uno de los nodos de ese conjunto de nodos va a tener su momento de gloria, de forma que el evaluador de expresiones lo va a recorrer uno por uno haciendo que, mientras evalúa un determinado nodo, ése sea el nodo contexto de ese momento. En otras palabras, para localizar todos los elementos parrafo tal y como deseamos, se procesa el primer elemento capitulo y de él se extraen todos los parrafo que contenga. A continuación se pasa al próximo elemento capitulo del cual se vuelven a extraer todos los de tipo parrafo que tenga... y así sucesivamente. El resultado final es un nuevo conjunto de nodos (o para ser más precisos, conjunto de punteros a nodo) que encajan con el patrón buscado. Predicados Por lo poco que llevamos visto, podemos pensar que XPath es un gran mecanismo para seleccionar muchos nodos a la vez, lo cual es muy útil. Pero qué pasa si solo queremos seleccionar un nodo que cumple ciertas características? o más de un nodo que cumple con un patrón pero no todos los que lo cumplen, sino solo aquellos con un atributo que les hemos añadido para saber que los puede ver todo el mundo? Bueno, pues para todo esto se utilizan los predicados. Los predicados se incluyen dentro de un location path utilizando los corchetes, como por ejemplo: /libro/capitulo[@num="1"]/parrafo Mediante el anterior location path estamos indicando que se escojan todos los elementos parrafo de todos los elementos capitulo que tengan un atributo llamado num al cual se le haya asignado el valor "1" (recordemos que en XML todos los atributos tienen valores de tipo cadena). Atendiendo a nuestro ejemplo, solo hay un capitulo que cumpla dichas condiciones, por lo que solo los elementos parrafo que él contiene serán seleccionados. Posteriormente, veremos qué tipo de cosas se pueden poner en un predicado Cómo hago los ejemplos? Buena pregunta. Generar un fichero XML es muy sencillo, basta un editor de texto corriente y moliente; pero, cómo podemos comprobar que una expresión XPath es correcta?, es decir, que tras ejecutarse podamos comprobar que dicha expresión selecciona justo los nodos que deseamos. En realidad, hacer esto también es muy sencillo. Podemos utilizar programas a tal efecto, muy útiles cuando deseamos evaluar expresiones muy complejas, o bien usar una hoja XSL. De hecho, más adelante estudiaremos un programa Java desarrollado para este tutorial, y lo utilizaremos para probar los ejemplos. No obstante, para realizar los ejemplos y ejercicios es suficiente con disponer de un navegador Web que sea capaz de

6 mostrar documentos XML a los que, a su vez, se aplica un fichero XSL, esto es, un fichero que realiza transformaciones en el XML generando un nuevo contenido. Para hacerlo fácil, haz lo siguiente: Paso 1: Guarda el siguiente fichero con el nombre libro.xml. <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="evalua_xpath.xsl"?> <libro> <titulo>dos por tres calles</titulo> <autor>josefa Santos</autor> <capitulo num="1"> La primera calle Era una sombría noche del mes de agosto... <parrafo destacar="si"> Ella, inocente cual <enlace href=" que surca el cielo en busca de libaciones... </capitulo> <capitulo num="2" public="si"> La segunda calle Era una obscura noche del mes de septiembre... Ella, inocente cual <enlace href=" que surca el viento en busca del néctar de las flores... </capitulo> <apendice num="a" public="si"> La tercera calle Era una densa noche del mes de diciembre... Ella, cándida cual <enlace href=" que surca el espacio en busca de bichejos para comer... </apendice> </libro> Como puedes ver, este fichero XML incluye una línea que indica qué fichero XSL (el fichero que permite evaluar expresiones XPath) va a utilizarse para seleccionar nodos y generar la información con la que realimente se desea trabajar. Dicho fichero, evalua_xpath.xsl es justo el que ponemos a continuación. Paso 2: Guarda el siguiente fichero con el nombre evalua_xpath.xsl (ojo a la extensión: xsl). <?xml version="1.0"?> <!-- ========================================================================== File...: evalua_xpath.xsl Author...: Victor Manuel Rivas Santos, vrivas@ujaen.es Description...: XSL for tutorials ========================================================================== -->

7 <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="libro"> <HTML> <HEAD> <TITLE>Ejemplos en XPath</TITLE> </HEAD> <BODY> <H1>Resultados:</H1> <PRE> <xsl:apply-templates select="/libro/capitulo/text()"/> </PRE> </BODY> </HTML> </xsl:template> </xsl:stylesheet> Paso 3: Comprobar que tus expresiones XPath son correctas. A continuación, lo único que tienes que hacer es sustituir lo que hemos escrito en rojo en el fichero evalua_xpath.xsl (es decir, /libro/capitulo) por la expresión que quieras evaluar y volver a guardar el fichero. Ojo: no se debe quitar /text(), pero es porque nos va a servir para poder comprobar visualmente que sólo se han seleccionado los nodos que nos interesaban; insistimos, la expresión XPath no necesita acabar con /text(), pero la ponemos para que nosotros veamos mejor el resultado en el navegador. Para ver si funciona, carga en un navegador de páginas web moderno el fichero libro.xml que has guardado y podrás ver cómo se visualizan sólo los nodos que hayas elegido. Usando Java Como alternativa, hemos desarrollado un programa Java que recibe el documento XML a procesar, y pide que se teclee la expresión. Mediante las clases XPath y XPathExpression podemos buscar la expresión en el documento XML. import java.io.*; import javax.xml.parsers.documentbuilderfactory; import javax.xml.xpath.*; import org.w3c.dom.document; import org.w3c.dom.element; import org.xml.sax.inputsource; public class DemoXPath { public DemoXPath() { } public static void main(string[] args) { if (args.length!= 1) { System.out.println("\nUSO: java DemoXPath documento.xml \n"); System.exit(0); } DemoXPath demoxpath = new DemoXPath(); try { System.out.print("\nIntroduce la expresion de busqueda: "); BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in)); String busqueda = stdin.readline(); XPath xpath = XpathFactory.newInstance().newXPath(); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); Document XMLDoc = factory.newdocumentbuilder().parse(new InputSource(new FileInputStream( args[0] ))); Element element = XMLDoc.getDocumentElement(); XPathExpression exp; exp = xpath.compile( busqueda ); System.out.println("=>\n" + (String) exp.evaluate(element,xpathconstants.string) + "\n"); }catch (Exception ex) { System.out.println("Error: " + ex.tostring()); } } // del main } // de la definición de clase

8 3.3. Hachas? Ejes? La verdad es que no sabía muy bien como traducir el término axes que significa algo así como cercenar o podar, aunque también hacha. Lo voy a traducir por hacha que seguro que después de un par de párrafos se convierte en algo normal. Digamos que un hacha incluída en un location path realiza una selección de nodos dentro del árbol (o mejor dicho, dentro del subárbol que cuelga del nodo o conjunto de nodos contexto) de acuerdo con algún patrón. Es decir, que cada vez que hemos usado la barra / (salvo para denominar el nodo raíz) estábamos usando un hacha. Veamos las distintas hachas que podemos usar para recorrer el arbolito. Child Es el hacha utilizada por defecto. Se corresponde con la barra, / (aunque tiene una forma más larga que es: /child::). Ejemplo: Seleccionar todos los titulo de un libro: /libro/titulo Ejercicio: Seleccionar el autor del libro. Ejercicio: Seleccionar todos los párrafos del libro. Attribute Se corresponde con el signo de la (o en su forma larga que es: attribute::). Mediante este operador podemos seleccionar aquellos nodos atributos que deseemos, indicando el nombre del atributo en cuestión. Ejemplo: Seleccionar el atributo num que posean los elementos capitulo /libro/capitulo/@num (Para ver este ejemplo tendrás que quitar /text() del fichero evalua_xpath.xsl) Nótese, que para seleccionar los nodos elemento que muestran dichos atributos, lo que se ha de usar es un predicado (como se ha indicado ya anteriormente) indicando el nombre que ha de poseer el atributo y, si se desea, el valor que debe presentar. Ejemplo: Seleccionar todos los elementos hijo de los capitulo que posean el atributo public (sin importar el valor asignado al mismo): /libro/capitulo[@public]/* Ejemplo: Seleccionar todos los elementos hijo de parrafo cuyo atributo destacar sea igual a "si". /libro/titulo/parrafo[@destacar="si"] Ejercicio: Seleccionar todos atributos num de los apéndices. Ejercicio: Seleccionar todos los atributos href de todos los párrafos del fichero. Ejercicio: Seleccionar todos los párrafos de los capítulos (no de los apéndices) que posean un atributo href Descendant Se especifica poniendo una doble barra: // (en su forma larga: descendant::). Sirve para seleccionar TODOS los nodos que descendiendan del conjunto de nodos contexto. Es decir, no solo los hijos de los nodos contexto, sino también los hijos de los hijos, y los hijos de estos, etc.

9 Ejemplo: Seleccionar todos los parrafo de un libro: /libro//parrafo Ejemplo: Seleccionar todos los descendientes de parrafo que tienen un atributo href. Ejemplo: Mostrar el valor del atributo href del caso anterior:. Self Se especifica mediante el punto (.). Es muy útil pues sirve para seleccionar el nodo contexto. Por ejemplo, supongamos que deseamos seleccionar todos los parrafo descendientes del nodo contexto. No podemos escribir //parrafo, dado que seleccionaría todos los descendientes del nodo raíz. Por ello, la forma correcta es:.//parrafo No es fácil proponer un ejemplo ni ejercicio teniendo en cuenta que aún no conocemos el lenguaje XSLT. En dicho momento se verá con más claridad la gran utilidad de este hacha. Parent Al igual que en los sistemas de ficheros, se utilizan los dos puntos para identificarlo:.. El comportamiento de este hacha es un poco extraño al principio dado que realiza un paso hacia atrás en el árbol de nodos. Ejemplo: Seleccionar todos los nodos que tienen algún hijo de tipo parrafo: //parrafo/.. Ejemplo: Seleccionar todos los nodos capitulo que tienen algún hijo de tipo parrafo: //parrafo/../../capitulo O bien: //capitulo/parrafo/.. Ejercicio: Seleccionar todos los nodos que tienen un hijo de tipo enlace. Ancestor De todas las hachas que podemos usar, esta es la única que no tiene ninguna forma de abreviación, sino que hay que ponerla como ancestor:: Ancestor es a parent lo que descendant es a child. Es decir, devuelve todos los elementos de los cuales el nodo contexto es descendiente. Ejemplo: Seleccionar todos los elementos que tienen entre sus descendientes algún parrafo //parrafo/ancestor::*

10 3.4. Nodos test Los nodos test son algo así como funciones que nos van a ayudar a restringir un poquito lo que nos devuelve una expresión XPath. Ya hemos visto algunos de estos nodos test en los ejemplos anteriores. Pero ahora vamos a verlos con más detenimiento. En primer lugar hemos de distinguir entre las hachas de contenido (content axis) de las que no lo son. Las hachas de contenio son básicamente todas las vistas excepto attibute y namespace (es como attribute pero para obtener el "espacio de nombres" asociado al elemento). Nodos test aplicables a TODAS las hachas El nodo test * devuelve todos los nodos de tipo principal (es decir, elemento, atributo o espacio de nombres), pero no nodos de texto, comentarios y de instrucciones de proceso. Ejemplo: Seleccionar todos los nodos principales descendientes de los parrafo: //parrafo/* Ejercicio: Seleccionar todos los nodos principales descendientes de los apéndices: node() El nodo test node() devuelve todos los nodos de todos los tipos. Seleccionar todos los nodos descendientes de los parrafo: //parrafo/node() Nodos Test aplicables SOLO a la hachas de contenido text() Selecciona cualquier nodo de tipo texto y es precisamente lo que hemos estado poniendo en el fichero evalua_xpath.xl para visualizar el contenido de los nodos seleccionados por cada una de las expresiones de los ejemplos y ejercicios. Ejemplo: Seleccionar el texto de todos los nodos parrafo: //parrafo/text() Ejemplo: Seleccionar TODO el texto que cuelga de todos los nodos parrafo (ojo: ves la diferencia con el anterior?) //parrafo//text() comment() Permite seleccionar cualquier nodo de tipo comentario. processing-instruction() Cualquier nodo de tipo de instrucción de proceso, independientemente de su destino. processing-instruction( destino ) Cualquier nodo de tipo de instrucción de proceso relativo al destino especificado.

11 processing-instruction( cursor ) Cualquier nodo de tipo de instrucción de proceso con el destino cursor Predicados Ya hemos tenido que introducir los predicados en párrafos anteriores. Básicamente, un predicado permite restringir el conjunto de nodos seleccionados por un hacha a aquellos que cumplen cierta condición. Dicha condición es una expresión XPath y se expecifica entre corchetes. Ejemplo: Seleccionar todos los capitulo que tengan un parrafo que tenga algún elemento con atributo href: //capitulo[parrafo/*[@href]] Serán muchas las ocasiones en que deseemos que los nodos a seleccionar no cumplan una sino varias condiciones. En estos casos, los predicados se pueden suceder uno a otro haciendo el efecto de la operación AND. Como en el siguiente ejemplo. Ejemplo: Seleccionar todos los capitulo que tengan un parrafo que tenga algún elemento con atributo href y que ellos mismos (los capitulo) tengan el atributo public a valor si: //capitulo [parrafo/*[@href]] [@public='si'] Aunque también se puede hacer uso del operador and encerrando entre paréntesis los distintos predicados logicos. Ejemplo similar al anterior //capitulo[ (parrafo/*[@href]) and (@public='si')] También se puede hacer uso de la operación or. Esiste otro tipo de operacion or que utiliza la barra vertical: separando no dos predicados, sino dos expresiones XPath. Ejemplo: Seleccionar todos los capitulo que tengan un parrafo que tenga algún elemento con atributo href o todos los apendice: //capitulo[parrafo/*[@href]]//apendice Por último, también podemos especificar con not la negación de alguna de las negaciones del predicado. Seleccionar todos los capitulo que no tengan el atributo public //capitulo[not(@public)] Predicados con funciones de cardinalidad Existen, por último, ciertas funciones que nos van a servir para restringir el conjunto de nodos devueltos en una expresión XPath basándose en la posición del elemento devuelto. Tales funciones son: position(), last() e id(). position() Seleccionar el segundo capitulo: //capitulo[position()=2] Esta función se puede simular poniendo simplemente el número entre corchetes. Mismo ejemplo anterior: seleccionar el segundo capitulo:

12 //capitulo[2] last() Seleccionar el último capitulo: //capitulo[last()] Seleccionar todos los capitulo menos el último: //capitulo[not(position()=last())] Estas funciones se pueden usar con expresiones matemáticas, como en el siguiente ejemplo. Seleccionar el penúltimo capitulo: //capitulo[last()-1] id() Seleccionar los parrafo hijos del elemento con id="capitulo_1": id( "capitulo_1" )/parrafo Hay que tener en cuenta un detalle: sólo se podrá usar en aquellos ficheros XML que sean validados por un DTD en el que se especifique que el atributo id es único. 4. Apéndice 4.1. Ejercicios Hemos creado una dirección web en la que puedes hacer ejercicios de XPath: ejercicios_xpath.html El fichero XML sobre el que tratan los ejercicios es: ejercicios_xpath_xml.html Deberías tenerlo a la vista para hacer los ejercicios.

La construcción de sitios web en el ámbito educativo. XPath. Pedro A. Castillo Valdivieso Universidad de Granada

La construcción de sitios web en el ámbito educativo. XPath. Pedro A. Castillo Valdivieso Universidad de Granada La construcción de sitios web en el ámbito educativo XPath Pedro A. Castillo Valdivieso Universidad de Granada 0 Guión XPath. Introducción El modelo de datos de XPath Location Paths Modo de trabajo para

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

XPath en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es

XPath en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es XPath en el aula Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es Resumen Todo el procesamiento realizado con un fichero XML está basado en la posibilidad de direccionar o acceder

Más detalles

Capítulo 1 Documentos HTML5

Capítulo 1 Documentos HTML5 Capítulo 1 Documentos HTML5 1.1 Componentes básicos HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs

Más detalles

Práctica de introducción a

Práctica de introducción a Práctica de introducción a XML El trabajo consiste en una introducción al uso del lenguaje XML y su aplicación en documentos y sistemas de caracteristicas multimedia. 1.- Qué es XML? XML (extensible Markup

Más detalles

Transformación de documentos XML con

Transformación de documentos XML con Transformación de documentos XML con X S L T Necesidad de las transformaciones XML se presenta como un estándar para transmitir datos a través de Internet. Ante la posibilidad de que distintos centros

Más detalles

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 1 XML: XPath - XQuery Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 2 XPath - XQuery Ambos son estándares para acceder y obtener datos

Más detalles

Capítulo 3: XML Spy como editor de documentos XML. 2. La interfaz de usuario de XML Spy

Capítulo 3: XML Spy como editor de documentos XML. 2. La interfaz de usuario de XML Spy Capítulo 3: XML Spy como editor de documentos XML 1. Objetivos del capítulo Este capítulo pretende servir como una introducción a las funciones de la aplicación XML Spy, incluida dentro del conjunto de

Más detalles

UNIDAD 1. LOS NÚMEROS ENTEROS.

UNIDAD 1. LOS NÚMEROS ENTEROS. UNIDAD 1. LOS NÚMEROS ENTEROS. Al final deberás haber aprendido... Interpretar y expresar números enteros. Representar números enteros en la recta numérica. Comparar y ordenar números enteros. Realizar

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

- saber qué son la World Wide Web y las páginas Web - aprender a usar el navegador Explorer - conocer el sitio Web del Portal EDUCANTABRIA

- saber qué son la World Wide Web y las páginas Web - aprender a usar el navegador Explorer - conocer el sitio Web del Portal EDUCANTABRIA Objetivos: - saber qué son la World Wide Web y las páginas Web - aprender a usar el navegador Explorer - conocer el sitio Web del Portal EDUCANTABRIA Contenidos: 1.- La World Wide Web 2.- El navegador

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes VAST: Manual de usuario Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes Índice general Índice general 2 1. Introducción 4 2. Representación intermedia del AST 5 2.1. Funcionamiento del VAST

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE ÍNDICE ACCESO A LA APLICACIÓN... 2 1.- HOMOLOGACIÓN DE CURSOS... 4 1.1.- INICIAR EXPEDIENTE... 4 1.2.- CONSULTA DE EXPEDIENTES... 13 1.3.- RENUNCIA A LA HOMOLOGACIÓN... 16 2.- MECÁNICA DE CURSOS... 19

Más detalles

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS UNA SESIÓN EN SPSS INTRODUCCIÓN. SPSS (Statistical Product and Service Solutions) es un paquete estadístico orientado, en principio, al ámbito de aplicación de las Ciencias sociales, es uno de las herramientas

Más detalles

Accesibilidad web GUÍA FUNCIONAL

Accesibilidad web GUÍA FUNCIONAL Accesibilidad web GUÍA FUNCIONAL 0 _ ÍNDICE 01_Introducción 02_Primeros pasos 03_Conceptos 04_Navegación por voz 05_Navegación por teclado 06_Navegación por sonido 07_Compatibilidad con lectores de pantalla

Más detalles

Creando una webquests

Creando una webquests Creando una webquests 1. LO PRIMERO EL PROGRAMA Para crear paginas web necesitamos el software apropiado. Hay muchas formas y programas para hacerlo, pero por su facilidad de uso y por ser software libre

Más detalles

Manual para la utilización de PrestaShop

Manual para la utilización de PrestaShop Manual para la utilización de PrestaShop En este manual mostraremos de forma sencilla y práctica la utilización del Gestor de su Tienda Online mediante Prestashop 1.6, explicaremos todo lo necesario para

Más detalles

Hojas de Estilos XSLT en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es

Hojas de Estilos XSLT en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es Hojas de Estilos XSLT en el aula Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es Resumen Según la Orden EDU/2887/2010, de 2 de noviembre, por la que se establece el currículo

Más detalles

Internet Information Server

Internet Information Server Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en

Más detalles

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

AGREGAR COMPONENTES ADICIONALES DE WINDOWS INSTALACIÓN DE IIS EN WINDOWS XP El sistema está desarrollado para ejecutarse bajo la plataforma IIS de Windows XP. Por esta razón, incluimos la instalación de IIS (Servidor de Web) para la correcta ejecución

Más detalles

MANUAL DE AYUDA MODULO TALLAS Y COLORES

MANUAL DE AYUDA MODULO TALLAS Y COLORES MANUAL DE AYUDA MODULO TALLAS Y COLORES Fecha última revisión: Enero 2010 Índice TALLAS Y COLORES... 3 1. Introducción... 3 CONFIGURACIÓN PARÁMETROS TC (Tallas y Colores)... 3 2. Módulos Visibles... 3

Más detalles

El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto:

El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto: Plantilla de texto plano El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto: Título: Es el título que aparecerá identificando

Más detalles

Tutorial: Primeros Pasos con Subversion

Tutorial: Primeros Pasos con Subversion Tutorial: Primeros Pasos con Subversion Introducción Subversion es un sistema de control de versiones open source. Corre en distintos sistemas operativos y su principal interfaz con el usuario es a través

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

Capítulo 6. Desarrollo del Software

Capítulo 6. Desarrollo del Software Capítulo 6. Desarrollo del Software Introducción El objetivo principal de la presente tesis como su título lo describe, es la animación de las tramas de comunicación principales de WCDMA. Para lograr dicho

Más detalles

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie.

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie. Adaptación al NPGC Introducción Nexus 620, ya recoge el Nuevo Plan General Contable, que entrará en vigor el 1 de Enero de 2008. Este documento mostrará que debemos hacer a partir de esa fecha, según nuestra

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

TEMA 4: EMPEZANDO A NAVEGAR ESCUELA UNIVERSITARIA DE INFORMÁTICA. Raúl Martín Martín

TEMA 4: EMPEZANDO A NAVEGAR ESCUELA UNIVERSITARIA DE INFORMÁTICA. Raúl Martín Martín TEMA 4: EMPEZANDO A ESCUELA UNIVERSITARIA DE INFORMÁTICA NAVEGAR Raúl Martín Martín SERVICIOS DE INTERNET SERVICIOS DE INTERNET Las posibilidades que ofrece Internet se denominan servicios. Hoy en día,

Más detalles

5.4. Manual de usuario

5.4. Manual de usuario 5.4. Manual de usuario En esta sección se procederá a explicar cada una de las posibles acciones que puede realizar un usuario, de forma que pueda utilizar todas las funcionalidades del simulador, sin

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Curso Internet Básico - Aularagon

Curso Internet Básico - Aularagon Antes de empezar es necesario que tengas claro algunas cosas: para configurar esta cuenta de correo, debes saber que el POP y el SMTP en este caso son mail.aragon.es; esta cuenta de correo hay que solicitarla

Más detalles

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón.

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón. 11. RECIBOS. Desde esta opción de Menú vamos a completar el proceso de gestión de los diferentes tributos, generando recibos, informes de situación, impresiones, etc. 11.1. GENERACIÓN DE RECIBOS. Una vez

Más detalles

Guardar y abrir documentos

Guardar y abrir documentos Contenido 1. Guardar como... 2 2. Abrir... 4 3. Recuperar archivos... 5 4. Unidades, Archivos y Carpetas... 5 5. Estructura de archivos... 6 6. Diferentes visiones de la lista de Abrir... 7 7. Cambiar

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES CASO PRÁCTICO DISTRIBUCIÓN DE COSTES Nuestra empresa tiene centros de distribución en tres ciudades europeas: Zaragoza, Milán y Burdeos. Hemos solicitado a los responsables de cada uno de los centros que

Más detalles

Squipy v1.1. 0.-Introducción

Squipy v1.1. 0.-Introducción Squipy v1.1 0.-Introducción Squipy es un sencillo proxy que permite filtrar y modificar los datos que se envían desde el navegador hacia un servidor web. El interfaz está en castellano y en inglés y su

Más detalles

La plantilla propone aprovechar esta estructura en común y sólo modificar el contenido del área del documento que sea diferente.

La plantilla propone aprovechar esta estructura en común y sólo modificar el contenido del área del documento que sea diferente. PLANTILLAS EN PHP El concepto de plantilla, es un criterio del desarrollo web que propone optimizar la cantidad de documentos HTML que se usan en el desarrollo de un sitio web. A lo largo de la navegación

Más detalles

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable

Más detalles

Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento

Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento Qué es AT-Encrypt nos permitirá dotar de contraseña a cualquier documento o carpeta. Este documento o carpeta sólo será legible por aquel que conozca la contraseña El funcionamiento del cifrado (o encriptación)

Más detalles

Capítulo VI. Diagramas de Entidad Relación

Capítulo VI. Diagramas de Entidad Relación Diagramas de Entidad Relación Diagramas de entidad relación Tabla de contenido 1.- Concepto de entidad... 91 1.1.- Entidad del negocio... 91 1.2.- Atributos y datos... 91 2.- Asociación de entidades...

Más detalles

port@firmas V.2.3.1 Manual de Portafirmas V.2.3.1

port@firmas V.2.3.1 Manual de Portafirmas V.2.3.1 Manual de Portafirmas V.2.3.1 1 1.- Introducción 2.- Acceso 3.- Interfaz 4.- Bandejas de peticiones 5.- Etiquetas 6.- Búsquedas 7.- Petición de firma 8.- Redactar petición 9.- Firma 10.- Devolución de

Más detalles

Manual SBR. Pero antes de explicar las actividades que principalmente podemos desarrollar vamos a dar una visión global de la aplicación.

Manual SBR. Pero antes de explicar las actividades que principalmente podemos desarrollar vamos a dar una visión global de la aplicación. Manual SBR Este proyecto consta de una herramienta denominada SBR mediante la cual el usuario podrá realizar principalmente las siguientes actividades: Crear un nuevo dominio. Modificar el dominio existente.

Más detalles

Guía de Aprendizaje No. 1

Guía de Aprendizaje No. 1 MICROSOFT WORD Fundamentos básicos, ejecutar Word, su ventana y sus barras de herramientas Objetivos de la Guía de Aprendizaje No. 1 Obtener fundamentos básicos sobre Procesador de Texto Microsoft Word

Más detalles

Análisis de esquemas XML [1]

Análisis de esquemas XML [1] Análisis de esquemas XML [1] Dirigido a: Administradores de Bases de Datos Área: Bases de Datos Autor: Pablo F. Dueñas Servicios Profesionales Danysoft Resumen Un esquema XML describe la estructura de

Más detalles

Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib

Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib Manual de uso de la plataforma para monitores CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib [Manual de uso de la plataforma para monitores] 1. Licencia Autor del documento: Centro de Apoyo Tecnológico

Más detalles

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I

Más detalles

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas.

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas. 1 de 18 Inicio Qué es un foro En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas. En el campus virtual, el foro es una herramienta

Más detalles

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición. Microsoft Word Microsoft Word es actualmente (2009) el procesador de textos líder en el mundo gracias a sus 500 millones de usuarios y sus 25 años de edad. Pero hoy en día, otras soluciones basadas en

Más detalles

Plantilla de texto plano

Plantilla de texto plano Plantilla de texto plano Esta es la plantilla seleccionada por defecto al crear una nueva página. Título: Es el título que aparecerá identificando a la página, así como en la cabecera del documento en

Más detalles

Estructurar la información dentro del ordenador:

Estructurar la información dentro del ordenador: Estructurar la información dentro del ordenador: Aprender a estructurar la información dentro del ordenador, para facilitar su manejo y búsqueda. Las carpetas se utilizan para clasificar los documentos

Más detalles

GUÍA RED SOCIAL FACEBOOK

GUÍA RED SOCIAL FACEBOOK GUÍA RED SOCIAL FACEBOOK Qué es una Red Social? Una Red Sociales un sitio en internet donde compartir información, mensajes, ideas, fotos, etc., con amigos, conocidos y desconocidos. Para acceder a una

Más detalles

El programa Minitab: breve introducción a su funcionamiento. Para mostrar la facilidad con la que se pueden realizar los gráficos y cálculos

El programa Minitab: breve introducción a su funcionamiento. Para mostrar la facilidad con la que se pueden realizar los gráficos y cálculos El programa Minitab: breve introducción a su funcionamiento Para mostrar la facilidad con la que se pueden realizar los gráficos y cálculos estadísticos en la actualidad, el libro se acompaña, en todo

Más detalles

Tema 3. Espacios vectoriales

Tema 3. Espacios vectoriales Tema 3. Espacios vectoriales Estructura del tema. Definición y propiedades. Ejemplos. Dependencia e independencia lineal. Conceptos de base y dimensión. Coordenadas Subespacios vectoriales. 0.1. Definición

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

1.- INTRODUCCIÓN 2.- PARÁMETROS

1.- INTRODUCCIÓN 2.- PARÁMETROS 1.- INTRODUCCIÓN Hemos diseñado una aplicación que facilite el envío a las entidades bancarias de las de cobro por domiciliación. La entrada de esta aplicación pueden ser, tanto ficheros cuyos formatos

Más detalles

Programa por Clase. 8. CSS3 9. Ejercicio Práctico 10. Examen

Programa por Clase. 8. CSS3 9. Ejercicio Práctico 10. Examen Curso CSS Clase 5 Programa por Clase 1. Repaso HTML. Introducción. Reglas CSS internas. 2. Etiquetas básicas de CSS (tipografía, subrayado, etc.) 3. Archivos CSS externos. Colores. Imágenes. 4. Modelo

Más detalles

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007 MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007 Servicio de Informática y Comunicaciones Para poder diseñar un formulario y que éste nos envíe los resultados a nuestro correo electrónico, necesitamos

Más detalles

Practica creación de tesauros

Practica creación de tesauros Practica creación de tesauros 2008-2009 Jorge Morato Lara Sonia Sánchez-Cuadrado Tutorial para tcs-10 de Webchoir Qué es? Es un programa para crear tesauros. Las relaciones de tipo tesauro se pueden adaptar

Más detalles

Redes de área local: Aplicaciones y servicios WINDOWS

Redes de área local: Aplicaciones y servicios WINDOWS Redes de área local: Aplicaciones y servicios WINDOWS 4. Servidor DNS 1 Índice Definición de Servidor DNS... 3 Instalación del Servidor DNS... 5 Configuración del Servidor DNS... 8 2 Definición de Servidor

Más detalles

Porcentajes. Cajón de Ciencias. Qué es un porcentaje?

Porcentajes. Cajón de Ciencias. Qué es un porcentaje? Porcentajes Qué es un porcentaje? Para empezar, qué me están preguntando cuando me piden que calcule el tanto por ciento de un número? "Porcentaje" quiere decir "de cada 100, cojo tanto". Por ejemplo,

Más detalles

Notas para la instalación de un lector de tarjetas inteligentes.

Notas para la instalación de un lector de tarjetas inteligentes. Notas para la instalación de un lector de tarjetas inteligentes. Índice 0. Obtención de todo lo necesario para la instalación. 3 1. Comprobación del estado del servicio Tarjeta inteligente. 4 2. Instalación

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra.

El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra. Gestión de la tesorería y del riesgo El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra. En este manual nos

Más detalles

INDICE. 1. Introducción... 4. 2. El panel Entities view... 5. 3. El panel grafico... 6. 4. Barra de botones... 6. 4.1. Botones de Behavior...

INDICE. 1. Introducción... 4. 2. El panel Entities view... 5. 3. El panel grafico... 6. 4. Barra de botones... 6. 4.1. Botones de Behavior... MANUAL DE USUARIO INDICE 1. Introducción... 4 2. El panel Entities view... 5 3. El panel grafico... 6 4. Barra de botones... 6 4.1. Botones de Behavior... 7 4.2. Botones de In-agents... 8 4.3. Botones

Más detalles

NOTAS TÉCNICAS SOBRE EL SIT: Comunicados (I)

NOTAS TÉCNICAS SOBRE EL SIT: Comunicados (I) NOTAS TÉCNICAS SOBRE EL SIT: Comunicados (I) Introducción...2 Introducción a los Códigos de Fusión... 2 Modelos de Cartas...2 Elaboración del Modelo... 2 Formato HTML (para envíos por correo electrónico)...

Más detalles

Cómo instalar el software de CRM Personas en un alojamiento web remoto

Cómo instalar el software de CRM Personas en un alojamiento web remoto Cómo instalar el software de CRM Personas en un alojamiento web remoto No es el uso pretendido del programa. Usar bajo responsabilidad propia de manera experimental Índice de contenido Cómo usar el CRM

Más detalles

Practica A. Crear y Administrar Grupos

Practica A. Crear y Administrar Grupos Practica A Crear y Administrar Grupos Los grupos simplifican la administración ya que permiten dar permisos a grupos de usuarios en vez de uno a uno. Antes de comenzar a utilizar los grupos hay que entender

Más detalles

GENERACIÓN DE TRANSFERENCIAS

GENERACIÓN DE TRANSFERENCIAS GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base

Más detalles

CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS

CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS Nuestra empresa es una pequeña editorial que maneja habitualmente su lista de ventas en una hoja de cálculo y desea poder realizar un análisis de sus

Más detalles

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7 Tutoriales de ayuda e información para todos los niveles AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7 Como agregar a una red existente un equipo con Windows 7 y compartir sus archivos

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Curso Excel Básico - Intermedio

Curso Excel Básico - Intermedio Curso Excel Básico - Intermedio Clase 4 Relator: Miguel Rivera Adonis Introducción Base de Datos: Definición de Base de Datos Ordenar datos Formulario Filtros Trabajar con Sub-Totales Validación de Datos

Más detalles

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B)

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) APRENDERAPROGRAMAR.COM TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B) Sección: Cursos Categoría: Tutorial básico del programador web:

Más detalles

2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU

2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU 2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU Antecedentes:... 2 1. Introducción... 3 2. Imágenes que no se visualizan... 3 3. URLs de recursos o actividades que no son autocontenido...

Más detalles

1 Introducción a XML

1 Introducción a XML 1 Introducción a XML Introducción (I)! Qué es XML?! Últimamente todo el mundo habla sobre XML!! Dicen que es un lenguaje etiquetado...es decir: Es un lenguaje como HTML, pero con nuevas etiquetas?! Dicen

Más detalles

PLANTILLAS DE DOCUMENTOS EN WORD 2007

PLANTILLAS DE DOCUMENTOS EN WORD 2007 1 PLANTILLAS DE DOCUMENTOS EN WORD 2007 Introducción Una plantilla es un modelo o patrón para crear nuevos documentos. En una plantilla se guarda internamente el formato utilizado, es decir, el estilo

Más detalles

MS ACCESS BÁSICO 6 LOS INFORMES

MS ACCESS BÁSICO 6 LOS INFORMES 2010 MS ACCESS BÁSICO 6 LOS INFORMES 93 LOS INFORMES Los informes son una herramienta de Access para elaborar información, sobre los datos que deseemos, preparada para ser impresa. A partir de una base

Más detalles

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Introducción Con la finalidad de mantenerte informado respecto a todos los cambios y mejoras de los productos de CONTPAQ i, ponemos a tu disposición

Más detalles

Operación de Microsoft Excel

Operación de Microsoft Excel Representación gráfica de datos Generalidades Excel puede crear gráficos a partir de datos previamente seleccionados en una hoja de cálculo. El usuario puede incrustar un gráfico en una hoja de cálculo,

Más detalles

Capítulo 0. Introducción.

Capítulo 0. Introducción. Capítulo 0. Introducción. Bueno, por fin está aquí el esperado (espero!!) Capítulo Cero del Tutorial de Assembler. En él estableceremos algunos conceptos que nos serán de utilidad a lo largo del Tutorial.

Más detalles

1. Creación del repositorio

1. Creación del repositorio FACULTADE DE INFORMÁTICA Departamento de Computación Tecnología de la Programación 2008-2009 Ingeniería Informática Práctica 1: Subversion Introducción El objetivo de esta práctica es aprender a manejar

Más detalles

Pasamos ahora a definir brevemente cual es el método de conexión más habitual usando un entorno gráfico.

Pasamos ahora a definir brevemente cual es el método de conexión más habitual usando un entorno gráfico. Clientes de FTP en modo gráfico Introducción Ya vimos en la primera parte de nuestro curso de FTP, que la conexión a servidores inicialmente se realizaba (y aún se sigue haciendo) en modo texto. Aunque

Más detalles

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición

Más detalles

ESTÁNDAR DESEMPEÑO BÁSICO Recopila información, la organiza y la procesa de forma adecuada, utilizando herramientas tecnológicas.

ESTÁNDAR DESEMPEÑO BÁSICO Recopila información, la organiza y la procesa de forma adecuada, utilizando herramientas tecnológicas. ESTÁNDAR DESEMPEÑO BÁSICO Recopila información, la organiza y la procesa de forma adecuada, utilizando herramientas tecnológicas. Sala de sistemas, Video proyector, Guías RECURSOS ACTIVIDADES PEDAGÓGICAS

Más detalles

2_trabajar con calc I

2_trabajar con calc I Al igual que en las Tablas vistas en el procesador de texto, la interseccción de una columna y una fila se denomina Celda. Dentro de una celda, podemos encontrar diferentes tipos de datos: textos, números,

Más detalles

Aproximación local. Plano tangente. Derivadas parciales.

Aproximación local. Plano tangente. Derivadas parciales. Univ. de Alcalá de Henares Ingeniería de Telecomunicación Cálculo. Segundo parcial. Curso 004-005 Aproximación local. Plano tangente. Derivadas parciales. 1. Plano tangente 1.1. El problema de la aproximación

Más detalles

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10 CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,

Más detalles

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation.

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows

Más detalles

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Report Builder

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Report Builder Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 5: Report Builder Instituto de Tecnologías Educativas 2011 Informes con Oracle Report Builder En su configuración original, OpenOffice

Más detalles

La página web del centro con SPIP

La página web del centro con SPIP La página web del centro con SPIP Ponente: Daniel López Avellaneda 8 - Práctica en Internet Manual para el curso organizado por: CEP provincia de Córdoba http://cibermatex.com/?page=suscripciones 28 Enero

Más detalles

Internet como herramientas de comunicación: El correo electrónico

Internet como herramientas de comunicación: El correo electrónico Internet como herramientas de comunicación: El correo electrónico 1. El correo electrónico Objetivo del tema: Aprender a manejar el correo electrónico y los medios de comunicación existentes en Internet.

Más detalles

Unidad Didáctica 12. La publicación

Unidad Didáctica 12. La publicación Unidad Didáctica 12 La publicación Contenido 1. Desarrollar y explotar 2. Definición del Sitio 3. Alojar nuestra primera página Web 4. Configurar la conexión FTP U.D. 12 La publicación 1. Desarrollar y

Más detalles

Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 9: Imprimir

Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 9: Imprimir Ministerio de Educación Diseño de Presentaciones en la Enseñanza Módulo 9: Imprimir Instituto de Tecnologías Educativas 2011 Diseño de Presentaciones en la Enseñanza (OpenOffice) Imprimir Imprimir una

Más detalles

Desarrollo de Servicios Web con JBuilder

Desarrollo de Servicios Web con JBuilder Artículos técnicos Grupo Danysoft: Desarrollo de Servicios Web con JBuilder Segunda parte Oscar Cristobal Ruiz Departamento Java Equipo Grupo Danysoft Enero 2003 - (902) 123146 www.danysoft.com Desarrollo

Más detalles

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación IIC1102 Introducción a la Programación Tutorial eclipse TM Introducción al uso de eclipse TM Contents

Más detalles