Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

XSLT Y XPATH - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 23 de febrero de 2026 por Alberto S.

6 visualizaciones

Descargar la transcripción

Bueno, pues ya estamos aquí de nuevo. El otro día, bueno, estamos con el tema 5, ¿verdad? Que esto va a tratar de las conversiones y adaptación del documento a XML. 00:00:00
Y bueno, es el tema 5 del lenguaje de marcas. 00:00:12
extras ni nada nos generará mucho código entonces 00:00:42
ya dije que lo que podemos hacer es descargarnos una versión de prueba de 30 00:00:50
días y bueno yo me imagino que esos 30 días serán suficientes si necesitáis 00:00:55
más días pues lo podéis crear con otra cuenta de correo electrónico y andamos 00:00:59
así porque bueno o si bien es de pago pero bueno por lo menos nos permite 00:01:04
probarla entonces ya me imagino que todos habréis instalado la herramienta y vamos a ir con él con 00:01:10
la aplicación del código y del tema vale como siempre os dejo aquí un poco de código de para 00:01:18
que vaya es trasteando y teniendo una base para ello yo ya me lo des está o sea me lo descomprimido 00:01:24
no tenemos dos partes está de test es un código que está en los contenidos vale y al final en 00:01:31
En la última página de los contenidos hay un vídeo que lo explica, pero bueno, lo voy a volver a explicar yo también para que esté claro. 00:01:37
Y luego, pues eso, hay otro código que lo he generado yo y me va a servir de base para explicaros el tema, ¿vale? 00:01:47
Y a vosotros para poder hacer la práctica, la tarea, si queréis. 00:01:57
Entonces, vale. Vamos a ejecutar Oxygen. ¿Dónde estás? Aquí. Que tarda un ratillo. Vale, perfecto. 00:02:01
Entonces aquí lo que vamos a hacer va a ser abrir el test 00:02:29
Como vemos, tenemos un archivo XML y un XSL 00:02:35
Lo que hacemos con el XSLT, o sea la transformación 00:02:47
Tenemos un archivo XSL 00:02:52
Luego el XSLT es la transformación del XML 00:02:54
Entonces lo que tenéis que pensar es que de una base de datos se pueden exportar los datos en formato XML 00:02:59
Entonces esos datos van a ser dinámicos 00:03:07
Porque realmente hoy tenemos una empresa de 20 empleados 00:03:09
Igual dentro de 5 años tenemos 500 00:03:13
Entonces esos empleados van cambiando 00:03:15
Y si queremos plasmar esta información, estos datos en una página web 00:03:18
Sería conveniente que esta página web también fuera dinámica 00:03:25
Entonces, es una forma de hacerlo. A medida que el XML va creciendo, pues nosotros, como tenemos en realidad una transformación con el XSL, vamos a hacer en el mismo XSL una programación del HTML para saber cómo queremos que se muestren los datos. 00:03:28
También se pueden añadir incluso hojas de estilo con CSS, que lo hemos visto, ¿verdad? Y luego, a la hora de decir un párrafo y aquí le ponemos la información o el nombre, apellidos y la información o la información en una tabla, ¿vale? 00:03:48
Cuando programamos la tabla en HTML con su CSS. Pues justo a la hora de plasmar los datos, de meterle los datos, es donde vamos a leerlos del XML, ¿vale? 00:04:03
Donde vamos a coger esos datos del XML con XPath. XPath lo que te permite es acceder a esos datos y se basa en que el XML está dividido en nodos. 00:04:15
Y estos nodos tienen una jerarquía. Empezando por el nodo raíz, que es agenda en este caso. Este tiene un hijo, que es persona, y a su vez persona tiene tres hijos. 00:04:29
Identificadores, dirección y teléfono. Si vamos a dirección tiene a su vez tres hijos, calle, localidad y código postal. 00:04:43
Y código postal tiene un padre que es dirección y dirección tiene un padre que es persona y persona tiene un padre que es agenda. 00:04:52
Entonces vemos que un XML normal está compuesto por nodos y esos nodos tienen una jerarquía de hijos y padres 00:04:58
Teniendo en cuenta esta jerarquía, con el XPath vamos a poder acceder a ellos 00:05:07
Entonces vemos que aquí tenemos un template con persona 00:05:15
Entonces aquí lo que estamos haciendo es posicionarnos en la información que tiene persona 00:05:22
Que sería esta de aquí. Entonces aquí utilizamos ApplyTemplate ya. Son funciones que tiene predefinidas XSL y hay que saber utilizarlas. 00:05:27
Entonces con el template nos posicionamos en persona aquí. Luego con ApplyTemplate lo que estamos haciendo es ApplyTemplateIdentificadores que es este que hemos programado aquí arriba. 00:05:43
Y lo que vamos a hacer es sacar el nombre y el apellido. Como estamos posicionados en persona, nombre y apellido está dentro de identificadores. 00:05:56
Entonces, posicionándonos en persona no podríamos acceder a nombre y apellido. Solo podríamos acceder a identificadores, a dirección y a teléfono. 00:06:09
Pero, como estamos aplicando este template de arriba, que este template de arriba sí que está en identificadores, sí que tiene acceso a nombre y apellidos. 00:06:18
Entonces, es lo que sacamos. 00:06:29
¿Vale? 00:06:31
¿Cómo ejecutamos esto? 00:06:32
Pues, primero tenemos que hacer una configuración. 00:06:34
¿Veis? 00:06:37
Configure Transformation Scenario. 00:06:39
Entonces, yo ya tengo dos escenarios creados. 00:06:42
¿Vale? 00:06:46
Pero imaginad que esta lista estuviera vacía 00:06:46
Le daríamos a New para crear un escenario 00:06:51
Yo le voy a dar a Edit porque ya está 00:06:54
Entonces os saldría una pantalla como esta al darle a New 00:06:55
Lo que queremos es ponerle la URL del XML que vamos a coger 00:07:01
Y cuando le das, por defecto es esta, mira 00:07:09
Vamos a borrarlos y los hacemos nuevos 00:07:12
Vale 00:07:15
Entonces 00:07:18
Tenemos esto, ¿no? 00:07:20
Le damos a la llave 00:07:22
Anda, me vuelven a salir 00:07:23
Safe and close 00:07:26
Vale, perfecto 00:07:29
Le damos a la llave 00:07:31
Uy, la leche 00:07:32
Vale, ahora sí 00:07:33
Perdonad 00:07:37
Genial 00:07:38
No tenemos escenarios 00:07:38
Vale, estamos empezando 00:07:40
From scratch, como dicen los ingreses 00:07:43
entonces le damos a new entonces tenemos xslt transformation on xml le damos ahí porque es la 00:07:45
opción que queremos entonces que xml vamos a coger el que viene por defecto porque como 00:07:55
estamos posicionados en el xsl vale y en la misma carpeta te viene prueba punto xml ya te lo coge 00:08:02
por defecto. Entonces simplemente dándole a la flechita lo seleccionas. ¿Y el xsl dónde está? Pues en el current file url, ¿no? En la url que estamos 00:08:12
seleccionando. Por esto es importante que cuando le deis a ejecutar estéis seleccionando al xsl, porque si seleccionáis otro archivo no lo va a pillar, ¿vale? 00:08:25
Porque aquí le estamos diciendo que el archivo que está activo es el xsl que vamos a coger, ¿vale? 00:08:35
Entonces si le damos, le damos a Apply y ya te lo ejecuta. 00:08:43
¿Veis? Aquí lo que está cogiendo es el nombre y apellidos de los identificadores. 00:08:51
Entonces si vamos al xml vemos que Inés López Pérez y aquí es Roberto Gutiérrez Gómez, ¿vale? 00:08:56
Entonces es simplemente eso. También le podemos generar ahí. Entonces, esto es un pequeño ejemplito, que es el del contenido que tenemos en la unidad. También lo explican ahí, si queréis ver el vídeo también está guay. 00:09:05
Pero bueno, es básicamente lo que os he explicado yo. Este encabezamiento, aquí como estamos utilizando OxygenXML, no haría falta, ¿vale? Va a funcionar igual. 00:09:27
Pero si estuviéramos utilizando Visual Studio Code o alguna otra herramienta, pues ya cambia la historia, ¿vale? Porque no son herramientas que estén orientadas 100% al XML como Oxygen, entonces hay que configurar de otra manera. 00:09:40
Y sí que se añaden. ¿De acuerdo? Entonces, bueno, pues vamos a cerrar esto. Ah, también os quería enseñar. Si le dais aquí a New, podéis crear un montón de formatos. 00:09:54
Y, por ejemplo, tengo aquí ya seleccionada el XSLT. Si le dais a crear, veis que ya os arma el esqueleto con todas las referencias que son necesarias y las versiones y de todo. 00:10:13
Entonces, para que lo sepáis a la hora de empezar la tarea y todo eso, si lo necesitáis. 00:10:28
Perfecto, entonces vamos a darle a abrir y vamos con el código ya más complejo que os he introducido 00:10:37
Aquí tenemos la agenda que hemos estado trabajando en unidades anteriores 00:10:47
En este caso le he metido tres contactos y como veis sigue teniendo una jerarquía 00:10:56
Agendas en el nodo raíz, luego tenemos contactos, nombre, apellidos, teléfono de edad 00:11:01
direcciones que a su vez tiene 3 00:11:07
entonces esto con el XPath 00:11:08
lo tendremos que tener en cuenta 00:11:11
vale 00:11:12
entonces 00:11:14
he creado 00:11:15
un XSL 00:11:19
con funciones 00:11:20
que normalmente se utilizan 00:11:22
entonces 00:11:25
vamos a configurar 00:11:27
la transformación 00:11:30
nos posicionamos en el XSL 00:11:32
de acuerdo 00:11:35
y le damos a la llave. Ya tenemos la anterior pero la anterior no nos vale porque si le damos se va a ejecutar así y esto no es lo que queremos. 00:11:36
Lo que queremos es crear una nueva transformación. Entonces, vamos a coger el XML por defecto, que es agenda, y en el XSL el current, como habíamos hablado. 00:11:53
entonces aquí lo que sí que va a cambiar es que vamos a generar un output 00:12:10
y le vamos a decir que se abra en el browser 00:12:18
y le vamos a llamar index.xml 00:12:21
entonces lo que estamos haciendo aquí es que queremos que se ejecute 00:12:28
que cada vez que lo ejecutemos se grabe en un archivo de salida 00:12:36
que se llame index.html 00:12:41
y se guarde, se vaya sobrescribiendo 00:12:43
sobre sí mismo, entonces si le damos 00:12:46
a aceptar 00:12:48
vamos a cambiarle el nombre 00:12:50
vamos a ponerle 00:12:53
agenda.html 00:12:54
perfecto 00:12:57
entonces 00:13:04
le damos a aplicar 00:13:06
y ya se ejecuta en el 00:13:10
browser 00:13:11
vale 00:13:13
¿Vale? Perfecto. Entonces, vamos una a una a ver cómo funciona esto del xsl y el xslt y cómo saca los datos del xml y todo eso. 00:13:15
Perdonadme que voy a ajustar aquí una cosita. 00:13:32
vale, entonces 00:13:35
lo primero que hacemos es 00:13:44
con el template posicionarnos en la raíz 00:13:46
que es agenda 00:13:49
¿vale? entonces 00:13:50
en la raíz lo que estamos haciendo es 00:13:53
teniendo acceso a todo lo que 00:13:54
contiene la raíz, que es esto 00:13:57
que he subrayado 00:13:59
entonces ya a partir de aquí lo que vamos a hacer es 00:13:59
programar nuestro html 00:14:05
Que, como os he dicho, le podemos introducir un CSS, una hoja de estilos para que quedara más bonito. Pero bueno, de momento vamos a programar nuestro HTML. 00:14:07
Que si vais a la tarea, el HTML ya se da. O sea, tendrías que copiar todo esto para luego sacarle los datos, la información. 00:14:19
Vale, y que saliera aquí. Y también el XML también se da, que ya son los datos que tenéis que añadir aquí con la transformación del XSL. 00:14:37
Vale, entonces, como veis aquí, pues vamos programando el HTML con su head, su título y su body. 00:14:52
Entonces vamos explicando cosillas 00:14:59
Hemos dicho que estamos en agenda 00:15:03
¿Vale? 00:15:06
Entonces 00:15:07
XSL y XPath tienen una serie de funciones 00:15:08
Que nos pueden ser útiles 00:15:12
Como para 00:15:14
La primera que vamos a ver es 00:15:15
Para ver el nodo actual 00:15:18
Que es con la función name 00:15:19
Y esto lo que nos saca es 00:15:20
Nodo actual 00:15:24
Agenda 00:15:25
Que es donde estamos 00:15:26
hemos dicho que estamos en la agenda 00:15:29
que es el nodo raíz 00:15:32
seguimos 00:15:33
estamos en la agenda 00:15:35
entonces decimos que 00:15:37
por cada contacto 00:15:40
que es el siguiente 00:15:42
estamos en la agenda 00:15:44
desde la agenda podemos ver los contactos 00:15:45
no podemos ver 00:15:48
lo que hay dentro 00:15:50
lo que podemos ver es el contacto 00:15:51
entonces 00:15:55
Entonces, por ejemplo, este que tenemos aquí. Estamos en la agenda, con el value of estamos extrayendo el valor. Entonces, como hemos dicho que agenda podemos ver los contactos, podríamos poner simplemente contacto y se sacaría la información de los tres contactos, pero también podemos utilizar índices. 00:15:56
índices. La diferencia es que esto no es como un array, una lista en Python que va de 0 a n-1, esto va de 1 a n. Entonces, si queremos sacar la información 00:16:22
del segundo contacto, ponemos entrecochetes 2. Estamos en la agenda, por eso podemos acceder al contacto. Y aquí estamos accediendo al segundo contacto. 00:16:34
Vale, vamos a continuación 00:16:44
Como tenemos más de un contacto, utilizamos un for each 00:16:48
Y lo que va a hacer el for each es recorrer todos los contactos, los tres 00:16:51
Porque si no, lo que haría es que si por ejemplo ponemos value of select contacto 00:16:55
Y aquí ponemos nombre y apellidos 00:17:02
Lo que nos va a hacer es sacar primero Paula, Alberto, Juan 00:17:05
Porque va a recorrer los nombres primeros 00:17:10
y luego va a recorrer los apellidos, pero con el forEach nos aseguramos de que coge cada elemento como un elemento individual 00:17:12
y es como se hace para recorrer, por ejemplo, en un XML los 500 datos que tuviéramos, ¿vale? 00:17:20
Entonces, estamos en la agenda, bajamos a contacto, como bajamos a contacto ya tenemos acceso a toda esta información, 00:17:29
entonces decimos que por cada contacto lo que va a hacer es sacar el valor de la concatenación del nombre espacio apellido 00:17:37
y además vamos a sacar el país que es el valor de teléfono y dentro de teléfono tenemos un atributo que se llama país 00:17:47
¿Y cómo es un atributo? Pues se llama con arroba país, ¿vale? Slash arroba país. Porque lo que tenemos es que estamos en agenda, hemos bajado, le hemos dicho que por cada contacto saque el país del teléfono, ¿vale? 00:17:57
Por cada contacto va a sacar el nombre y apellidos concatenado y el país de cada teléfono. 00:18:17
¿De acuerdo? Entonces, si vamos al navegador, lo que tenemos es que nos saca el nombre y los apellidos y el país. 00:18:26
Nombre y apellidos y el país. 00:18:38
Nombre de apellidos y el país. Vemos que la información del segundo contacto es de Alberto Sierra García. Entonces aquí, información del segundo contacto, que habíamos dicho que estábamos en la agenda, desde la agenda solo podemos acceder a los contactos y para acceder al segundo contacto era con el índice. 00:18:40
Entonces nos saca toda la información del segundo contacto. Todo esto. Como veis aquí. Continuamos. 00:19:05
Imaginad que tenéis un XML súper complicado 00:19:21
Que no son dos o tres niveles de jerarquía 00:19:25
Sino que tendrías que navegar mucho por el fichero 00:19:28
Hay una forma de acceder al nombre de un nodo en concreto 00:19:35
Que es con slash slash 00:19:40
Con slash slash lo que haces es que te da igual la jerarquía 00:19:41
Lo que va a buscar es nodos con este nombre 00:19:46
¿Vale? Porque hemos dicho que aquí estamos en la agenda, que desde la agenda solo podemos llegar a contacto. Para llegar a dirección tendríamos que meternos en contacto y ya acceder a esto, donde está dirección. 00:19:49
pero como ponemos en las eslas ya accedemos a dirección directamente entonces hay unos 00:20:03
operadores que es el punto y el punto punto vale no sé si habéis navegado por ms2 pero es algo 00:20:11
parecido con el punto lo que hacemos es obtener la información del mismo nivel en el que estamos 00:20:18
del nivel actual con el punto punto obtenemos información del nivel superior vale como que 00:20:24
subimos de nivel. Entonces aquí lo que estamos haciendo es slash slash dirección. Le estamos 00:20:31
diciendo que allá donde encuentre un nodo cuyo nombre sea dirección es donde vamos a obtener la 00:20:36
información. Con el punto le estamos diciendo que muestre toda la información de ese nivel. Entonces 00:20:42
con el punto lo que estamos diciendo es que saque la calle el número y el código postar. 00:20:48
Entonces, para sacar el correo, como estamos metidos dentro de dirección, necesitamos subir un nivel 00:20:53
Cuando subes un nivel ya puedes sacar el nombre, el apellido, los teléfonos, la edad y el correo 00:21:02
Entonces, lo que hacemos es, dentro de dirección subimos fuera, al nivel superior, con el punto a punto 00:21:09
Y allí sacamos el correo. Entonces, vemos que aquí nos está sacando todos los datos de la dirección, calle, número y código postal y también el correo. 00:21:17
Esto de información de segundo contacto ya lo hemos explicado. Seguimos. Seguimos con contactos. 00:21:33
Por cada contacto, es decir, que va a recorrer los tres contactos, vamos a sacar el valor cuyo país del teléfono sea Netherlands. 00:21:43
¿Qué estamos haciendo aquí? Ya estamos poniendo filtros, estamos poniendo condicionales. 00:21:57
Aquí estaríamos como haciendo un bucle recorriendo los tres contactos y dentro del bucle tendríamos un if. 00:22:03
Si país es igual a Netherlands, lo saco. Es una especie de programación que tenemos con el XPath. 00:22:11
Entonces, como veis, podemos tener condicionales, tener filtros. De los 500 usuarios que me ha devuelto la base de datos, solo quiero sacar los que tengan la lengua azul. 00:22:22
¿Vale? Si hubiera un parámetro que fuera el color de lengua, pues pondríamos color de lengua igual azul. Entonces solo te sacaría esos. ¿Vale? Y como veis, como es un atributo, pues se pone con arroba. 00:22:36
sacar los contactos más viejos 00:22:51
¿qué es lo que pasa? 00:22:55
que estos operadores 00:22:57
el operador del igual sí que se lo traga 00:22:59
pero el operador de menor y mayor 00:23:01
no, porque es un programa 00:23:04
o sea, es un lenguaje de etiquetas 00:23:06
y las etiquetas de mayor y menor 00:23:08
las utilizamos para abrir y cerrar 00:23:10
entonces si le ponemos aquí 00:23:11
un mayor, si le ponemos esta etiqueta aquí 00:23:13
el lenguaje va a interpretar 00:23:16
que la sentencia se acaba aquí 00:23:18
que es de cierre. Y por eso no podemos utilizar estos operadores. Ya lo vimos en las primeras unidades, ¿verdad? 00:23:20
Que lo que utilizamos es el greater than. Entonces, si queremos sacar los contactos más viejos, lo que vamos a hacer es que 00:23:28
Por cada contacto cuya edad sea mayor que 30, ¿vale? Vamos a ver cuántos contactos tenemos de esos. Edad 80 años, edad 31, edad 29. O sea, estamos hablando de estos dos contactos. 00:23:45
¿Vale? 00:24:06
O sea, con esta sentencia lo que hacemos es que 00:24:11
De todos los contratos que tenemos 00:24:13
Solo estamos cogiendo estos dos 00:24:15
Ahora 00:24:17
Con el XSL sort 00:24:20
Lo que hacemos es ordenarlos 00:24:24
De menor a mayor 00:24:26
Vale, aquí ya estamos sacando el teléfono 00:24:29
De Netherlands 00:24:39
Porque Netherlands 00:24:40
Es este de aquí 00:24:42
¿Vale? Y solo sacamos ese 00:24:44
A pesar de que estamos 00:24:47
Metiendo un for each 00:24:49
¿Vale? Si no estuviera discriminando 00:24:53
Me sacaría los tres 00:24:55
Pero como solo quiero el de Netherlands 00:24:57
Me saca el de Netherlands 00:24:59
¿Vale? 00:25:00
Y ahora estamos sacando los contactos más viejos 00:25:03
Sacar los contactos más viejos 00:25:05
Entonces Alberto es el primero 00:25:08
Porque Alberto es más joven 00:25:10
Y luego saca Paula, que es 80 00:25:14
¿Vale? Entonces lo que hace el sort 00:25:16
Sort, que es ordenar en inglés, claro 00:25:19
Es ordenar en orden ascendente 00:25:21
Entonces eso 00:25:25
Aquí le estamos diciendo que ordene ascendentemente por edad 00:25:32
¿Vale? Por eso saca primero a Alberto y luego a Paula 00:25:36
Y aquí con el choose lo que hacemos es que le decimos que si el nombre es Alberto 00:25:40
Esto es como un if-else 00:25:52
¿Sabes? Si pasa esto hacemos una cosa 00:25:58
Si no, hacemos otra cosa 00:26:02
¿Vale? 00:26:04
Porque es verdad que aquí esto es equivalente a if 00:26:05
Si edad es mayor que 30, pero si quisiéramos hacer un else, tendríamos que utilizar un choose 00:26:09
En plan de, si edad es mayor que 30, hacemos esto 00:26:16
Y si no, hacemos otra cosa 00:26:21
Pues para hacer ese tipo de estructuras tenemos que utilizar un choose 00:26:23
Entonces aquí lo que estamos haciendo es, cuando el nombre sea igual a Alberto 00:26:27
Y fijaros en una cosa que tampoco os he dicho 00:26:34
No son comillas dobles, son comillas simples 00:26:37
¿Vale? Para las cadenas de caracteres 00:26:40
Comillas simples, porque si no, no lo va a pillar 00:26:43
Esto de las comillas simples está al lado del cero 00:26:47
¿Vale? A la derecha del cero en el teclado 00:26:53
Es la que tiene el cierre de la interrogación arriba 00:26:55
¿Vale? Pues eso, que tenéis que utilizar comillas simples 00:27:04
Aquí estoy utilizando comillas simples. Entonces volvemos. Estructura choose. Cuando el nombre sea igual a Alberto, lo cambiamos a Alberto, ahora se llama Pedro. 00:27:09
Si no, sacamos el valor. Ya está. ¿Vale? Aquí podríamos hacer otra cosa, pero lo dejamos así. ¿Vale? Entonces, aquí lo que estamos haciendo es que cuando se llama Alberto lo cambiamos y si no, sacamos el valor. 00:27:24
Para que veáis cómo es una estructura de if-else. ¿Vale? Y es lo que tenemos aquí. Por eso no me saca Alberto. Me saca Alberto, ahora se llama Pedro y luego me saca Paula. 00:27:41
vale y por último el operador estrella aquí lo que estamos haciendo es seleccionar todo lo que 00:27:54
contenga la dirección que es esto de aquí y me diréis jolín y por qué no simplemente lo pongo 00:28:10
quitando esto verdad vamos a ver las diferencias con estrella como veis aquí lo que estamos 00:28:21
haciendo es ponerle el nombre de cada nodo verdad y luego le sacamos la información del nodo del 00:28:30
nivel actual porque es el punto recordad que el nivel actual era el punto el nivel superior era 00:28:44
era el punto punto vale entonces con el asterisco sale aquí calle 00:28:48
la calle el número el código postal la calle número el código postal si le 00:28:56
quitamos el asterisco 00:29:01
ya te sale todo junto 00:29:08
¿Vale? Esa es la diferencia. Que con el asterisco te va a ir, digamos, sacando los elementos que hay dentro de ese nivel, pero uno a uno. 00:29:12
¿Vale? Porque si lo ponemos así, lo que va a hacer es que te va a sacar todo. 00:29:27
Nodo actual, aquí está en dirección 00:29:32
Que hemos dicho que al principio estamos en agenda 00:29:34
Ups, perdón 00:29:40
En agenda porque nos hemos posicionado en agenda 00:29:41
Luego estamos en contacto 00:29:45
Y dentro de contacto hemos ido dirección 00:29:48
Agenda, contacto y dirección 00:29:50
Estamos aquí 00:29:54
Vale, nodo actual, dirección 00:29:55
Datos, todos estos 00:29:57
Y por eso me saca ahí, así 00:29:59
Nodo actual, dirección 00:30:01
Datos, todos estos 00:30:02
Sin embargo, si le ponemos barra asterisco, ya lo que va a hacer es ir elemento por elemento. 00:30:04
Ya no se va a meter en todo esto, sino que va a decir por cada elemento, por eso es un forEach, 00:30:22
Por cada elemento que encuentre dentro de dirección va a sacar una línea. Por eso aquí cuando le decimos el nombre del primer elemento no va a sacar dirección, va a sacar el primer elemento. 00:30:35
luego va a volver a recorrer el segundo y te va a sacar el segundo elemento 00:30:56
va a volver a recorrer el tercero y te va a sacar el tercer elemento 00:31:00
y te va a sacar el valor de ese nivel 00:31:03
entonces lo que va a hacer es coger calle 00:31:06
posicionarse aquí, ¿vale? 00:31:10
o sea, con el asterisco estamos aquí, en dirección 00:31:13
y con el asterisco le decimos que queremos recorrer cada elemento 00:31:18
que sea hijo del padre que es dirección. 00:31:22
Entonces, nos posicionamos aquí. 00:31:29
Con el name le decimos que estamos en calle. 00:31:31
Y sacamos el valor con el punto. 00:31:33
Lo mismo pasa para número, lo mismo pasa para código postal. 00:31:38
¿De acuerdo? 00:31:42
Entonces, por eso lo sacaré con este formato. 00:31:45
Y esa es la explicación del código que os he presentado. 00:31:50
Ahora, con este código ya podréis hacer la tarea, como os he dicho, que simplemente es coger el XML que os dan en la tarea, copiarlo y luego os posicionáis en el nodo, copiáis el HTML y con el XPath y el XSL vais cogiendo la información que os va interesando y filtrando por lo que necesitéis. 00:31:54
ya sabéis que los filtros pues podéis hacer 00:32:21
modo if o modo if else 00:32:24
vale, y con eso 00:32:27
ya tendréis suficiente 00:32:30
así que nada, pues 00:32:32
que se os dé bien la unidad y la tarea y nos vemos en la próxima 00:32:35
sesión, adiós 00:32:39
Materias:
Tecnología
Etiquetas:
Innovación
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado básico
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado medio
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado superior
      • Primer Curso
      • Segundo Curso
Subido por:
Alberto S.
Licencia:
Reconocimiento - Compartir igual
Visualizaciones:
6
Fecha:
23 de febrero de 2026 - 20:20
Visibilidad:
Público
Centro:
IES CIFP a Distancia Ignacio Ellacuría
Duración:
00′ 06″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
125.80 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid