bibing.us.esbibing.us.es/proyectos/abreproy/11910/descargar... · apéndice b ficheros...
TRANSCRIPT
Apéndice B
Ficheros desarrollados para laaplicación
Medir el progreso de la programación
por líneas de código es como medir
el progreso en la construcción
de aviones por el peso.
Bill Gates
Resumen: En este apéndice se adjunta todo el código desarrollado para
la aplicación interactiva, escrito en los lenguajes XML (Extensible Markup
Language), XSLT (Extensible Stylesheet Language Transformations) y XPL
(XML Pipeline Language).
B.1. Introducción
Se incluyen en este apéndice todos los �cheros XML, XPL y XSL desarrollados,con el �n de que el lector interesado tenga acceso a los detalles de la implementación.Se ha estructurado el capítulo de la siguiente manera:
Cada sección corresponde a cada uno de los directorios utilizados. Se comienzapor presentar todos los �cheros del directorio emission, para a continuaciónpasar a mostrar el contenido de rc y de xpl, en ese orden. Por último, sededica otra sección a enumerar los �cheros de imágenes necesarios para elfuncionamiento de la aplicación.
Dentro de cada sección, los archivos han sido distribuidos en distintos apar-tados, según el servicio o funcionalidad al que pertenezcan.
El orden de los �cheros dentro de cada apartado se ha procurado determinarde forma �lógica�, esto es, en función de su importancia u orden de utilización.
133
134 Apéndice B. Ficheros desarrollados para la aplicación
B.2. Directorio de emisión
B.2.1. Ficheros generales
con�g.xml
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <con f i g xmlns :x i=" ht tp : //www.w3 . org /2001/XInclude"3 xmlns :xs=" ht tp : //www.w3 . org /2001/XMLSchema"4 xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s "5 xmlns:tmg=" ht tp : //www. tmira . com/ops/ p r o c e s s o r s "6 xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e ">7
8 <se rv e r>192 . 168 . 101 . 2</ s e r v e r>9 <port>8080</port>
10 <card>smartcard</card>11 <aid />12 <modem_phone/>13 <modem_user/>14 <modem_password/>15
16 </ con f i g>
service.xml
1 <?xml version=" 1 .0 " encoding="ISO−8859−1"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <s e r v i c e id="SAE">4
5 <!−− Página de l a ayuda −−>6 <page id="help " path="help /" page="help . xml"></page>7
8 <!−− Pos i c i ón y tamaño de l a t e l e v i s i ó n ( capa de vídeo ) −−>9 <tv posx="16" posy="10" s i z e x="210" s i z e y="168"></tv>
10
11 <!−− Páginas de s e r v i c i o −−>12 <page id=" index " path="" page=" index . xml"></page>13 <page id="guia_busqueda" path="" page="guia_busqueda . xml"></page>14 <page id="guia_busqueda1" path="" page="guia_busqueda1 . xml"></page>15 <page id="guia_busqueda2" path="" page="guia_busqueda2 . xml"></page>16 <page id="guia_busqueda3" path="" page="guia_busqueda3 . xml"></page>17 <page id="guia_busqueda4" path="" page="guia_busqueda4 . xml"></page>18 <page id=" formacion_empleo" path="" page=" formacion_empleo . xml"></page>19 <page id="anuncios_empleo" path="" page="anuncios_empleo . xml"></page>20 <page id="ofertas_empleo_publ ico " path="" page="ofertas_empleo_publ ico .
xml"></page>21 <page id="directorio_SAE" path="" page="directorio_SAE . xml"></page>22 <page id="web_SAE" path="" page="web_SAE. xml"></page>23 <!−− Páginas de s e r v i c i o ( guía búsqueda empleo ) −−>24 <page id="_11" path="" page="_11 . xml"></page>25 <page id="_12" path="" page="_12 . xml"></page>26 <page id="_13" path="" page="_13 . xml"></page>27 <page id="_21" path="" page="_21 . xml"></page>28 <page id="_22" path="" page="_22 . xml"></page>29 <page id="_23" path="" page="_23 . xml"></page>30 <page id="24" path="" page=" 24 . xml"></page>31 <page id="_241" path="" page="_241 . xml"></page>32 <page id="_242" path="" page="_242 . xml"></page>
B.2. Directorio de emisión 135
33 <page id="_25" path="" page="_25 . xml"></page>34 <page id="26" path="" page=" 26 . xml"></page>35 <page id="_261" path="" page="_261 . xml"></page>36 <page id="_262" path="" page="_262 . xml"></page>37 <page id="_31" path="" page="_31 . xml"></page>38 <page id="_32" path="" page="_32 . xml"></page>39 <page id="_33" path="" page="_33 . xml"></page>40 <page id="_34" path="" page="_34 . xml"></page>41 <page id="_35" path="" page="_35 . xml"></page>42 <page id="_36" path="" page="_36 . xml"></page>43 <page id="_41" path="" page="_41 . xml"></page>44 <page id="_42" path="" page="_42 . xml"></page>45 <page id="_43" path="" page="_43 . xml"></page>46 <page id="_44" path="" page="_44 . xml"></page>47
48 </ s e r v i c e>
styles.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− S ty l e s f i l e −−>3
4 <s t y l e s>5
6 <s t y l e id="s_body" font=" T i r e s i a s " s ize="21" type="1"7 colfore="#DF7401" l i n e s p a c e="20" halign="1" valign="0" insetx="5"
insety="15" alpha="255"></ s t y l e>8
9 <s t y l e id="s_body2" font=" T i r e s i a s " s ize="20" type="1"10 colfore="#000000" l i n e s p a c e="19" halign="1" valign="0" insetx="5"
insety="15" alpha="255"></ s t y l e>11
12 <s t y l e id="s_body3" font=" T i r e s i a s " s ize="20" type="1"13 colfore="#DF7401" l i n e s p a c e="19" halign="−1" valign="0" insetx="5"
insety="15" alpha="255"></ s t y l e>14
15 <s t y l e id="s_bodyDetal le " font=" T i r e s i a s " s ize="16" type="1"16 colfore="#000000" l i n e s p a c e="17" halign="1" valign="0" insetx="5"
insety="10" alpha="255"></ s t y l e>17
18 <s t y l e id="s_body_form" font=" T i r e s i a s " s ize="19" type="1" colback="#FEF4E6"
19 colfore="#000000" l i n e s p a c e="18" halign="1" valign="0" insetx="5"insety="15" alpha="255"></ s t y l e>
20
21 <s t y l e id="s_menu_form" font=" T i r e s i a s " s ize="19" type="1" colback="#BCBCBC" colfore="#41448A" colbackhigh="#E5CB89" colforehigh="#0D1CEC"l i n e s p a c e="15" halign="−1" valign="0" alpha="255" insetx="5" insety=
"10"></ s t y l e>22
23 <s t y l e id="s_menuver" font=" T i r e s i a s " s ize="18" type="1" l i n e s p a c e="18"insetx="0" insety="0" colback="#BCBCBC" colfore="#41448A" colbackhigh="#E5CB89" colforehigh="#0D1CEC" halign="−1" valign="0" alpha="255"></ s t y l e>
24
25 <s t y l e id="s_menuverCursos" font=" T i r e s i a s " s ize="18" type="1" l i n e s p a c e="15" insetx="0" insety="13" colback="#BCBCBC" colfore="#41448A"colbackhigh="#E5CB89" colforehigh="#0D1CEC" halign="−1" valign="0"alpha="255"></ s t y l e>
26
136 Apéndice B. Ficheros desarrollados para la aplicación
27 <s t y l e id="s_menuverEmpresas" font=" T i r e s i a s " s ize="15" type="1"l i n e s p a c e="15" insetx="0" insety="0" colback="#BCBCBC" colfore="#41448A" colbackhigh="#E5CB89" colforehigh="#0D1CEC" halign="−1"valign="0" alpha="255"></ s t y l e>
28
29 <s t y l e id="s_menuhor" font=" T i r e s i a s " s ize="20" type="1" l i n e s p a c e="18"insetx="0" insety="20" colback="#BCBCBC" colfore="#41448A"colbackhigh="#E5CB89" colforehigh="#0D1CEC" halign="−1" valign="0"alpha="255"></ s t y l e>
30
31 <s t y l e id="s_menuhorCentrado" font=" T i r e s i a s " s ize="20" type="1"l i n e s p a c e="18" insetx="0" insety="20" colfore="#41448A" colforehigh="#0D1CEC" halign="0" valign="0" alpha="255"></ s t y l e>
32
33 <s t y l e id="s_popup" font=" T i r e s i a s " s ize="20" type="1" colback="#CAE4E7"colfore="#666666" colbackhigh="#48A2AA" colforehigh="#f f f f f f " insetx="10" insety="5" bo rd e r s i z e="0" l i n e s p a c e="0" halign="−1" valign="0"alpha="255"></ s t y l e>
34
35 <s t y l e id="s_tabla_pares " font=" T i r e s i a s " s ize="15" type="1" colback="#A0A0A0" colfore="#000000" colbackhigh="#E5CB89" colforehigh="#0D1CEC"insetx="0" insety="5" l i n e s p a c e="15" halign="−1" valign="0" alpha="
255"></ s t y l e>36
37 <s t y l e id="s_tabla_impares " font=" T i r e s i a s " s ize="15" type="1" colback="#C0C0C0" colfore="#000000" colbackhigh="#E5CB89" colforehigh="#0D1CEC"insetx="0" insety="5" l i n e s p a c e="15" halign="−1" valign="0" alpha="
255"></ s t y l e>38
39 <s t y l e id="s_tabla_cabecera " font=" T i r e s i a s " s ize="15" type="1" colback="#F1AE4A" colfore="#000000" colbackhigh="#F2BA0F" colforehigh="#0D1CEC" insetx="0" insety="5" l i n e s p a c e="15" halign="−1" valign="0" alpha="255"></ s t y l e>
40
41 <s t y l e id="s_menuSinFondo" font=" T i r e s i a s " s ize="17" type="1" insetx="0"insety="20" colfore="#000000" colforehigh="#000000" l i n e s p a c e="15"halign="0" valign="0" alpha="255"></ s t y l e>
42
43 </ s t y l e s>
index.xml
1 <?xml version=" 1 .0 " encoding="ISO−8859−1"?>2
3 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>4
5 <page id=" index " background="background .mpg">6
7 <!−− Para que se vea l a ayuda a l pu l sa r e l botón amar i l l o −−>8 <help>c_help</help>9
10 <!−− Contenedor para l o s botones de l menú p r i n c i p a l −−>11 <conta ine r id="c_mp_botones" v i s="1" alpha="0" posx="45" posy="350" s i z e x
="366" s i z e y="158">12
13 <menu type="matrix " nrows="2" posx="0" posy="0" s i z e x="366" s i z e y="158" itemx="122" itemy="79" sepx="0" sepy="0" s t y l e="s_menuSinFondo">
14
15 <menuitem s t r="Guía para l a búsqueda de
 empleo" img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_guia ) ">
B.2. Directorio de emisión 137
16 <act i on key="OK" act="hidepage ( index ) , showpage ( guia_busqueda ) "></ ac t i on>
17 </menuitem>18
19 <menuitem s t r="
 Formación
 para e l empleo" img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_formacion ) ">
20 <act i on key="OK" act="hidepage ( index ) , showpage ( formacion_empleo )"></ act i on>
21 </menuitem>22
23 <menuitem s t r="
 Anuncios
 de empleo" img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_anuncios ) ">
24 <act i on key="OK" act="hidepage ( index ) , showpage ( anuncios_empleo ) "></ act i on>
25 </menuitem>26
27 <menuitem s t r="
 D i r e c t o r i o
 de l SAE" img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_directorio ) ">
28 <act i on key="OK" act="hidepage ( index ) , showpage ( directorio_SAE ) "></ act i on>
29 </menuitem>30
31 <menuitem s t r="
 Empresas
 andaluzas " img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_empresas ) ">
32 <act i on key="OK" act="hidepage ( index ) , showpage ( h t tp : //$ s e r v e r ; : $port ; / i t v /apps /16003/800/ rc / empresas_formular io ) " actback="hidepage (∗ ) , showpage ( index ) "></ ac t i on>
33 </menuitem>34
35 <menuitem s t r="
 Página web
 de l SAE" img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" onover="showcont ( index . c_mp_help_web) ">
36 <act i on key="OK" act="hidepage ( index ) , showpage (web_SAE) "></act i on>
37 </menuitem>38
39 </menu>40 </ conta ine r>41
42 <!−− Contenedor para e l t exto de bienvenida −−>43 <conta ine r id="c_mp_texto" v i s="1" alpha="0" posx="45" posy="230" s i z e x="
650" s i z e y="140">44
45 <text s t y l e="s_body" posx="0" posy="0" s i z e x="650" s i z e y="30" s c r o l l="0">Bienvenido /a a l a Of i c ina Vi r tua l de Empleo de l a Junta deAndalucía .</ text>
46 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="380" s i z e y="100"s c r o l l="0">Se l e c c i on e l a opción deseada y pu l s e "OK" .
47 Si l o desea , puede ver l a ayuda pulsando e l botón amar i l l o de l mando ad i s t a n c i a .
48 </ text>49
50 </ conta ine r>51
52 <!−− Contenedor para l a imagen de ayuda −−>53 <conta ine r id="c_mp_help_imagen" v i s="1" alpha="0" posx="418" posy="270"
s i z e x="250" s i z e y="240">54
55 <image path=" images /mp_ayuda . png" posx="0" posy="0" s i z e x="250" s i z e y="240"></image>
138 Apéndice B. Ficheros desarrollados para la aplicación
56
57 </ conta ine r>58
59 <!−− Contenedores para cada uno de l o s t ex to s de ayuda −−>60 <conta ine r id="c_mp_help_guia" v i s="0" alpha="0" posx="448" posy="300"
s i z e x="190" s i z e y="200">61 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="190" s i z e y="30" s c r o l l=
"0">Guía para l a búsqueda</ text>62 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"
s c r o l l="0">Una completa guía en l a que se d e t a l l an todos l o s pasosy con s e j o s ú t i l e s para l a búsqueda de empleo .</ text>
63 </ conta ine r>64
65 <conta ine r id="c_mp_help_web" v i s="0" alpha="0" posx="448" posy="300"s i z e x="190" s i z e y="200">
66 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="190" s i z e y="30" s c r o l l="0">Página web de l SAE</ text>
67 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"s c r o l l="0">Aquí podrá encontrar a lgunos en l a c e s de In t e rn e t ú t i l e ssobre e l S e r v i c i o Andaluz de Salud .</ text>
68 </ conta ine r>69
70 <conta ine r id="c_mp_help_formacion" v i s="0" alpha="0" posx="448" posy="300" s i z e x="200" s i z e y="200">
71 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="200" s i z e y="30">Formación para e l empleo</ text>
72 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"s c r o l l="0">Da acceso a un buscador de cur so s de formación para e lempleo o f e r t ado s en Andalucía .</ text>
73 </ conta ine r>74
75 <conta ine r id="c_mp_help_anuncios" v i s="0" alpha="0" posx="448" posy="300" s i z e x="190" s i z e y="200">
76 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="190" s i z e y="30" s c r o l l="0">Anuncios de empleo</ text>
77 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"s c r o l l="0">Permite acceder a un buscador de o f e r t a s de empleo , a s ícomo con su l t a r l a s o f e r t a s de empleo púb l i co en Andalucía .</ text>
78 </ conta ine r>79
80 <conta ine r id="c_mp_help_empresas" v i s="0" alpha="0" posx="448" posy="300" s i z e x="190" s i z e y="200">
81 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="190" s i z e y="30" s c r o l l="0">Empresas andaluzas</ text>
82 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"s c r o l l="0">Muestra in formac ión sobre l a s empresas andaluzas queo f r e c en empleo .</ text>
83 </ conta ine r>84
85 <conta ine r id="c_mp_help_directorio" v i s="0" alpha="0" posx="448" posy="300" s i z e x="190" s i z e y="200">
86 <text s t y l e="s_body3" posx="0" posy="0" s i z e x="190" s i z e y="30" s c r o l l="0">D i r e c t o r i o de l SAE</ text>
87 <text s t y l e="s_body2" posx="0" posy="40" s i z e x="190" s i z e y="160"s c r o l l="0">Permite obtener in formac ión sobre l a s o f i c i n a s de l SAEen cada Comunidad Autónoma .</ text>
88 </ conta ine r>89
90 </page>
B.2. Directorio de emisión 139
B.2.2. Página de ayuda
help/help.xml
1 <?xml version=" 1 .0 " encoding="ISO−8859−1"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <conta ine r id="c_help" co lback="#FEF4E6" type="popup" v i s="0" posx="0"posy="206" s i z e x="720" s i z e y="370" alpha="255">
6 <image path="help / help . png" posx="0" posy="0" s i z e x="720" s i z e y="95"></image>
7 <image path="help / he lp_f l e chas . png" posx="42" posy="100" s i z e x="45"s i z e y="45"></image>
8 <image path="help /help_ok . png" posx="47" posy="152" s i z e x="30" s i z e y="32"></image>
9 <image path="help /help_verde . png" posx="48" posy="195" s i z e x="28"s i z e y="28"></image>
10 <image path="help / he lp_amar i l lo . png" posx="48" posy="233" s i z e x="28"s i z e y="28"></image>
11 <image path="help / help_rojo . png" posx="48" posy="271" s i z e x="28" s i z e y="28"></image>
12 <image path="help /help_azul . png" posx="48" posy="309" s i z e x="28" s i z e y="28"></image>
13 <text s t y l e="s_body2" posx="93" posy="115" s i z e x="620" s i z e y="30"s c r o l l="0">Navegar por l o s menús</ text>
14 <text s t y l e="s_body2" posx="80" posy="159" s i z e x="620" s i z e y="30"s c r o l l="0">Aceptar / Entrar en e l menú s e l e c c i onado</ text>
15 <text s t y l e="s_body2" posx="80" posy="201" s i z e x="620" s i z e y="30"s c r o l l="0">Volver a l menú an t e r i o r / Borrar e l últ imo ca r á c t e r</text>
16 <text s t y l e="s_body2" posx="80" posy="239" s i z e x="620" s i z e y="30"s c r o l l="0">Entrar / S a l i r de e s ta pan ta l l a de ayuda</ text>
17 <text s t y l e="s_body2" posx="80" posy="277" s i z e x="620" s i z e y="30"s c r o l l="0">S a l i r de l a ap l i c a c i ó n y vo lve r a l a TV</ text>
18 <text s t y l e="s_body2" posx="80" posy="315" s i z e x="620" s i z e y="30"s c r o l l="0">Mostrar e l t e c l ado v i r t u a l ( cuando sea po s i b l e )</ text>
19 </ conta ine r>20
21 </page>
B.2.3. Guía para la búsqueda de empleo
guia_busqueda.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>
140 Apéndice B. Ficheros desarrollados para la aplicación
11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="118" s i z e y="28"></image>
12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="118" s i z e y="28"></image>
13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x="118" s i z e y="28"></image>
14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"s i z e y="28"></image>
15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Guía para l a búsqueda de empleo</ text>20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Desde aquí , podrá obtener toda l a in formac ión sobre l abúsqueda de empleo . S e l e c c i on e con l a s f l e c h a s l a opción deseada ypu l s e "OK" .</ text>
21 </ conta ine r>22
23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (5 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="315" s i z e x="400" s i z e y="
200" alpha="0">25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="195" itemx="380" itemy="35" sepx="0" sepy="5" s t y l e="s_menuver">
27
28 <menuitem s t r="Tu empleo">29 <act i on key="OK" act="hidepage ( guia_busqueda ) , showpage (
guia_busqueda1 ) " actback="hidepage ( guia_busqueda1 ) , showpage (guia_busqueda ) "/>
30 </menuitem>31
32 <menuitem s t r="Cómo buscar empleo">33 <act i on key="OK" act="hidepage ( guia_busqueda ) , showpage (
guia_busqueda2 ) " actback="hidepage ( guia_busqueda2 ) , showpage (guia_busqueda ) "/>
34 </menuitem>35
36 <menuitem s t r="Autoempleo">37 <act i on key="OK" act="hidepage ( guia_busqueda ) , showpage (
guia_busqueda3 ) " actback="hidepage ( guia_busqueda3 ) , showpage (guia_busqueda ) "/>
38 </menuitem>39
40 <menuitem s t r="Formación">41 <act i on key="OK" act="hidepage ( guia_busqueda ) , showpage (
guia_busqueda4 ) " actback="hidepage ( guia_busqueda4 ) , showpage (guia_busqueda ) "/>
42 </menuitem>43
44 <menuitem s t r="Volver a l menú p r i n c i p a l ">45 <act i on key="OK" act="hidepage ( guia_busqueda ) , showpage ( index ) "/>46 </menuitem>47
48 </menu>49
50 </ conta ine r>51
52 </page>
B.2. Directorio de emisión 141
guia_busqueda1.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− TU EMPLEO −−>18 <!−− Contenedor de l t exto de bienvenida −−>19 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">20 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Tu empleo</ text>21 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Se l e c c i on e con l a s f l e c h a s l a opción que desee con su l t a r ypu l s e "OK" .</ text>
22 </ conta ine r>23 <!−− Contenedor de l menú v e r t i c a l (4 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="315" s i z e x="400" s i z e y="
230" alpha="0">25 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="210" itemx=
"380" itemy="45" sepx="0" sepy="10" s t y l e="s_menuver">26
27 <menuitem s t r="Conocerte a t i mismo">28 <act i on key="OK" act="hidepage ( guia_busqueda1 ) , showpage (_11) "
actback="hidepage (_11) , showpage ( guia_busqueda1 ) "/>29 </menuitem>30
31 <menuitem s t r="Conocer e l mercado l a bo r a l ">32 <act i on key="OK" act="hidepage ( guia_busqueda1 ) , showpage (_12) "
actback="hidepage (_12) , showpage ( guia_busqueda1 ) "/>33 </menuitem>34
35 <menuitem s t r=" De f i n i r tu plan de búsqueda de empleo">36 <act i on key="OK" act="hidepage ( guia_busqueda1 ) , showpage (_13) "
actback="hidepage (_13) , showpage ( guia_busqueda1 ) "/>37 </menuitem>38
39 <menuitem s t r="Volver ">40 <act i on key="OK" act="hidepage ( guia_busqueda1 ) , showpage (
guia_busqueda ) " actback="hidepage ( guia_busqueda ) , showpage (guia_busqueda1 ) "/>
41 </menuitem>42
43 </menu>
142 Apéndice B. Ficheros desarrollados para la aplicación
44 </ conta ine r>45
46 </page>
guia_busqueda2.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− CÓMO BUSCAR EMPLEO −−>18 <!−− Contenedor de l t exto de bienvenida −−>19 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">20 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Cómo buscar empleo</ text>21 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Se l e c c i on e con l a s f l e c h a s l a opción que desee con su l t a r ypu l s e "OK" .</ text>
22 </ conta ine r>23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (7 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="300" s i z e x="400" s i z e y="
235" alpha="0">25 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="235" itemx=
"380" itemy="27" sepx="0" sepy="6" s t y l e="s_menuver">26
27 <menuitem s t r=" Int roducc ión ">28 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (_21) "
actback="hidepage (_21) , showpage ( guia_busqueda2 ) "/>29 </menuitem>30
31 <menuitem s t r="Curriculum Vitae ">32 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (_22) "
actback="hidepage (_22) , showpage ( guia_busqueda2 ) "/>33 </menuitem>34
35 <menuitem s t r="Carta de pre s en tac i ón ">36 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (_23) "
actback="hidepage (_23) , showpage ( guia_busqueda2 ) "/>37 </menuitem>38
39 <menuitem s t r="Cómo o f r e c e r t e a una empresa">
B.2. Directorio de emisión 143
40 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (24) "actback="hidepage (24) , showpage ( guia_busqueda2 ) "/>
41 </menuitem>42
43 <menuitem s t r="Búsqueda de empleo a t ravé s de In t e rn e t ">44 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (_25) "
actback="hidepage (_25) , showpage ( guia_busqueda2 ) "/>45 </menuitem>46
47 <menuitem s t r="Afrontar e l proceso de s e l e c c i ó n ">48 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (26) "
actback="hidepage (26) , showpage ( guia_busqueda2 ) "/>49 </menuitem>50
51 <menuitem s t r="Volver ">52 <act i on key="OK" act="hidepage ( guia_busqueda2 ) , showpage (
guia_busqueda ) " actback="hidepage ( guia_busqueda ) , showpage (guia_busqueda2 ) "/>
53 </menuitem>54
55 </menu>56 </ conta ine r>57
58 </page>
24.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Cómo buscar empleo: Cómo o f r e c e r t e a una empresa</ text>20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Este apartado se ha d i v i d i do en dos par t e s . S e l e c c i on e l a quedesee con su l t a r y pu l s e l a t e c l a "OK" .</ text>
21 </ conta ine r>22
23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (3 items ) −−>
144 Apéndice B. Ficheros desarrollados para la aplicación
24 <conta ine r id="c_menu_principal" v i s="1" posx="50" posy="315" s i z e x="400"s i z e y="170" alpha="0">
25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="170" itemx="400" itemy="50" sepx="0" sepy="10" s t y l e="s_menuver">
27
28 <menuitem s t r="Parte 1">29 <act i on key="OK" act="hidepage (24) , showpage (_241) " actback="
hidepage (_241) , showpage (24) "/>30 </menuitem>31
32 <menuitem s t r="Parte 2">33 <act i on key="OK" act="hidepage (24) , showpage (_242) " actback="
hidepage (_242) , showpage (24) "/>34 </menuitem>35
36 <menuitem s t r="Volver ">37 <act i on key="OK" act="hidepage (24) , showpage ( guia_busqueda2 ) "
actback="hidepage ( guia_busqueda2 ) , showpage (24) "/>38 </menuitem>39
40 </menu>41
42 </ conta ine r>43
44 </page>
26.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Cómo buscar empleo: Afrontar e l proceso de s e l e c c i ó n</ text>20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Este apartado se ha d i v i d i do en dos par t e s . S e l e c c i on e l a quedesee con su l t a r y pu l s e l a t e c l a "OK" .</ text>
21 </ conta ine r>
B.2. Directorio de emisión 145
22
23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (3 items ) −−>24 <conta ine r id="c_menu_principal" v i s="1" posx="50" posy="315" s i z e x="400"
s i z e y="170" alpha="0">25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="170" itemx="400" itemy="50" sepx="0" sepy="10" s t y l e="s_menuver">
27
28 <menuitem s t r="Parte 1">29 <act i on key="OK" act="hidepage (26) , showpage (_261) " actback="
hidepage (_261) , showpage (26) "/>30 </menuitem>31
32 <menuitem s t r="Parte 2">33 <act i on key="OK" act="hidepage (26) , showpage (_262) " actback="
hidepage (_262) , showpage (26) "/>34 </menuitem>35
36 <menuitem s t r="Volver ">37 <act i on key="OK" act="hidepage (26) , showpage ( guia_busqueda2 ) "
actback="hidepage ( guia_busqueda2 ) , showpage (26) "/>38 </menuitem>39
40 </menu>41
42 </ conta ine r>43
44 </page>
guia_busqueda3.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− AUTOEMPLEO −−>18 <!−− Contenedor de l t exto de bienvenida −−>19 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">20 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Autoempleo</ text>
146 Apéndice B. Ficheros desarrollados para la aplicación
21 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l="0">Se l e c c i on e con l a s f l e c h a s l a opción que desee con su l t a r ypu l s e "OK" .</ text>
22 </ conta ine r>23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (7 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="300" s i z e x="400" s i z e y="
235" alpha="0">25 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="235" itemx=
"380" itemy="27" sepx="0" sepy="6" s t y l e="s_menuver">26
27 <menuitem s t r=" Int roducc ión ">28 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_31) "
actback="hidepage (_31) , showpage ( guia_busqueda3 ) "/>29 </menuitem>30
31 <menuitem s t r="La cu l tu ra emprendedora">32 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_32) "
actback="hidepage (_32) , showpage ( guia_busqueda3 ) "/>33 </menuitem>34
35 <menuitem s t r="Preguntas importantes a l a hora de emprender">36 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_33) "
actback="hidepage (_33) , showpage ( guia_busqueda3 ) "/>37 </menuitem>38
39 <menuitem s t r=" Aná l i s i s p r ev i o s ">40 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_34) "
actback="hidepage (_34) , showpage ( guia_busqueda3 ) "/>41 </menuitem>42
43 <menuitem s t r="Trámites admin i s t r a t i vo s ">44 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_35) "
actback="hidepage (_35) , showpage ( guia_busqueda3 ) "/>45 </menuitem>46
47 <menuitem s t r="Franqu ic ia s ">48 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (_36) "
actback="hidepage (_36) , showpage ( guia_busqueda3 ) "/>49 </menuitem>50
51 <menuitem s t r="Volver ">52 <act i on key="OK" act="hidepage ( guia_busqueda3 ) , showpage (
guia_busqueda ) " actback="hidepage ( guia_busqueda ) , showpage (guia_busqueda3 ) "/>
53 </menuitem>54
55 </menu>56 </ conta ine r>57
58 </page>
guia_busqueda4.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>
B.2. Directorio de emisión 147
8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"s i z e x="118" s i z e y="168">
9 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118"s i z e y="28"></image>
10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="118" s i z e y="28"></image>
11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="118" s i z e y="28"></image>
12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="118" s i z e y="28"></image>
13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x="118" s i z e y="28"></image>
14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"s i z e y="28"></image>
15 </ conta ine r>16
17 <!−− FORMACIÓN −−>18 <!−− Contenedor de l t exto de bienvenida −−>19 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">20 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Formación</ text>21 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Se l e c c i on e con l a s f l e c h a s l a opción que desee con su l t a r ypu l s e "OK" .</ text>
22 </ conta ine r>23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (5 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="315" s i z e x="400" s i z e y="
195" alpha="0">25 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="195" itemx=
"380" itemy="35" sepx="0" sepy="5" s t y l e="s_menuver">26
27 <menuitem s t r=" Int roducc ión ">28 <act i on key="OK" act="hidepage ( guia_busqueda4 ) , showpage (_41) "
actback="hidepage (_41) , showpage ( guia_busqueda4 ) "/>29 </menuitem>30
31 <menuitem s t r="Formación académica">32 <act i on key="OK" act="hidepage ( guia_busqueda4 ) , showpage (_42) "
actback="hidepage (_42) , showpage ( guia_busqueda4 ) "/>33 </menuitem>34
35 <menuitem s t r="Formación ocupac iona l para e l empleo">36 <act i on key="OK" act="hidepage ( guia_busqueda4 ) , showpage (_43) "
actback="hidepage (_43) , showpage ( guia_busqueda4 ) "/>37 </menuitem>38
39 <menuitem s t r="Otras v í a s para l a formación ">40 <act i on key="OK" act="hidepage ( guia_busqueda4 ) , showpage (_44) "
actback="hidepage (_44) , showpage ( guia_busqueda4 ) "/>41 </menuitem>42
43 <menuitem s t r="Volver ">44 <act i on key="OK" act="hidepage ( guia_busqueda4 ) , showpage (
guia_busqueda ) " actback="hidepage ( guia_busqueda ) , showpage (guia_busqueda4 ) "/>
45 </menuitem>46
47 </menu>48 </ conta ine r>49
50 </page>
148 Apéndice B. Ficheros desarrollados para la aplicación
B.2.4. Anuncios de empleo
anuncios_empleo.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_on . png" posy="28" posx="0" s i z e x="118
" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Anuncios de empleo</ text>20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">En es ta s e c c i ón puede buscar o f e r t a s de empleo adecuadas a sup e r f i l . S e l e c c i on e con l a s f l e c h a s l a opción que desee y pu l s e "
OK" .</ text>21 </ conta ine r>22
23 <!−− Contenedor de l menú v e r t i c a l p r i n c i p a l (3 items ) −−>24 <conta ine r id="c_menu" v i s="1" posx="50" posy="315" s i z e x="400" s i z e y="
200" alpha="0">25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="200" itemx="380" itemy="50" sepx="0" sepy="10" s t y l e="s_menuver">
27
28 <menuitem s t r="Buscador de o f e r t a s ">29 <act i on key="OK" act="hidepage ( anuncios_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? c a t e go r i a=& ; p rov inc i a=& ;pa labrasClave=)" actback="hidepage (∗ ) , showpage (anuncios_empleo ) "/>
30 </menuitem>31
32 <menuitem s t r="Ofer tas de empleo púb l i co ">33 <act i on key="OK" act="hidepage ( anuncios_empleo ) , showpage (
ofertas_empleo_publ ico ) "/>34 </menuitem>35
36 <menuitem s t r="Volver a l menú p r i n c i p a l ">37 <act i on key="OK" act="hidepage ( anuncios_empleo ) , showpage ( index ) "
/>38 </menuitem>39
B.2. Directorio de emisión 149
40 </menu>41
42 </ conta ine r>43
44 </page>
ofertas_empleo_publico.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_on . png" posy="28" posx="0" s i z e x="118
" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x=
"118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
90" alpha="0">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Ofer tas de empleo púb l i co</ text>20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Busque l a o f e r t a de empleo púb l i co adecuada . S e l e c c i on e l o sparámetros que más l e i n t e r e s e n y pu l s e "OK" sobre e l botón "Buscar" .</ text>
21 </ conta ine r>22
23 <!−− Contenedor de l f o rmu la r i o de búsqueda −−>24 <conta ine r id="c_form" v i s="1" posx="30" posy="325" s i z e x="520" s i z e y="
210" alpha="0">25
26 <form focus=" f_prov inc ia " posx="0" posy="0" s i z e x="520" s i z e y="210"s t y l e="s_menu_form">
27
28 <text s t r="Prov inc ia /Autonomía" posx="0" posy="0" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></ text>
29 <form_l i s t id=" f_prov inc ia " va l="0000" type="harrows" posx="175"posy="0" s i z e x="280" s i z e y="25" down=" f_t i t u l a c i o n " up="f_buscar " opt ions_texts="Todas , Nacional , P r o v i n c i a l : Todas l a sp rov inc i a s , P r o v i n c i a l : Almería , P r o v i n c i a l : Cádiz , P r o v i n c i a l :Córdoba , P r o v i n c i a l : Granada , P r o v i n c i a l : Huelva , P r o v i n c i a l : Jaén, P r o v i n c i a l : Málaga , P r o v i n c i a l : S e v i l l a , " opt ions="−1,Nac , Pro ,Alm ,Cad , Cor , Gra , Hue , Jae ,Mal , Sev"/>
30
31 <text s t r="Ti tu l a c i ón " posx="0" posy="40" s i z e x="155" s i z e y="25"s t y l e="s_body_form"></ text>
150 Apéndice B. Ficheros desarrollados para la aplicación
32 <form_l i s t id=" f_ t i t u l a c i o n " va l="0000" type="harrows" posx="175"posy="40" s i z e x="280" s i z e y="25" down=" f_t ipoOpos ic ion " up="f_prov inc ia " opt ions_texts="Todas , Ba ch i l l e r / FP II , C e r t i f i c a dode e s co l a r i dad , Diplomatura / I n g en i e r í a técn i ca , Doctor ,ESO,
Graduado e s c o l a r / FP I , L i c enc i a tu ra / Ing en i e r í a ,N/S ,Secundaria , Sin t i t u l a c i ó n " opt ions="−1,Bach , Cert , Dipl , Doct ,ESO,Grad , Lice ,NS, Secu , Sin "/>
33
34 <text s t r="Tipo de opo s i c i ón " posx="0" posy="80" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></ text>
35 <form_l i s t id=" f_t ipoOpos ic ion " va l="0000" type="harrows" posx="175" posy="80" s i z e x="280" s i z e y="25" down=" f_buscar " up="f_ t i t u l a c i o n " opt ions_texts="Todas , Concurso−opos i c i ón , Oposición, Oposic ión l i b r e " opt ions="−1,Conc , Opos , Libr "/>
36
37 <form_imgbutton id=" f_buscar " img=" images /bot_buscar_off . png"imgfocus=" images /bot_buscar_on . png"
38 posx="170" posy="130" s i z e x="122" s i z e y="79" up=" f_t ipoOpos ic ion "down=" f_prov inc ia " r i g h t=" f_volver " va l i d a t i o n=" f a l s e ">
39 <act i on key="OK" act="hidepage ( ofertas_empleo_publ ico ) , showpage (h t tp : //$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a=$f_prov inc ia ;& ;t i t u l a c i o n=$f_ t i t u l a c i o n ;& ; t ipoOpos i c i on=$f_t ipoOpos ic ion;& ; pag=1& ; primeraVez=S& ; u r l=& ; j s e s s i o n i d=)"actback="hidepage (∗ ) , showpage ( ofertas_empleo_publ ico ) "/>
40 </form_imgbutton>41
42 <form_imgbutton id=" f_volver " img=" images / bot_volver_off . png"imgfocus=" images /bot_volver_on . png"
43 posx="300" posy="130" s i z e x="122" s i z e y="79" up=" f_t ipoOpos ic ion "down=" f_prov inc ia " l e f t=" f_buscar " va l i d a t i o n=" f a l s e ">
44 <act i on key="OK" act="hidepage ( ofertas_empleo_publ ico ) , showpage (anuncios_empleo ) " actback="hidepage ( anuncios_empleo ) ,showpage ( ofertas_empleo_publ ico ) "/>
45 </form_imgbutton>46
47 </form>48 </ conta ine r>49
50
51 </page>
B.2.5. Formación para el empleo
formacion_empleo.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>
B.2. Directorio de emisión 151
11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="118" s i z e y="28"></image>
12 <image path=" images / ind_formacion_on . png" posy="84" posx="0" s i z e x="118" s i z e y="28"></image>
13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x="118" s i z e y="28"></image>
14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"s i z e y="28"></image>
15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida ( para e l e g i r e l t i po de curso ) −−>
18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="90" alpha="0">
19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="0">Cursos de formación para e l empleo</ text>
20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="90" s c r o l l="0">Desde e s t e menú , podrá buscar cur so s de formación . Para e l l o ,s e l e c c i o n e con l a s f l e c h a s e l t i po de curso de formación que
desea con su l t a r y pu l s e "OK" .</ text>21 </ conta ine r>22
23 <!−− Contenedor de l menú v e r t i c a l para e l e g i r e l t i po de curso −−>24 <conta ine r id="c_menu_tipoCurso" v i s="1" posx="50" posy="315" s i z e x="400"
s i z e y="210" alpha="0">25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="210" itemx="400" itemy="40" sepx="0" sepy="10" s t y l e="s_menuver">
27
28 <menuitem s t r="Cursos de formación para e l empleo PREVISTOS">29 <act i on key="OK" act=" hidecont ( formacion_empleo . c_bienv ) ,
h idecont ( formacion_empleo . c_menu_tipoCurso ) , showcont (formacion_empleo . c_bienv_mapa ) , showcont ( formacion_empleo .c_mapaPRV)"/>
30 </menuitem>31
32 <menuitem s t r="Cursos de formación para e l empleo CONVOCADOS">33 <act i on key="OK" act=" hidecont ( formacion_empleo . c_bienv ) ,
h idecont ( formacion_empleo . c_menu_tipoCurso ) , showcont (formacion_empleo . c_bienv_mapa ) , showcont ( formacion_empleo .c_mapaPUB)"/>
34 </menuitem>35
36 <menuitem s t r="Cursos de formación para e l empleo de PLAZO AMPLIADO">
37 <act i on key="OK" act=" hidecont ( formacion_empleo . c_bienv ) ,h idecont ( formacion_empleo . c_menu_tipoCurso ) , showcont (formacion_empleo . c_bienv_mapa ) , showcont ( formacion_empleo .c_mapaAMP)"/>
38 </menuitem>39
40 <menuitem s t r="Volver a l menú p r i n c i p a l ">41 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( index )
"/>42 </menuitem>43
44 </menu>45
46 </ conta ine r>47
48 <!−− Contenedor de l t exto de bienvenida ( para e l mapa) −−>49 <conta ine r id="c_bienv_mapa" v i s="0" posx="30" posy="223" s i z e x="520"
s i z e y="65" alpha="0">
152 Apéndice B. Ficheros desarrollados para la aplicación
50 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="0">Cursos de formación para e l empleo</ text>
51 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l="0">Se l e c c i on e l a p rov inc i a en l a que desea buscar cur so s deformación y pu l s e "OK" .</ text>
52 </ conta ine r>53
54 <!−− Contenedor de l mapa ( cur so s p r e v i s t o s ) −−>55 <conta ine r id="c_mapaPRV" v i s="0" alpha="0" posx="100" posy="280" s i z e x="
398" s i z e y="235">56
57 <form focus=" f_ s e v i l l a " posx="0" posy="0" s i z e x="590" s i z e y="500"s t y l e="s_popup">
58
59 <form_imgbutton id=" f_almeria " img=" images /mapa_almeria_off . png"imgfocus=" images /mapa_almeria_on . png"
60 posx="294" posy="69" s i z e x="102" s i z e y="108" up="f_granada" l e f t=" f_granada" r i gh t=" f_huelva" down=" f_todas "
61 va l i d a t i o n=" f a l s e ">62 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =04)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
63 </form_imgbutton>64
65 <form_imgbutton id=" f_granada" img=" images /mapa_granada_off . png"imgfocus=" images /mapa_granada_on . png"
66 posx="215" posy="53" s i z e x="141" s i z e y="123" up=" f_jaen " l e f t="f_malaga" r i gh t=" f_almeria " down=" f_todas "
67 va l i d a t i o n=" f a l s e ">68 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =18)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
69 </form_imgbutton>70
71 <form_imgbutton id="f_malaga" img=" images /mapa_malaga_off . png"imgfocus=" images /mapa_malaga_on . png"
72 posx="125" posy="124" s i z e x="126" s i z e y="84" up=" f_cordoba" l e f t=" f_cadiz " r i g h t=" f_granada"
73 down=" f_todas " va l i d a t i o n=" f a l s e ">74 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =29)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
75 </form_imgbutton>76
77 <form_imgbutton id=" f_jaen " img=" images /mapa_jaen_off . png" imgfocus=" images /mapa_jaen_on . png"
78 posx="215" posy="20" s i z e x="129" s i z e y="95" down="f_granada" l e f t=" f_cordoba" r i g h t=" f_granada"
79 va l i d a t i o n=" f a l s e ">80 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =23)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
81 </form_imgbutton>82
83 <form_imgbutton id=" f_cordoba" img=" images /mapa_cordoba_off . png"imgfocus=" images /mapa_cordoba_on . png"
84 posx="129" posy="0" s i z e x="104" s i z e y="133" down="f_malaga" l e f t=" f_ s e v i l l a " r i g h t=" f_jaen "
85 va l i d a t i o n=" f a l s e ">
B.2. Directorio de emisión 153
86 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp ://$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =14)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
87 </form_imgbutton>88
89 <form_imgbutton id=" f_ s e v i l l a " img=" images /mapa_sevi l la_off . png"imgfocus=" images /mapa_sevilla_on . png"
90 posx="63" posy="44" s i z e x="130" s i z e y="114" down=" f_cadiz " l e f t="f_huelva" r i g h t=" f_cordoba"
91 va l i d a t i o n=" f a l s e ">92 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =41)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
93 </form_imgbutton>94
95 <form_imgbutton id=" f_cadiz " img=" images /mapa_cadiz_off . png"imgfocus=" images /mapa_cadiz_on . png"
96 posx="69" posy="143" s i z e x="90" s i z e y="91" up=" f_ s e v i l l a " l e f t="f_huelva" r i g h t="f_malaga"
97 va l i d a t i o n=" f a l s e ">98 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =11)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
99 </form_imgbutton>100
101 <form_imgbutton id=" f_huelva" img=" images /mapa_huelva_off . png"imgfocus=" images /mapa_huelva_on . png"
102 posx="0" posy="39" s i z e x="90" s i z e y="121" up=" f_ s e v i l l a " down="f_cadiz " l e f t=" f_almeria " r i g h t=" f_ s e v i l l a "
103 va l i d a t i o n=" f a l s e ">104 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a =21)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
105 </form_imgbutton>106
107 <form_imgbutton id=" f_todas " img=" images /mapa_todas_off . png"imgfocus=" images /mapa_todas_on . png"
108 posx="228" posy="188" s i z e x="107" s i z e y="46" up="f_granada" l e f t="f_malaga" r i g h t=" f_almeria "
109 va l i d a t i o n=" f a l s e ">110 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PRV& ; tipoCursoText=p r e v i s t o s& ; p rov inc i a=−1)"actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
111 </form_imgbutton>112
113 </form>114
115 </ conta ine r>116
117 <!−− Contenedor de l mapa ( cur so s convocados ) −−>118 <conta ine r id="c_mapaPUB" v i s="0" alpha="0" posx="100" posy="280" s i z e x="
398" s i z e y="235">119
120 <form focus=" f_ s e v i l l a " posx="0" posy="0" s i z e x="590" s i z e y="500"s t y l e="s_popup">
121
122 <form_imgbutton id=" f_almeria " img=" images /mapa_almeria_off . png"imgfocus=" images /mapa_almeria_on . png"
154 Apéndice B. Ficheros desarrollados para la aplicación
123 posx="294" posy="69" s i z e x="102" s i z e y="108" up="f_granada" l e f t=" f_granada" r i gh t=" f_huelva" down=" f_todas "
124 va l i d a t i o n=" f a l s e ">125 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =04)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
126 </form_imgbutton>127
128 <form_imgbutton id=" f_granada" img=" images /mapa_granada_off . png"imgfocus=" images /mapa_granada_on . png"
129 posx="215" posy="53" s i z e x="141" s i z e y="123" up=" f_jaen " l e f t="f_malaga" r i gh t=" f_almeria " down=" f_todas "
130 va l i d a t i o n=" f a l s e ">131 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =18)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
132 </form_imgbutton>133
134 <form_imgbutton id="f_malaga" img=" images /mapa_malaga_off . png"imgfocus=" images /mapa_malaga_on . png"
135 posx="125" posy="124" s i z e x="126" s i z e y="84" up=" f_cordoba" l e f t=" f_cadiz " r i g h t=" f_granada"
136 down=" f_todas " va l i d a t i o n=" f a l s e ">137 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =29)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
138 </form_imgbutton>139
140 <form_imgbutton id=" f_jaen " img=" images /mapa_jaen_off . png" imgfocus=" images /mapa_jaen_on . png"
141 posx="215" posy="20" s i z e x="129" s i z e y="95" down="f_granada" l e f t=" f_cordoba" r i g h t=" f_granada"
142 va l i d a t i o n=" f a l s e ">143 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =23)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
144 </form_imgbutton>145
146 <form_imgbutton id=" f_cordoba" img=" images /mapa_cordoba_off . png"imgfocus=" images /mapa_cordoba_on . png"
147 posx="129" posy="0" s i z e x="104" s i z e y="133" down="f_malaga" l e f t=" f_ s e v i l l a " r i g h t=" f_jaen "
148 va l i d a t i o n=" f a l s e ">149 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =14)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
150 </form_imgbutton>151
152 <form_imgbutton id=" f_ s e v i l l a " img=" images /mapa_sevi l la_off . png"imgfocus=" images /mapa_sevilla_on . png"
153 posx="63" posy="44" s i z e x="130" s i z e y="114" down=" f_cadiz " l e f t="f_huelva" r i g h t=" f_cordoba"
154 va l i d a t i o n=" f a l s e ">155 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =41)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
156 </form_imgbutton>157
B.2. Directorio de emisión 155
158 <form_imgbutton id=" f_cadiz " img=" images /mapa_cadiz_off . png"imgfocus=" images /mapa_cadiz_on . png"
159 posx="69" posy="143" s i z e x="90" s i z e y="91" up=" f_ s e v i l l a " l e f t="f_huelva" r i g h t="f_malaga"
160 va l i d a t i o n=" f a l s e ">161 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =11)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
162 </form_imgbutton>163
164 <form_imgbutton id=" f_huelva" img=" images /mapa_huelva_off . png"imgfocus=" images /mapa_huelva_on . png"
165 posx="0" posy="39" s i z e x="90" s i z e y="121" up=" f_ s e v i l l a " down="f_cadiz " l e f t=" f_almeria " r i g h t=" f_ s e v i l l a "
166 va l i d a t i o n=" f a l s e ">167 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a =21)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
168 </form_imgbutton>169
170 <form_imgbutton id=" f_todas " img=" images /mapa_todas_off . png"imgfocus=" images /mapa_todas_on . png"
171 posx="228" posy="188" s i z e x="107" s i z e y="46" up="f_granada" l e f t="f_malaga" r i g h t=" f_almeria "
172 va l i d a t i o n=" f a l s e ">173 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=PUB& ; tipoCursoText=convocados& ; p rov inc i a=−1)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></ ac t i on>
174 </form_imgbutton>175
176 </form>177
178 </ conta ine r>179
180 <!−− Contenedor de l mapa ( cur so s p lazo ampliado ) −−>181 <conta ine r id="c_mapaAMP" v i s="0" alpha="0" posx="100" posy="280" s i z e x="
398" s i z e y="235">182
183 <form focus=" f_ s e v i l l a " posx="0" posy="0" s i z e x="590" s i z e y="500"s t y l e="s_popup">
184
185 <form_imgbutton id=" f_almeria " img=" images /mapa_almeria_off . png"imgfocus=" images /mapa_almeria_on . png"
186 posx="294" posy="69" s i z e x="102" s i z e y="108" up="f_granada" l e f t=" f_granada" r i gh t=" f_huelva" down=" f_todas "
187 va l i d a t i o n=" f a l s e ">188 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=04)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
189 </form_imgbutton>190
191 <form_imgbutton id=" f_granada" img=" images /mapa_granada_off . png"imgfocus=" images /mapa_granada_on . png"
192 posx="215" posy="53" s i z e x="141" s i z e y="123" up=" f_jaen " l e f t="f_malaga" r i gh t=" f_almeria " down=" f_todas "
193 va l i d a t i o n=" f a l s e ">194 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a
156 Apéndice B. Ficheros desarrollados para la aplicación
=18)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
195 </form_imgbutton>196
197 <form_imgbutton id="f_malaga" img=" images /mapa_malaga_off . png"imgfocus=" images /mapa_malaga_on . png"
198 posx="125" posy="124" s i z e x="126" s i z e y="84" up=" f_cordoba" l e f t=" f_cadiz " r i g h t=" f_granada"
199 down=" f_todas " va l i d a t i o n=" f a l s e ">200 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=29)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
201 </form_imgbutton>202
203 <form_imgbutton id=" f_jaen " img=" images /mapa_jaen_off . png" imgfocus=" images /mapa_jaen_on . png"
204 posx="215" posy="20" s i z e x="129" s i z e y="95" down="f_granada" l e f t=" f_cordoba" r i g h t=" f_granada"
205 va l i d a t i o n=" f a l s e ">206 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=23)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
207 </form_imgbutton>208
209 <form_imgbutton id=" f_cordoba" img=" images /mapa_cordoba_off . png"imgfocus=" images /mapa_cordoba_on . png"
210 posx="129" posy="0" s i z e x="104" s i z e y="133" down="f_malaga" l e f t=" f_ s e v i l l a " r i g h t=" f_jaen "
211 va l i d a t i o n=" f a l s e ">212 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=14)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
213 </form_imgbutton>214
215 <form_imgbutton id=" f_ s e v i l l a " img=" images /mapa_sevi l la_off . png"imgfocus=" images /mapa_sevilla_on . png"
216 posx="63" posy="44" s i z e x="130" s i z e y="114" down=" f_cadiz " l e f t="f_huelva" r i g h t=" f_cordoba"
217 va l i d a t i o n=" f a l s e ">218 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=41)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
219 </form_imgbutton>220
221 <form_imgbutton id=" f_cadiz " img=" images /mapa_cadiz_off . png"imgfocus=" images /mapa_cadiz_on . png"
222 posx="69" posy="143" s i z e x="90" s i z e y="91" up=" f_ s e v i l l a " l e f t="f_huelva" r i g h t="f_malaga"
223 va l i d a t i o n=" f a l s e ">224 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=21)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
225 </form_imgbutton>226
B.2. Directorio de emisión 157
227 <form_imgbutton id=" f_huelva" img=" images /mapa_huelva_off . png"imgfocus=" images /mapa_huelva_on . png"
228 posx="0" posy="39" s i z e x="90" s i z e y="121" up=" f_ s e v i l l a " down="f_cadiz " l e f t=" f_almeria " r i g h t=" f_ s e v i l l a "
229 va l i d a t i o n=" f a l s e ">230 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=04)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
231 </form_imgbutton>232
233 <form_imgbutton id=" f_todas " img=" images /mapa_todas_off . png"imgfocus=" images /mapa_todas_on . png"
234 posx="228" posy="188" s i z e x="107" s i z e y="46" up="f_granada" l e f t="f_malaga" r i g h t=" f_almeria "
235 va l i d a t i o n=" f a l s e ">236 <act i on key="OK" act="hidepage ( formacion_empleo ) , showpage ( h t tp :
//$ s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc / cursos_formular io ?t ipoCurso=AMP& ; tipoCursoText=plazoAmpliado& ; p rov inc i a=−1)" actback="hidepage (∗ ) , showpage ( formacion_empleo ) "></act i on>
237 </form_imgbutton>238
239 </form>240
241 </ conta ine r>242
243 </page>
B.2.6. Directorio del SAE
directorio_SAE.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">9 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="118"
s i z e y="28"></image>10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="
118" s i z e y="28"></image>11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="
118" s i z e y="28"></image>12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_director io_on . png" posy="112" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118"
s i z e y="28"></image>15 </ conta ine r>16
17 <!−− Contenedor de l t exto de bienvenida de l menú " d i r e c t o r i o " −−>18 <conta ine r id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520" s i z e y="
50" alpha="0">
158 Apéndice B. Ficheros desarrollados para la aplicación
19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="0">D i r e c t o r i o de l SAE</ text>
20 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="25" s c r o l l="0">E l i j a l a opción que desea con su l t a r y pu l s e "OK" .</ text>
21 </ conta ine r>22
23 <!−− Contenedor de l menú " d i r e c t o r i o " −−>24 <conta ine r id=" c_d i r e c t o r i o " v i s="1" alpha="0" posx="50" posy="280" s i z e x
="400" s i z e y="230">25
26 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="230" itemx="400" itemy="50" sepx="0" sepy="10" s t y l e="s_menuver">
27
28 <menuitem s t r=" S e r v i c i o s c e n t r a l e s ">29 <act i on key="OK" act=" hidecont ( directorio_SAE . c_bienv ) , h idecont (
directorio_SAE . c_d i r e c t o r i o ) , showcont ( directorio_SAE .c_bienv_servCentrales ) , showcont ( directorio_SAE .c_servCentra les ) "/>
30 </menuitem>31
32 <menuitem s t r="Di r e c c i one s p r o v i n c i a l e s ">33 <act i on key="OK" act=" hidecont ( directorio_SAE . c_bienv ) , h idecont (
directorio_SAE . c_d i r e c t o r i o ) , showcont ( directorio_SAE .c_bienv_mapa ) , showcont ( directorio_SAE . c_d i r e c cProv in c i a l e s ) "/>
34 </menuitem>35
36 <menuitem s t r="Áreas t e r r i t o r i a l e s de empleo">37 <act i on key="OK" act=" hidecont ( directorio_SAE . c_bienv ) , h idecont (
directorio_SAE . c_d i r e c t o r i o ) , showcont ( directorio_SAE .c_bienv_mapa ) , showcont ( directorio_SAE . c_a r e a sTe r r i t o r i a l e s ) "/>
38 </menuitem>39
40 <menuitem s t r="Volver a l menú p r i n c i p a l ">41 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( index ) "/
>42 </menuitem>43
44 </menu>45
46 </ conta ine r>47
48 <!−− Contenedor de l t exto de bienvenida ( para " s e r v i c i o s c e n t r a l e s " ) −−>49 <conta ine r id=" c_bienv_servCentrales " v i s="0" posx="30" posy="223" s i z e x=
"520" s i z e y="65" alpha="0">50 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">D i r e c t o r i o de l SAE</ text>51 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Se l e c c i on e e l s e r v i c i o que desea con su l t a r y pu l s e "OK" .</text>
52 </ conta ine r>53
54 <!−− Contenedor de l menú " s e r v i c i o s c e n t r a l e s " −−>55 <conta ine r id=" c_servCentra les " v i s="0" alpha="0" posx="50" posy="280"
s i z e x="400" s i z e y="230">56
57 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="400" s i z e y="230" itemx="400" itemy="50" sepx="0" sepy="10" s t y l e="s_menuver">
58
59 <menuitem s t r="Consejero ( Pre s idente de l SAE) ">60 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=presidenteSAE& ; p rov inc i a=& ; pag=)" actback="hidepage (∗ )
B.2. Directorio de emisión 159
, showpage ( directorio_SAE ) "></ act i on>61 </menuitem>62
63 <menuitem s t r="Di recc i ón /Gerencia SAE">64 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=gerenciaSAE& ; p rov inc i a=& ; pag=)" actback="hidepage (∗ ) ,showpage ( directorio_SAE ) "></ act i on>
65 </menuitem>66
67 <menuitem s t r="D.G. Autónomos , Igualdad y Fomento de l Empleo">68 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=DGAutonomos& ; p rov inc i a=& ; pag=)" actback="hidepage (∗ ) ,showpage ( directorio_SAE ) "></ act i on>
69 </menuitem>70
71 <menuitem s t r="D.G. Empleabi l idad y Formación P ro f e s i o na l ">72 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=DGEmpleabilidad& ; p rov inc i a=& ; pag=)" actback="hidepage(∗ ) , showpage ( directorio_SAE ) "></ act i on>
73 </menuitem>74
75 </menu>76
77 </ conta ine r>78
79 <!−− Contenedor de l t exto de bienvenida ( para e l mapa) −−>80 <conta ine r id="c_bienv_mapa" v i s="0" posx="30" posy="223" s i z e x="520"
s i z e y="65" alpha="0">81 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">D i r e c t o r i o de l SAE</ text>82 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65" s c r o l l
="0">Se l e c c i on e l a p rov inc i a de i n t e r é s y pu l s e "OK" .</ text>83 </ conta ine r>84
85 <!−− Contenedor de l mapa de d i r e c c i o n e s p r o v i n c i a l e s −−>86 <conta ine r id=" c_d i r e c cProv in c i a l e s " v i s="0" alpha="0" posx="100" posy="
280" s i z e x="398" s i z e y="235">87
88 <form focus=" f_ s e v i l l a " posx="0" posy="0" s i z e x="590" s i z e y="500"s t y l e="s_popup">
89
90 <form_imgbutton id=" f_almeria " img=" images /mapa_almeria_off . png"imgfocus=" images /mapa_almeria_on . png"
91 posx="294" posy="69" s i z e x="102" s i z e y="108" up="f_granada" l e f t=" f_granada" r i gh t=" f_huelva"
92 va l i d a t i o n=" f a l s e ">93 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=almer ia& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
94 </form_imgbutton>95
96 <form_imgbutton id=" f_granada" img=" images /mapa_granada_off . png"imgfocus=" images /mapa_granada_on . png"
97 posx="215" posy="53" s i z e x="141" s i z e y="123" up=" f_jaen " l e f t="f_malaga" r i gh t=" f_almeria "
98 va l i d a t i o n=" f a l s e ">99 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=granada& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
160 Apéndice B. Ficheros desarrollados para la aplicación
100 </form_imgbutton>101
102 <form_imgbutton id="f_malaga" img=" images /mapa_malaga_off . png"imgfocus=" images /mapa_malaga_on . png"
103 posx="125" posy="124" s i z e x="126" s i z e y="84" up=" f_cordoba" l e f t=" f_cadiz " r i g h t=" f_granada"
104 va l i d a t i o n=" f a l s e ">105 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=malaga& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
106 </form_imgbutton>107
108 <form_imgbutton id=" f_jaen " img=" images /mapa_jaen_off . png" imgfocus=" images /mapa_jaen_on . png"
109 posx="215" posy="20" s i z e x="129" s i z e y="95" down="f_granada" l e f t=" f_cordoba" r i g h t=" f_granada"
110 va l i d a t i o n=" f a l s e ">111 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=jaen& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
112 </form_imgbutton>113
114 <form_imgbutton id=" f_cordoba" img=" images /mapa_cordoba_off . png"imgfocus=" images /mapa_cordoba_on . png"
115 posx="129" posy="0" s i z e x="104" s i z e y="133" down="f_malaga" l e f t=" f_ s e v i l l a " r i g h t=" f_jaen "
116 va l i d a t i o n=" f a l s e ">117 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=cordoba& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
118 </form_imgbutton>119
120 <form_imgbutton id=" f_ s e v i l l a " img=" images /mapa_sevi l la_off . png"imgfocus=" images /mapa_sevilla_on . png"
121 posx="63" posy="44" s i z e x="130" s i z e y="114" down=" f_cadiz " l e f t="f_huelva" r i g h t=" f_cordoba"
122 va l i d a t i o n=" f a l s e ">123 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=s e v i l l a& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
124 </form_imgbutton>125
126 <form_imgbutton id=" f_cadiz " img=" images /mapa_cadiz_off . png"imgfocus=" images /mapa_cadiz_on . png"
127 posx="69" posy="143" s i z e x="90" s i z e y="91" up=" f_ s e v i l l a " l e f t="f_huelva" r i g h t="f_malaga"
128 va l i d a t i o n=" f a l s e ">129 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=d i r e c c i o n e s ;& ; p rov inc i a=cad i z& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
130 </form_imgbutton>131
132 <form_imgbutton id=" f_huelva" img=" images /mapa_huelva_off . png"imgfocus=" images /mapa_huelva_on . png"
133 posx="0" posy="39" s i z e x="90" s i z e y="121" up=" f_ s e v i l l a " down="f_cadiz " l e f t=" f_almeria " r i g h t=" f_ s e v i l l a "
134 va l i d a t i o n=" f a l s e ">135 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=
B.2. Directorio de emisión 161
d i r e c c i o n e s ;& ; p rov inc i a=huelva& ; pag=1)" actback="hidepage (∗ ) , showpage ( directorio_SAE ) "></ act i on>
136 </form_imgbutton>137
138 </form>139
140 </ conta ine r>141
142 <!−− Contenedor de l mapa de áreas t e r r i t o r i a l e s −−>143 <conta ine r id=" c_a r e a sTe r r i t o r i a l e s " v i s="0" alpha="0" posx="100" posy="
280" s i z e x="398" s i z e y="235">144
145 <form focus=" f_ s e v i l l a " posx="0" posy="0" s i z e x="590" s i z e y="500"s t y l e="s_popup">
146
147 <form_imgbutton id=" f_almeria " img=" images /mapa_almeria_off . png"imgfocus=" images /mapa_almeria_on . png"
148 posx="294" posy="69" s i z e x="102" s i z e y="108" up="f_granada" l e f t=" f_granada" r i gh t=" f_huelva"
149 va l i d a t i o n=" f a l s e ">150 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Almeria& ; pag=1)" actback="hidepage(∗ ) , showpage ( directorio_SAE ) "></ act i on>
151 </form_imgbutton>152
153 <form_imgbutton id=" f_granada" img=" images /mapa_granada_off . png"imgfocus=" images /mapa_granada_on . png"
154 posx="215" posy="53" s i z e x="141" s i z e y="123" up=" f_jaen " l e f t="f_malaga" r i gh t=" f_almeria "
155 va l i d a t i o n=" f a l s e ">156 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Granada& ; pag=1)" actback="hidepage(∗ ) , showpage ( directorio_SAE ) "></ act i on>
157 </form_imgbutton>158
159 <form_imgbutton id="f_malaga" img=" images /mapa_malaga_off . png"imgfocus=" images /mapa_malaga_on . png"
160 posx="125" posy="124" s i z e x="126" s i z e y="84" up=" f_cordoba" l e f t=" f_cadiz " r i g h t=" f_granada"
161 va l i d a t i o n=" f a l s e ">162 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Malaga& ; pag=1)" actback="hidepage (∗ ), showpage ( directorio_SAE ) "></ act i on>
163 </form_imgbutton>164
165 <form_imgbutton id=" f_jaen " img=" images /mapa_jaen_off . png" imgfocus=" images /mapa_jaen_on . png"
166 posx="215" posy="20" s i z e x="129" s i z e y="95" down="f_granada" l e f t=" f_cordoba" r i g h t=" f_granada"
167 va l i d a t i o n=" f a l s e ">168 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Jaen& ; pag=1)" actback="hidepage (∗ ) ,showpage ( directorio_SAE ) "></ act i on>
169 </form_imgbutton>170
171 <form_imgbutton id=" f_cordoba" img=" images /mapa_cordoba_off . png"imgfocus=" images /mapa_cordoba_on . png"
172 posx="129" posy="0" s i z e x="104" s i z e y="133" down="f_malaga" l e f t=" f_ s e v i l l a " r i g h t=" f_jaen "
173 va l i d a t i o n=" f a l s e ">
162 Apéndice B. Ficheros desarrollados para la aplicación
174 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Cordoba& ; pag=1)" actback="hidepage(∗ ) , showpage ( directorio_SAE ) "></ act i on>
175 </form_imgbutton>176
177 <form_imgbutton id=" f_ s e v i l l a " img=" images /mapa_sevi l la_off . png"imgfocus=" images /mapa_sevilla_on . png"
178 posx="63" posy="44" s i z e x="130" s i z e y="114" down=" f_cadiz " l e f t="f_huelva" r i g h t=" f_cordoba"
179 va l i d a t i o n=" f a l s e ">180 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=S e v i l l a& ; pag=1)" actback="hidepage(∗ ) , showpage ( directorio_SAE ) "></ act i on>
181 </form_imgbutton>182
183 <form_imgbutton id=" f_cadiz " img=" images /mapa_cadiz_off . png"imgfocus=" images /mapa_cadiz_on . png"
184 posx="69" posy="143" s i z e x="90" s i z e y="91" up=" f_ s e v i l l a " l e f t="f_huelva" r i g h t="f_malaga"
185 va l i d a t i o n=" f a l s e ">186 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Cadiz& ; pag=1)" actback="hidepage (∗ ) ,showpage ( directorio_SAE ) "></ act i on>
187 </form_imgbutton>188
189 <form_imgbutton id=" f_huelva" img=" images /mapa_huelva_off . png"imgfocus=" images /mapa_huelva_on . png"
190 posx="0" posy="39" s i z e x="90" s i z e y="121" up=" f_ s e v i l l a " down="f_cadiz " l e f t=" f_almeria " r i g h t=" f_ s e v i l l a "
191 va l i d a t i o n=" f a l s e ">192 <act i on key="OK" act="hidepage ( directorio_SAE ) , showpage ( h t tp : //$
s e r v e r ; : $ port ; / i t v /apps /16003/800/ rc /directorio_SAE? opcion=areas ;& ; p rov inc i a=Huelva& ; pag=1)" actback="hidepage (∗ ), showpage ( directorio_SAE ) "></ act i on>
193 </form_imgbutton>194
195 </form>196
197 </ conta ine r>198
199
200 </page>
B.2.7. Página web del SAE
web_SAE.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <!−− I n t e r f a c e d e f i n i t i o n f o r tmNews −−>3 <page>4
5 <help>c_help</help>6
7 <!−− Contenedor de l í n d i c e l a t e r a l −−>8 <conta ine r id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy="214"
s i z e x="118" s i z e y="168">
B.2. Directorio de emisión 163
9 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="118"s i z e y="28"></image>
10 <image path=" images / ind_anuncios_off . png" posy="28" posx="0" s i z e x="118" s i z e y="28"></image>
11 <image path=" images / ind_empresas_off . png" posy="56" posx="0" s i z e x="118" s i z e y="28"></image>
12 <image path=" images / ind_formacion_off . png" posy="84" posx="0" s i z e x="118" s i z e y="28"></image>
13 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0" s i z e x="118" s i z e y="28"></image>
14 <image path=" images /ind_web_on . png" posy="140" posx="0" s i z e x="118"s i z e y="28"></image>
15 </ conta ine r>16
17 <!−− Contenedor de l t exto de in formac ión −−>18 <conta ine r id="c_texto" v i s="1" alpha="0" posx="30" posy="214" s i z e x="520
" s i z e y="270">19 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25" s c r o l l="
0">Página web de l SAE</ text>20 <text s t y l e=" s_bodyDetal le " posx="0" posy="35" s i z e x="520" s i z e y="245"
s c r o l l="1">En la s i g u i e n t e página web podrá encontrar toda l ain formac ión que pueda n e c e s i t a r sobre e l S e r v i c i o Andaluz deEmpleo:
21
22 ht tp : //www. juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo23
24 La web cont i ene una s e r i e de apartados a d i c i o n a l e s a l o s que puede encontraren e s ta ap l i c a c i ón , t a l e s como:
25
26 −Acceso a sus datos de usuar io , y p o s i b i l i d a d de c r ea r su propio CurrículumVitae .
27 −Not i c i a s y eventos de i n t e r é s .28 −Una s e c c i ón para l a empresa , para fomentar l a c r ea c i ón de empleo .29 −Una s e c c i ón dedicada a l a s personas que decidan e j e r c e r como autónomos .30 −Pos i b i l i d ad de ped i r c i t a s a l o s S e r v i c i o s de Or ientac ión de Andalucía
Occ identa l .31 −Pos i b i l i d ad de env ia r con su l t a s a l SAE.32
33 Además , una a s i s t e n t e v i r t u a l s i r v e como guía para navegar por l a web .34
35
36 Para vo lve r a l menú p r i n c i pa l , pu l s e l a t e c l a "OK" de l mando a d i s t a n c i a .</text>
37 </ conta ine r>38
39 <!−− Contenedor de l botón "Volver " −−>40 <conta ine r id="c_menu" v i s="1" alpha="0" posx="558" posy="445" s i z e x="122
" s i z e y="79">41 <menu type=" ho r i z on t a l " posx="0" posy="0" s i z e x="122" s i z e y="79" itemx
="122" itemy="79" sepx="0" sepy="0" s t y l e="s_menuSinFondo">42 <menuitem img=" images / bot_volver_off . png" imgfocus=" images /
bot_volver_on . png">43 <act i on key="OK" act="hidepage (web_SAE) , showpage ( index ) "></
act i on>44 </menuitem>45 </menu>46 </ conta ine r>47 </page>
164 Apéndice B. Ficheros desarrollados para la aplicación
B.3. Directorio de gestión del canal de retorno
B.3.1. Ficheros generales
page-�ow.xpl
1 <p : c on f i g xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e "2 xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">3
4 <p :p r o c e s s o r name=" oxf :page−f l ow ">5 <p: input name=" c o n t r o l l e r " h r e f="page−f l ow . xml"/>6 </ p :p r o c e s s o r>7
8 </ p : c o n f i g>
page-�ow.xml
1 <con f i g xmlns=" ht tp : //www. orbeon . com/ oxf / c o n t r o l l e r " xmlns:xu=" ht tp : //www.xmldb . org /xupdate" xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
2 <f i l e s path−i n f o=" ∗ . g i f "/>3 <f i l e s path−i n f o=" ∗ . c s s "/>4 <f i l e s path−i n f o=" ∗ . pdf "/>5 <f i l e s path−i n f o=" ∗ . j s "/>6 <f i l e s path−i n f o=" ∗ . png"/>7 <f i l e s path−i n f o=" ∗ . jpg "/>8 <f i l e s path−i n f o=" ∗ . xsd"/>9 <f i l e s path−i n f o=" ∗ . xml" mime−type=" app l i c a t i on /xml"/>
10 <f i l e s path−i n f o=" ∗ . html" mime−type=" text /html"/>11 <f i l e s path−i n f o=" ∗ . java " mime−type=" text / p l a i n "/>12 <f i l e s path−i n f o=" ∗ . tx t " mime−type=" text / p l a i n "/>13 <f i l e s path−i n f o=" ∗ . xq" mime−type=" text / p l a i n "/>14
15 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / buscador_ofertas_formular io "matcher=" ox f : p e r l 5−matcher"
16 default−submiss ion=" de fau l t−submiss ion . xml" model="buscador_ofertas_formular io . xpl ">
17 <se tva lu e r e f="/ submiss ion / ca t e go r i a " parameter=" ca t e go r i a "/>18 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>19 <se tva lu e r e f="/ submiss ion / pa labrasClave " parameter=" palabrasClave "/>20 </page>21
22 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / buscador_ofertas " matcher="ox f : p e r l 5−matcher"
23 default−submiss ion=" de fau l t−submiss ion . xml" model=" buscador_ofertas .xpl ">
24 <se tva lu e r e f="/ submiss ion / ca t e go r i a " parameter=" ca t e go r i a "/>25 <se tva lu e r e f="/ submiss ion / subca t ego r i a " parameter=" subca t ego r i a "/>26 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>27 <se tva lu e r e f="/ submiss ion / pa labrasClave " parameter=" palabrasClave "/>28 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>29 </page>30
31 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / buscador_ofe r tas_deta l l e "matcher=" ox f : p e r l 5−matcher"
32 default−submiss ion=" de fau l t−submiss ion . xml" model="buscador_ofe r tas_deta l l e . xpl ">
33 <se tva lu e r e f="/ submiss ion / ca t e go r i a " parameter=" ca t e go r i a "/>34 <se tva lu e r e f="/ submiss ion / subca t ego r i a " parameter=" subca t ego r i a "/>
B.3. Directorio de gestión del canal de retorno 165
35 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>36 <se tva lu e r e f="/ submiss ion / pa labrasClave " parameter=" palabrasClave "/>37 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>38 <se tva lu e r e f="/ submiss ion / idOfe r ta " parameter=" idOfe r ta "/>39 <se tva lu e r e f="/ submiss ion / idEmpresa" parameter=" idEmpresa"/>40 </page>41
42 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / cursos_formular io " matcher="ox f : p e r l 5−matcher"
43 default−submiss ion=" de fau l t−submiss ion . xml" model=" cursos_formular io .xpl ">
44 <se tva lu e r e f="/ submiss ion / t ipoCurso " parameter=" tipoCurso "/>45 <se tva lu e r e f="/ submiss ion / tipoCursoText " parameter=" tipoCursoText "/>46 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>47 </page>48
49 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / cursos_formacion " matcher="ox f : p e r l 5−matcher"
50 default−submiss ion=" de fau l t−submiss ion . xml" model=" cursos_formacion .xpl ">
51 <se tva lu e r e f="/ submiss ion / t ipoCurso " parameter=" tipoCurso "/>52 <se tva lu e r e f="/ submiss ion / tipoCursoText " parameter=" tipoCursoText "/>53 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>54 <se tva lu e r e f="/ submiss ion / i n i c i o " parameter=" i n i c i o "/>55 <se tva lu e r e f="/ submiss ion /munic ip io " parameter="munic ip io "/>56 <se tva lu e r e f="/ submiss ion / c o l e c t i v o " parameter=" c o l e c t i v o "/>57 <se tva lu e r e f="/ submiss ion / f am i l i a " parameter=" f am i l i a "/>58 <se tva lu e r e f="/ submiss ion / p r a c t i c a s " parameter=" p r a c t i c a s "/>59 <se tva lu e r e f="/ submiss ion / codigo " parameter=" codigo "/>60 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>61 </page>62
63 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / cu r so s_de ta l l e " matcher="ox f : p e r l 5−matcher"
64 default−submiss ion=" de fau l t−submiss ion . xml" model=" cur so s_de ta l l e . xpl ">
65 <se tva lu e r e f="/ submiss ion / t ipoCurso " parameter=" tipoCurso "/>66 <se tva lu e r e f="/ submiss ion / tipoCursoText " parameter=" tipoCursoText "/>67 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>68 <se tva lu e r e f="/ submiss ion / i n i c i o " parameter=" i n i c i o "/>69 <se tva lu e r e f="/ submiss ion /munic ip io " parameter="munic ip io "/>70 <se tva lu e r e f="/ submiss ion / c o l e c t i v o " parameter=" c o l e c t i v o "/>71 <se tva lu e r e f="/ submiss ion / f am i l i a " parameter=" f am i l i a "/>72 <se tva lu e r e f="/ submiss ion / p r a c t i c a s " parameter=" p r a c t i c a s "/>73 <se tva lu e r e f="/ submiss ion / codigo " parameter=" codigo "/>74 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>75 <se tva lu e r e f="/ submiss ion / idCurso " parameter=" idCurso "/>76 <se tva lu e r e f="/ submiss ion / l e t r a " parameter=" l e t r a "/>77 </page>78
79 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc /directorio_SAE" matcher="ox f : p e r l 5−matcher"
80 default−submiss ion=" de fau l t−submiss ion . xml" model="directorio_SAE . xpl ">
81 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>82 <se tva lu e r e f="/ submiss ion / opcion " parameter=" opcion "/>83 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>84 </page>85
86 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / con su l t a s " matcher=" ox f : p e r l 5−matcher"
87 default−submiss ion=" de fau l t−submiss ion . xml" model=" con su l t a s . xpl ">88 <se tva lu e r e f="/ submiss ion / idDoc" parameter=" idDoc"/>89 <se tva lu e r e f="/ submiss ion /numDoc" parameter="numDoc"/>
166 Apéndice B. Ficheros desarrollados para la aplicación
90 <se tva lu e r e f="/ submiss ion / le t raDoc " parameter=" let raDoc "/>91 </page>92
93 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / empresas_formular io " matcher=" ox f : p e r l 5−matcher"
94 default−submiss ion=" de fau l t−submiss ion . xml" model=" empresas_formular io. xpl ">
95 </page>96
97 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / empresas " matcher=" ox f : p e r l 5−matcher"
98 default−submiss ion=" de fau l t−submiss ion . xml" model="empresas . xpl ">99 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>
100 <se tva lu e r e f="/ submiss ion / s e c t o r " parameter=" s e c t o r "/>101 <se tva lu e r e f="/ submiss ion / u r l " parameter=" u r l "/>102 <se tva lu e r e f="/ submiss ion / ur lF in " parameter=" ur lF in "/>103 <se tva lu e r e f="/ submiss ion /primeraVez" parameter="primeraVez"/>104 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>105 </page>106
107 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / empresas_deta l l e " matcher="ox f : p e r l 5−matcher"
108 default−submiss ion=" de fau l t−submiss ion . xml" model=" empresas_deta l l e .xpl ">
109 <se tva lu e r e f="/ submiss ion / idEmpresa" parameter=" idEmpresa"/>110 <se tva lu e r e f="/ submiss ion / idProv inc i a " parameter=" idProv inc i a "/>111 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>112 <se tva lu e r e f="/ submiss ion / s e c t o r " parameter=" s e c t o r "/>113 <se tva lu e r e f="/ submiss ion /primeraVez" parameter="primeraVez"/>114 <se tva lu e r e f="/ submiss ion / u r l " parameter=" u r l "/>115 <se tva lu e r e f="/ submiss ion / ur lF in " parameter=" ur lF in "/>116 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>117 </page>118
119 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc / ofertas_empleo_publ ico "matcher=" ox f : p e r l 5−matcher"
120 default−submiss ion=" de fau l t−submiss ion . xml" model="ofertas_empleo_publ ico . xpl ">
121 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>122 <se tva lu e r e f="/ submiss ion / t i t u l a c i o n " parameter=" t i t u l a c i o n "/>123 <se tva lu e r e f="/ submiss ion / t ipoOpos i c i on " parameter=" t ipoOpos i c i on "/>124 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>125 <se tva lu e r e f="/ submiss ion /primeraVez" parameter="primeraVez"/>126 <se tva lu e r e f="/ submiss ion / u r l " parameter=" u r l "/>127 <se tva lu e r e f="/ submiss ion / j s e s s i o n i d " parameter=" j s e s s i o n i d "/>128 </page>129
130 <page path−i n f o="/apps /([0−9]+) /([0−9]+)/ rc /ofertas_empleo_publ ico_deta l l e " matcher=" ox f : p e r l 5−matcher"
131 default−submiss ion=" de fau l t−submiss ion . xml" model="ofertas_empleo_publ ico_deta l l e . xpl ">
132 <se tva lu e r e f="/ submiss ion / p rov inc i a " parameter=" prov inc i a "/>133 <se tva lu e r e f="/ submiss ion / t i t u l a c i o n " parameter=" t i t u l a c i o n "/>134 <se tva lu e r e f="/ submiss ion / t ipoOpos i c i on " parameter=" t ipoOpos i c i on "/>135 <se tva lu e r e f="/ submiss ion /pag" parameter="pag"/>136 <se tva lu e r e f="/ submiss ion /primeraVez" parameter="primeraVez"/>137 <se tva lu e r e f="/ submiss ion / u r l " parameter=" u r l "/>138 <se tva lu e r e f="/ submiss ion / j s e s s i o n i d " parameter=" j s e s s i o n i d "/>139 <se tva lu e r e f="/ submiss ion / idOfe r ta " parameter=" idOfe r ta "/>140 </page>141
142 </ con f i g>
B.3. Directorio de gestión del canal de retorno 167
default-submission.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <submiss ion xmlns :xs=" ht tp : //www.w3 . org /2001/XMLSchema"3 xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s "4 xmlns:tmg=" ht tp : //www. tmira . com/ops/ p r o c e s s o r s "5 xmlns :x i=" ht tp : //www.w3 . org /2001/XInclude"6 xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e ">7
8 <prov inc i a />9 <pag/>
10 <primeraVez/>11 <ur l />12 <idEmpresa/>13
14 <!−− Cursos de formación −−>15 <tipoCurso />16 <tipoCursoText />17 <i n i c i o />18 <munic ip io />19 <co l e c t i v o />20 <fam i l i a />21 <pra c t i c a s />22 <codigo />23 <idCurso />24 <l e t r a />25
26 <!−− Contacta −−>27 <opcion />28 <idDoc/>29 <numDoc/>30 <letraDoc />31
32 <!−− Empresas −−>33 <se c t o r />34 <ur lF in />35 <idProv inc i a />36
37 <!−− Anuncios de empleo −−>38 <palabrasClave />39 <ca t e go r i a />40 <subca t ego r i a />41 <t i t u l a c i o n />42 <tipoOpos i c i on />43 <j s e s s i o n i d />44 <idOfe r ta />45
46 </ submiss ion>
B.3.2. Anuncios de empleo
buscador_ofertas_formulario.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>
168 Apéndice B. Ficheros desarrollados para la aplicación
5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método GET deHTTP −−>
17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <action>ht tp : //www. o f i c i naemp l eo . com/buscar−empleos</
action>25 <cookies>yes</cookies>26 <content−type>text /html</content−type>27 <encoding>utf−8</encoding>28 <timeout>40</timeout>29 </config>30 </ xs l : t emp l a t e>31 </ x s l : s t y l e s h e e t>32 </p: input>33 <p:output name="data" id="metodo_http_1"/>34 </ p :p r o c e s s o r>35
36 <!−− Método GET (HTTP) : Obtiene l a s l i s t a s de p r ov i n c i a s y de c a t e g o r í a s−−>
37 <p :p r o c e s s o r name="tmg:tm−http ">38 <p: input name=" con f i g " h r e f="#metodo_http_1"/>39 <p:output name="data" id="page_1"/>40 </ p :p r o c e s s o r>41
42 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>43 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">44 <p: input name=" con f i g ">45 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">46 <prov i n c i a s>47 <prov inc i a>48 <nombre>−−Todas l a s p rov inc i a s−−</nombre>49 <va lo r />50 </ prov inc i a>51 <x s l : f o r −each s e l e c t="// s e l e c t [ @id='City ' ] / opt ion ">52 <x s l : i f t e s t=" po s i t i o n ( ) !=1">53 <prov inc i a>54 <nombre>55 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t r a n s l a t e (
t ex t ( ) , ' , ' , '/ ' ) ) "/>56 </nombre>57 <va lo r>58 <xs l : v a l u e−o f s e l e c t="@value"/>59 </ va lo r>60 </ prov inc i a>61 </ x s l : i f>62 </ x s l : f o r −each>
B.3. Directorio de gestión del canal de retorno 169
63 </ prov i n c i a s>64 <ca t e g o r i a s>65 <ca t e go r i a>66 <nombre>−−Todas l a s ca t ego r í a s−−</nombre>67 <va lo r />68 </ ca t e go r i a>69 <x s l : f o r −each s e l e c t="// s e l e c t [ @id=' a lerta_area ' ] / opt ion ">70 <x s l : i f t e s t=" po s i t i o n ( ) !=1">71 <ca t e go r i a>72 <nombre>73 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t r a n s l a t e (
t ex t ( ) , ' , ' , '/ ' ) ) "/>74 </nombre>75 <va lo r>76 <xs l : v a l u e−o f s e l e c t="@value"/>77 </ va lo r>78 </ ca t e go r i a>79 </ x s l : i f>80 </ x s l : f o r −each>81 </ ca t e g o r i a s>82 </ items>83 </p: input>84 <p: input name="data" h r e f="#page_1"/>85 <p:output name="data" id=" l i s t a_ppa l "/>86 </ p :p r o c e s s o r>87
88 <p:choose h r e f="#in s tance ">89 <!−− Si se ha s e l e c c i onado alguna ca tego r í a , se buscan l a s
subca t ego r í a s −−>90 <p:when t e s t="/ submiss ion / c a t e g o r i a != ' ' and / submiss ion / ca t e go r i a != '0 '
">91
92 <!−− Procesador para generar e l config ne c e s a r i o para e l método GETde HTTP −−>
93 <p :p r o c e s s o r name=" o x f : x s l t ">94 <p: input name="data" h r e f="#in s tance "/>95 <p: input name=" con f i g ">96 <x s l : s t y l e s h e e t version=" 2 .0 ">97 <xs l : t emp l a t e match="/">98 <config>99 <method>url−http</method>
100 <action>101 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
o f i c i naemp l eo . com/ajax_categ_puestos . asp ? id= ' ,/ submiss ion / ca t ego r i a , '& ; s e l = ')"/>
102 </action>103 <cookies>yes</cookies>104 <content−type>text /html</content−type>105 <encoding>utf−8</encoding>106 <timeout>40</timeout>107 </config>108 </ xs l : t emp l a t e>109 </ x s l : s t y l e s h e e t>110 </p: input>111 <p:output name="data" id="metodo_http_2"/>112 </ p :p r o c e s s o r>113
114 <!−− Método GET (HTTP) : Obtiene l a l i s t a de subca t ego r í a s −−>115 <p :p r o c e s s o r name="tmg:tm−http ">116 <p: input name=" con f i g " h r e f="#metodo_http_2"/>117 <p:output name="data" id="page_2"/>118 </ p :p r o c e s s o r>119
170 Apéndice B. Ficheros desarrollados para la aplicación
120 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTMLr e c i b i d o −−>
121 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">122 <p: input name=" con f i g ">123 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">124 <subca t ego r i a s>125 <subca t ego r i a>126 <nombre>−−Todas l a s subcategor í a s−−</nombre>127 <va lo r />128 </ subca t ego r i a>129 <x s l : f o r −each s e l e c t="// s e l e c t / opt ion ">130 <x s l : i f t e s t=" po s i t i o n ( ) !=1">131 <subca t ego r i a>132 <nombre>133 <xs l : v a l u e−o f s e l e c t="normal ize−space (
t r a n s l a t e ( t ex t ( ) , ' , ' , '/ ' ) ) "/>134 </nombre>135 <va lo r>136 <xs l : v a l u e−o f s e l e c t="@value"/>137 </ va lo r>138 </ subca t ego r i a>139 </ x s l : i f>140 </ x s l : f o r −each>141 </ subca t ego r i a s>142 </ items>143 </p: input>144 <p: input name="data" h r e f="#page_2"/>145 <p:output name="data" id=" l i s ta_sub "/>146 </ p :p r o c e s s o r>147 </p:when>148
149 <!−− Si no se ha s e l e c c i onado ninguna ca tego r í a , se toma un va lo r porde f e c t o −−>
150 <p:o the rw i s e>151 <p :p r o c e s s o r name=" o x f : i d e n t i t y ">152 <p: input name="data">153 <items>154 <subca t ego r i a s>155 <subca t ego r i a>156 <nombre>−−Todas l a s subcategor í a s−−</nombre>157 <va lo r>−1</ va lo r>158 </ subca t ego r i a>159 </ subca t ego r i a s>160 </ items>161 </p: input>162 <p:output name="data" id=" l i s ta_sub "/>163 </ p :p r o c e s s o r>164 </ p :o the rw i s e>165 </p:choose>166
167 <!−− Generación de l f i c h e r o XML −−>168 <p :p r o c e s s o r name=" o x f : x s l t ">169 <p: input name=" con f i g " h r e f=" buscador_ofertas_formular io . x s l "/>170 <p: input name="data" h r e f="#l i s t a_ppa l "/>171 <p: input name=" l i s ta_sub " h r e f="#l i s ta_sub "/>172 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>173 <p: input name=" s e r v e r " h r e f="#se rv e r "/>174 <p:output name="data" id=" l i s t "/>175 </ p :p r o c e s s o r>176
177 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>178 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">179 <p: input name=" con f i g ">
B.3. Directorio de gestión del canal de retorno 171
180 <config>181 <content−type>app l i c a t i on /xml</content−type>182 <encoding>utf−8</encoding>183 <version>1.0</version>184 </config>185 </p: input>186 <p: input name="data" h r e f="#l i s t "/>187 </ p :p r o c e s s o r>188
189 </ p : c o n f i g>
buscador_ofertas_formulario.xsl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_on . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>19 </container>20
21 <!−− Contenedor de l t exto de bienvenida −−>22 <container id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520"
s i z e y="90" alpha="0">23 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0">Buscador de o f e r t a s</text>24 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65"
s c r o l l="0">En es ta s e c c i ón puede encontrar l a s o f e r t a s deempleo que más l e i n t e r e s e n . E l i j a l a s opc iones que desee ypu l s e "OK" t r a s s e l e c c i o n a r e l botón "Buscar" .</text>
25 </container>26
27 <!−− Contenedor de l f o rmu la r i o de búsqueda −−>28 <container id="c_form" v i s="1" posx="30" posy="300" s i z e x="520"
s i z e y="259" alpha="0">29
30 <form posx="0" posy="10" s i z e x="520" s i z e y="259" s t y l e="s_menu_form">
31 <x s l : a t t r i b u t e name=" focus ">32 <xs l : c h o o s e>
172 Apéndice B. Ficheros desarrollados para la aplicación
33 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /c a t e g o r i a = ' '">f_prov inc ia</ xs l :when>
34 <x s l : o t h e rw i s e>f_subcategor ia</ x s l : o t h e rw i s e>35 </ x s l : c h o o s e>36 </ x s l : a t t r i b u t e>37
38 <text s t r="Prov inc ia " posx="0" posy="0" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
39 <form_list id=" f_prov inc ia " type="harrows" posx="175" posy="0" s i z e x="330" s i z e y="25" up=" f_buscar ">
40 <x s l : a t t r i b u t e name="down">41 <xs l : c h o o s e>42 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion
/ ca t e go r i a = ' '">f_categor i a</ xs l :when>43 <x s l : o t h e rw i s e>f_subcategor ia</ x s l : o t h e rw i s e>44 </ x s l : c h o o s e>45 </ x s l : a t t r i b u t e>46 <x s l : a t t r i b u t e name=" va l ">47 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / prov inc i a "/>48 </ x s l : a t t r i b u t e>49 <x s l : a t t r i b u t e name=" opt ions ">50 <xs l : f o r− ea ch s e l e c t=" p rov i n c i a s / p rov inc i a ">51 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>52 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">53 <x s l : t e x t> ,</ x s l : t e x t>54 </ x s l : i f>55 </ xs l : f o r− ea ch>56 </ x s l : a t t r i b u t e>57 <x s l : a t t r i b u t e name=" opt ions_texts ">58 <xs l : f o r− ea ch s e l e c t=" p rov i n c i a s / p rov inc i a ">59 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>60 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">61 <x s l : t e x t> ,</ x s l : t e x t>62 </ x s l : i f>63 </ xs l : f o r− ea ch>64 </ x s l : a t t r i b u t e>65 </ form_list>66
67 <text s t r="Categor ía " posx="0" posy="35" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
68 <form_list id=" f_categor i a " type="harrows" posx="175" posy="35" s i z e x="330" s i z e y="25" down=" f_cargarSub" up="f_prov inc ia ">
69 <x s l : a t t r i b u t e name=" va l ">70 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / c a t e go r i a "/>71 </ x s l : a t t r i b u t e>72 <x s l : a t t r i b u t e name=" opt ions ">73 <xs l : f o r− ea ch s e l e c t=" c a t e g o r i a s / c a t e g o r i a ">74 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>75 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">76 <x s l : t e x t> ,</ x s l : t e x t>77 </ x s l : i f>78 </ xs l : f o r− ea ch>79 </ x s l : a t t r i b u t e>80 <x s l : a t t r i b u t e name=" opt ions_texts ">81 <xs l : f o r− ea ch s e l e c t=" c a t e g o r i a s / c a t e g o r i a ">82 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>83 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">84 <x s l : t e x t> ,</ x s l : t e x t>85 </ x s l : i f>86 </ xs l : f o r− ea ch>87 </ x s l : a t t r i b u t e>
B.3. Directorio de gestión del canal de retorno 173
88 </ form_list>89
90 <form_list id=" f_cargarSub" va l="0000" type="harrows" posx="208" posy="70" s i z e x="250" s i z e y="25" down="f_subcategor ia " up=" f_categor i a " opt ions="0"opt ions_texts="Cargar subca t ego r í a s ( pu l s e "OK")">
91 <action key="OK">92 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>93 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>94 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>95 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>96 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>97 <x s l : a t t r i b u t e name=" act ">98 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas_formular io ?p rov inc i a=$f_prov inc ia ;& ; c a t e go r i a=$f_categor i a ;& ; pa labrasClave=$f_palabras ; ) ' ) "/>
99 </ x s l : a t t r i b u t e>100 <x s l : a t t r i b u t e name="actback ">101 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas_formular io ?p rov inc i a = ' ,$ prov inc ia , '& ; c a t e go r i a = ' ,$ca t ego r i a , '& ; pa labrasClave = ' ,$ palabrasClave, ' ) ' ) "/>
102 </ x s l : a t t r i b u t e>103 </action>104 </ form_list>105
106 <text s t r=" Subcategor ía " posx="0" posy="105" s i z e x="155"s i z e y="25" s t y l e="s_body_form"></text>
107 <form_list id=" f_subcategor ia " va l="0000" type="harrows" posx="175" posy="105" s i z e x="330" s i z e y="25" down=" f_palabras">
108 <x s l : a t t r i b u t e name="up">109 <xs l : c h o o s e>110 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion
/ ca t e go r i a = ' '">f_cargarSub</xs l :when>111 <x s l : o t h e rw i s e>f_prov inc ia</ x s l : o t h e rw i s e>112 </ x s l : c h o o s e>113 </ x s l : a t t r i b u t e>114 <x s l : a t t r i b u t e name=" opt ions ">115 <xs l : f o r− ea ch s e l e c t="doc ( ' i nput : l i s t a_sub ' ) / items /
subca t ego r i a s / subca t ego r i a ">116 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>117 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">118 <x s l : t e x t> ,</ x s l : t e x t>119 </ x s l : i f>120 </ xs l : f o r− ea ch>121 </ x s l : a t t r i b u t e>122 <x s l : a t t r i b u t e name=" opt ions_texts ">123 <xs l : f o r− ea ch s e l e c t="doc ( ' i nput : l i s t a_sub ' ) / items /
subca t ego r i a s / subca t ego r i a ">124 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>125 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">126 <x s l : t e x t> ,</ x s l : t e x t>
174 Apéndice B. Ficheros desarrollados para la aplicación
127 </ x s l : i f>128 </ xs l : f o r− ea ch>129 </ x s l : a t t r i b u t e>130 </ form_list>131
132 <text s t r="Palabras c l ave " posx="0" posy="140" s i z e x="155"s i z e y="25" s t y l e="s_body_form"></text>
133 <edit_text id=" f_palabras " c o l e d i t="#f f f f f f " posx="175" posy="140" s i z e x="330" s i z e y="25" up=" f_subcategor ia " down="f_buscar ">
134 <x s l : a t t r i b u t e name=" va l ">135 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / pa labrasClave "/>136 </ x s l : a t t r i b u t e>137 </edit_text>138
139 <form_imgbutton id="f_nuevaBusqueda" img=" images /bot_nuevaBusqueda_off . png" imgfocus=" images /bot_nuevaBusqueda_on . png" posx="120" posy="170" s i z e x="122" s i z e y="79" up=" f_palabras " down=" f_prov inc ia " l e f t="f_volver " r i g h t=" f_buscar " va l i d a t i o n=" f a l s e ">
140 <action key="OK">141 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>142 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>143 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>144 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>145 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>146 <x s l : a t t r i b u t e name=" act ">147 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas_formular io ?p rov inc i a=$f_prov inc ia ;& ; c a t e go r i a=& ;pa labrasClave=$f_palabras ; ) ' ) "/>
148 </ x s l : a t t r i b u t e>149 <x s l : a t t r i b u t e name="actback ">150 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (
anuncios_empleo ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? p rov inc i a = ' ,$prov inc ia , '& ; c a t e g o r i a = ' ,$ ca t ego r i a , '& ;pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
151 </ x s l : a t t r i b u t e>152 </action>153 </form_imgbutton>154
155 <form_imgbutton id=" f_buscar " img=" images /bot_buscar_off . png"imgfocus=" images /bot_buscar_on . png" posx="250" posy="170
" s i z e x="122" s i z e y="79" up=" f_palabras " down="f_prov inc ia " r i g h t=" f_volver " l e f t="f_nuevaBusqueda"va l i d a t i o n=" f a l s e ">
156 <action key="OK">157 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>158 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>159 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>160 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>
B.3. Directorio de gestión del canal de retorno 175
161 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>
162 <x s l : a t t r i b u t e name=" act ">163 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas ? p rov inc i a=$f_prov inc ia ;& ; c a t e go r i a=$f_categor i a ;& ;subca t ego r i a=$f_subcategor ia ;& ; pa labrasClave=$f_palabras ;& ; pag=1) ' ) "/>
164 </ x s l : a t t r i b u t e>165 <x s l : a t t r i b u t e name="actback ">166 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas_formular io ?p rov inc i a = ' ,$ prov inc ia , '& ; c a t e go r i a = ' ,$ca t ego r i a , '& ; pa labrasClave = ' ,$ palabrasClave, ' ) ' ) "/>
167 </ x s l : a t t r i b u t e>168 </action>169 </form_imgbutton>170
171 <form_imgbutton id=" f_volver " img=" images / bot_volver_off . png"imgfocus=" images /bot_volver_on . png" posx="380" posy="170
" s i z e x="122" s i z e y="79" up=" f_palabras " down="f_prov inc ia " r i g h t="f_nuevaBusqueda" l e f t=" f_buscar "va l i d a t i o n=" f a l s e ">
172 <action key="OK">173 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>174 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>175 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>176 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>177 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>178 <x s l : a t t r i b u t e name=" act ">179 <x s l : v a r i a b l e name="comun" s e l e c t=" ' hidepage (∗ ) ,
showpage ( anuncios_empleo ) ' "/>180 <xs l : v a l u e−o f s e l e c t="$comun"/>181 </ x s l : a t t r i b u t e>182 <x s l : a t t r i b u t e name="actback ">183 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (
anuncios_empleo ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? p rov inc i a = ' ,$prov inc ia , '& ; c a t e g o r i a = ' ,$ ca t ego r i a , '& ;pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
184 </ x s l : a t t r i b u t e>185 </action>186 </form_imgbutton>187
188 </form>189 </container>190
191 </page>192
193 </ xs l : t emp l a t e>194
195 </ x s l : s t y l e s h e e t>
176 Apéndice B. Ficheros desarrollados para la aplicación
buscador_ofertas.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>post</method>24 <action>ht tp : //www. o f i c i naemp l eo . com/empleos</action>25 <cookies>yes</cookies>26 <parameters>27 <parameter name="hid_pagenext">28 <x s l : a t t r i b u t e name="value ">29 <xs l : v a l u e−o f s e l e c t="/ submiss ion /pag"/>30 </ x s l : a t t r i b u t e>31 </parameter>32 <parameter name="hid_city ">33 <x s l : a t t r i b u t e name="value ">34 <xs l : v a l u e−o f s e l e c t="/ submiss ion / p rov inc i a "/>35 </ x s l : a t t r i b u t e>36 </parameter>37 <parameter name="hid_area">38 <x s l : a t t r i b u t e name="value ">39 <xs l : v a l u e−o f s e l e c t="/ submiss ion / c a t e g o r i a "/>40 </ x s l : a t t r i b u t e>41 </parameter>42 <parameter name="hid_puesto">43 <x s l : a t t r i b u t e name="value ">44 <xs l : c h o o s e>45 <xsl :when t e s t="/ submiss ion / subca t ego r i a != '−1 '
">46 <xs l : v a l u e−o f s e l e c t="/ submiss ion /
subca t ego r i a "/>47 </xs l :when>48 <x s l : o t h e rw i s e />49 </ x s l : c h o o s e>50 </ x s l : a t t r i b u t e>51 </parameter>52 <parameter name="hid_keyword">53 <x s l : a t t r i b u t e name="value ">54 <x s l : c a l l −template name=" rep lace−s t r i n g ">55 <xs l :w i th−param name=" text " s e l e c t="/
submiss ion / palabrasClave "/>
B.3. Directorio de gestión del canal de retorno 177
56 <xs l :w i th−param name="from" s e l e c t=" '%20 '"/>57 <xs l :w i th−param name=" to " s e l e c t=" '+ '"/>58 </ x s l : c a l l −template>59 </ x s l : a t t r i b u t e>60 </parameter>61 </parameters>62 <timeout>40</timeout>63 <content−type>text /html</content−type>64 <encoding>utf−8</encoding>65 </config>66 </ xs l : t emp l a t e>67
68 <!−− P l a n t i l l a que reemplaza una cadena por ot ra −−>69 <xs l : t emp l a t e name=" rep lace−s t r i n g ">70 <xsl :param name=" text "/>71 <xsl :param name="from"/>72 <xsl :param name=" to "/>73 <xs l : c h o o s e>74 <xsl :when t e s t=" conta in s ($ text , $ from ) ">75 <x s l : v a r i a b l e name=" be f o r e " s e l e c t=" subst r ing−be f o r e
($ text , $ from ) "/>76 <x s l : v a r i a b l e name=" a f t e r " s e l e c t=" subst r ing−a f t e r ($
text , $ from ) "/>77 <x s l : v a r i a b l e name=" p r e f i x " s e l e c t=" concat ($ be fore ,
$ to ) "/>78 <xs l : v a l u e−o f s e l e c t="$ be f o r e "/>79 <xs l : v a l u e−o f s e l e c t="$ to "/>80 <x s l : c a l l −template name=" rep lace−s t r i n g ">81 <xs l :w i th−param name=" text " s e l e c t="$ a f t e r "/>82 <xs l :w i th−param name="from" s e l e c t="$from"/>83 <xs l :w i th−param name=" to " s e l e c t="$ to "/>84 </ x s l : c a l l −template>85 </xs l :when>86 <x s l : o t h e rw i s e>87 <xs l : v a l u e−o f s e l e c t="$ text "/>88 </ x s l : o t h e rw i s e>89 </ x s l : c h o o s e>90 </ xs l : t emp l a t e>91
92 </ x s l : s t y l e s h e e t>93 </p: input>94 <p:output name="data" id="metodo_http"/>95 </ p :p r o c e s s o r>96
97 <!−− Método POST (HTTP) −−>98 <p :p r o c e s s o r name="tmg:tm−http ">99 <p: input name=" con f i g " h r e f="#metodo_http"/>
100 <p:output name="data" id="page"/>101 </ p :p r o c e s s o r>102
103 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>104 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">105 <p: input name=" con f i g ">106 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">107 <o f e r t a s>108 <x s l : f o r −each s e l e c t="// tab l e / t r [ @class='normaltext ' ] ">109 <o f e r t a>110 <nombre><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 1 ] / t ab l e / t r / td [ 2 ] / a/span ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></nombre>
178 Apéndice B. Ficheros desarrollados para la aplicación
111 <idOfe r ta><xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e (t r a n s l a t e ( normal ize−space ( . / td [ 1 ] / t ab l e / t r / td [ 2 ] / a/@href ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ), '= ') "/></ idOfe r ta>
112 <ubicac ion><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space ( . / td [ 2 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ ub icac ion>113 <empresa><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−
space ( . / td [ 3 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></empresa>114 <fecha><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 4 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ fecha>115 <idEmpresa>116 <x s l : v a r i a b l e name="nombre" s e l e c t=" t r a n s l a t e (
normal ize−space ( . / f o l l ow ing−s i b l i n g : : t r [ p o s i t i o n( ) =2]/ td [ 1 ] / a/@href ),'¡©­³º±‰“š‘ÂÃ' , ' áéíóúñÁÉÍÓÚÑ ' ) "/>
117 <xs l : c h o o s e>118 <xsl :when t e s t=" conta in s ($nombre , '& ; ' ) ">119 <xs l : v a l u e−o f s e l e c t=" concat ( subst r ing−be f o r e
($nombre , '& ; ' ) , 'AMPERSAND' , subst r ing−a f t e r ($nombre , '& ; ' ) ) "/>
120 </xs l :when>121 <x s l : o t h e rw i s e>122 <xs l : v a l u e−o f s e l e c t="$nombre"/>123 </ x s l : o t h e rw i s e>124 </ x s l : c h o o s e>125 </idEmpresa>126 </ o f e r t a>127 </ x s l : f o r −each>128 </ o f e r t a s>129 <paginas>130 <x s l : v a r i a b l e name=" tota l_pag inas ">131 <x s l : v a r i a b l e name="ultima_pag">132 <x s l : f o r −each s e l e c t="//a [ @href='empleos ' ] ">133 <x s l : i f t e s t=" po s i t i o n ( )=l a s t ( ) ">134 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e ( subst r ing−
a f t e r ( . / @onclick , ' pag inar ( ' ) , ' ) ' ) "/>135 </ x s l : i f>136 </ x s l : f o r −each>137 </ x s l : v a r i a b l e>138
139 <xs l : c h o o s e>140 <xsl :when t e s t="$ultima_pag > ; doc ( ' input :dat−
in s tance ' ) / submiss ion /pag">141 <xs l : v a l u e−o f s e l e c t="$ultima_pag"/>142 </xs l :when>143 <x s l : o t h e rw i s e>144 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance ' ) /
submiss ion /pag"/>145 </ x s l : o t h e rw i s e>146 </ x s l : c h o o s e>147 </ x s l : v a r i a b l e>
B.3. Directorio de gestión del canal de retorno 179
148
149 <pagina>150 <x s l : a t t r i b u t e name=" ac tua l ">1</ x s l : a t t r i b u t e>151 <x s l : a t t r i b u t e name="numero">152 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance ' ) /
submiss ion /pag"/>153 </ x s l : a t t r i b u t e>154 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>155 </pagina>156 <x s l : f o r −each s e l e c t="//a [ @href='empleos ' ] ">157 <x s l : i f t e s t=" subst r ing−be f o r e ( subst r ing−a f t e r ( . / @onclick
, ' pag inar ( ' ) , ' ) ' )=text ( ) ">158 <pagina>159 <x s l : a t t r i b u t e name=" ac tua l ">0</ x s l : a t t r i b u t e>160 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="
text ( ) "/></ x s l : a t t r i b u t e>161 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>162 </pagina>163 </ x s l : i f>164 </ x s l : f o r −each>165 </paginas>166 </ items>167 </p: input>168 <p: input name="data" h r e f="#page"/>169 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>170 <p:output name="data" id=" resu l tDesordenado "/>171 </ p :p r o c e s s o r>172
173 <!−− Procesador para ordenar l a s páginas −−>174 <p :p r o c e s s o r name=" o x f : x s l t ">175 <p: input name="data" h r e f="#resu l tDesordenado "/>176 <p: input name=" con f i g ">177 <x s l : s t y l e s h e e t version=" 2 .0 ">178 <xs l : t emp l a t e match=" items ">179 <items>180 <o f e r t a s>181 <xs l : app ly−templates s e l e c t=" o f e r t a s / o f e r t a "/>182 </ o f e r t a s>183 <paginas>184 <xs l : app ly−templates s e l e c t="paginas /pagina ">185 <x s l : s o r t s e l e c t="@numero" data−type="number" order=
" ascending "/>186 </ xs l : app ly−templates>187 </paginas>188 </ items>189 </ xs l : t emp l a t e>190
191 <xs l : t emp l a t e match=" o f e r t a s / o f e r t a ">192 <o f e r t a>193 <nombre><xs l : v a l u e−o f s e l e c t="nombre"/></nombre>194 <idOfe r ta><xs l : v a l u e−o f s e l e c t=" idOfe r ta "/></ idOfe r ta>195 <idEmpresa><xs l : v a l u e−o f s e l e c t=" idEmpresa"/></idEmpresa>196 <ubicac ion><xs l : v a l u e−o f s e l e c t=" ub icac ion "/></ ub icac ion>197 <empresa><xs l : v a l u e−o f s e l e c t="empresa"/></empresa>198 <fecha><xs l : v a l u e−o f s e l e c t=" fecha "/></ fecha>199 </ o f e r t a>200 </ xs l : t emp l a t e>201 <xs l : t emp l a t e match="paginas /pagina ">202 <pagina>203 <x s l : a t t r i b u t e name=" ac tua l "><xs l : v a l u e−o f s e l e c t="@actual
"/></ x s l : a t t r i b u t e>
180 Apéndice B. Ficheros desarrollados para la aplicación
204 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="@numero"/></ x s l : a t t r i b u t e>
205 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="@total "/></ x s l : a t t r i b u t e>
206 </pagina>207 </ xs l : t emp l a t e>208
209 </ x s l : s t y l e s h e e t>210 </p: input>211 <p:output name="data" id=" r e s u l t "/>212 </ p :p r o c e s s o r>213
214 <!−− Generación de l f i c h e r o XML −−>215 <p :p r o c e s s o r name=" o x f : x s l t ">216 <p: input name=" con f i g " h r e f=" buscador_ofertas . x s l "/>217 <p: input name="data" h r e f="#r e s u l t "/>218 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>219 <p: input name=" s e r v e r " h r e f="#se rv e r "/>220 <p:output name="data" id=" l i s t "/>221 </ p :p r o c e s s o r>222
223 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>224 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">225 <p: input name=" con f i g ">226 <config>227 <content−type>app l i c a t i on /xml</content−type>228 <encoding>utf−8</encoding>229 <version>1.0</version>230 </config>231 </p: input>232 <p: input name="data" h r e f="#l i s t "/>233 </ p :p r o c e s s o r>234
235 </ p : c o n f i g>
buscador_ofertas.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_on . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>
B.3. Directorio de gestión del canal de retorno 181
18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118" s i z e y="28"></image>
19 </container>20
21 <!−− Contenedor de l menú ho r i z on t a l ( pag inac ión ) −−>22 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="
215" posx="24" v i s="1">23 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25
" itemx="36" itemy="25" sepx="4" sepy="0" s t y l e="s_menuhorCentrado">
24 <x s l : v a r i a b l e name=" total_pag" s e l e c t="/ items / paginas /pagina[ 1 ] / @total "/>
25 <x s l : v a r i a b l e name="primera_pag" s e l e c t="/ items / paginas /pagina [ 1 ] / @numero"/>
26 <x s l : v a r i a b l e name="ultima_pag" s e l e c t="/ items / paginas /pagina[ l a s t ( ) ] /@numero"/>
27 <x s l : v a r i a b l e name="num_pag" s e l e c t="doc ( ' input :dat− ins tance' ) / submiss ion /pag"/>
28
29 <xs l : c h o o s e>30 <xsl :when t e s t="$primera_pag= '1 '">31 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − 1) "/></ x s l : a t t r i b u t e>32 </xs l :when>33 <x s l : o t h e rw i s e>34 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − $primera_pag + 1) "/></x s l : a t t r i b u t e>
35 <menuitem img=" images /bot_matrix_off . png" imgfocus="images /bot_matrix_on . png" s t r="<<"/>
36 </ x s l : o t h e rw i s e>37 </ x s l : c h o o s e>38
39 <xs l :app ly− t emplate s s e l e c t="paginas /pagina "/>40
41 <x s l : i f t e s t="$ultima_pag != $ total_pag and $ultima_pag !='1 ' ">
42 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images/bot_matrix_on . png" s t r=">>"/>
43 </ x s l : i f>44 </menu>45 </container>46
47 <!−− Contenedor de l menú v e r t i c a l ( l i s t a d o de empresas ) −−>48 <container id="c_menu" alpha="255" s i z e y="300" s i z e x="510" posy="
250" posx="30" v i s="1">49 <xs l : c h o o s e>50 <xsl :when t e s t="count (// o f e r t a ) !=0">51 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="510" s i z e y=
"275" itemx="510" itemy="25" sepx="0" sepy="0" s t y l e="s_menuverEmpresas">
52 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >53 <action key="OK">54 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>55 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>56 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>57 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>
58 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
182 Apéndice B. Ficheros desarrollados para la aplicación
59 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / pa labrasClave"/>
60 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
61
62 <x s l : a t t r i b u t e name=" act ">63 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? c a t e go r i a=& p rov inc i a=& ; pa labrasClave=) ' ) "/>
64 <xs l : v a l u e−o f s e l e c t="$comun"/>65 </ x s l : a t t r i b u t e>66
67 <x s l : a t t r i b u t e name="actback ">68 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas ? c a t e g o r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$ subcategor ia , '& ;p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,$pag , '& ; pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
69 <xs l : v a l u e−o f s e l e c t="$comun"/>70 </ x s l : a t t r i b u t e>71
72 </action>73 </menuitem>74
75 <xs l :app ly− t emplate s s e l e c t=" o f e r t a s / o f e r t a "/>76
77 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >78 <action key="OK">79 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>80 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>81 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>82 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>
83 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
84 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / pa labrasClave"/>
85 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
86
87 <x s l : a t t r i b u t e name=" act ">88 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? c a t e go r i a=& p rov inc i a=& ; pa labrasClave=) ' ) "/>
89 <xs l : v a l u e−o f s e l e c t="$comun"/>90 </ x s l : a t t r i b u t e>91
92 <x s l : a t t r i b u t e name="actback ">93 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas ? c a t e g o r i a = ' ,$ ca t ego r i a , '&
B.3. Directorio de gestión del canal de retorno 183
amp ; subca t ego r i a = ' ,$ subcategor ia , '& ;p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,$pag , '& ; pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
94 <xs l : v a l u e−o f s e l e c t="$comun"/>95 </ x s l : a t t r i b u t e>96
97 </action>98 </menuitem>99
100 </menu>101 </xs l :when>102 <x s l : o t h e rw i s e>103 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="510" s i z e y
="90" s c r o l l="0">No se ha encontrado ninguna o f e r t a deempleo con l o s parámetros de búsqueda s e l e c c i o nado s .
Pulse "OK" para r e a l i z a r una nueva búsqueda .</text>104 <menu type=" v e r t i c a l " posx="0" posy="115" s i z e x="510"
s i z e y="27" itemx="510" itemy="27" sepx="0" sepy="0"s t y l e="s_menuverCursos">
105 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >106 <action key="OK">107 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>108 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>109 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>110 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>
111 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
112 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / pa labrasClave"/>
113 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
114
115 <x s l : a t t r i b u t e name=" act ">116 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? c a t e go r i a=& p rov inc i a=& ; pa labrasClave=) ' ) "/>
117 <xs l : v a l u e−o f s e l e c t="$comun"/>118 </ x s l : a t t r i b u t e>119
120 <x s l : a t t r i b u t e name="actback ">121 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas ? c a t e g o r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$ subcategor ia , '& ;p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,$pag , '& ; pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
122 <xs l : v a l u e−o f s e l e c t="$comun"/>123 </ x s l : a t t r i b u t e>124
125 </action>126 </menuitem>127 </menu>128 </ x s l : o t h e rw i s e>129 </ x s l : c h o o s e>130 </container>
184 Apéndice B. Ficheros desarrollados para la aplicación
131 </page>132 </ xs l : t emp l a t e>133
134 <xs l : t emp l a t e match="paginas /pagina ">135 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">136 <x s l : a t t r i b u t e name=" s t r "><xs l : v a l u e−o f s e l e c t="@numero"/></
x s l : a t t r i b u t e>137 <x s l : i f t e s t="@actual= '0 ' ">138 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>139 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>140 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / c a t e g o r i a "/>141 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>142 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / p rov inc i a "/>143 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>144 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /buscador_ofertas ? c a t e g o r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a= ' ,$ subcategor ia , '& ; p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,@numero , '& ; pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
145 <x s l : a t t r i b u t e name="onover ">146 <xs l : v a l u e−o f s e l e c t="$comun"/>147 </ x s l : a t t r i b u t e>148 </ x s l : i f>149 </menuitem>150 </ xs l : t emp l a t e>151
152 <xs l : t emp l a t e match=" o f e r t a s / o f e r t a ">153 <menuitem>154 <x s l : a t t r i b u t e name=" s t r ">155 <xs l : v a l u e−o f s e l e c t=" concat ( fecha , ' : ' , nombre , ' ( ' , empresa , ' ,
' , ub icac ion , ' ) ' ) "/>156 </ x s l : a t t r i b u t e>157
158 <action key="OK">159 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>160 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>161 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / c a t e g o r i a "/>162 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>163 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / p rov inc i a "/>164 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>165 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion /pag"/>166
167 <x s l : a t t r i b u t e name=" act ">168 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofe r tas_deta l l e ? c a t e go r i a = ' ,$ca t ego r i a , '& ; subca t ego r i a = ' ,$ subcategor ia , '& ;p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,$pag , '& ;pa labrasClave = ' ,$ palabrasClave , '& ; idOfe r ta = ' , idOferta, '& ; idEmpresa= ' , idEmpresa , ' ) ' ) "/>
B.3. Directorio de gestión del canal de retorno 185
169 <xs l : v a l u e−o f s e l e c t="$comun"/>170 </ x s l : a t t r i b u t e>171 <x s l : a t t r i b u t e name="actback ">172 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / buscador_ofertas ? c a t e go r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$ subcategor ia , '& ; p rov inc i a = ' ,$prov inc ia , '& ; pag= ' ,$pag , '& ; pa labrasClave = ' ,$palabrasClave , ' ) ' ) "/>
173 <xs l : v a l u e−o f s e l e c t="$comun"/>174 </ x s l : a t t r i b u t e>175 </action>176
177 </menuitem>178 </ xs l : t emp l a t e>179
180 </ x s l : s t y l e s h e e t>
buscador_ofertas_detalle.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP (datos de l a o f e r t a ) −−>
17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <action>25 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www. o f i c i naemp l eo .
com ' , / submiss ion / idOferta , '= ' ) "/>26 </action>27 <cookies>yes</cookies>28 <timeout>40</timeout>29 <content−type>text /html</content−type>30 <encoding>utf−8</encoding>31 </config>32 </ xs l : t emp l a t e>33 </ x s l : s t y l e s h e e t>34 </p: input>35 <p:output name="data" id="metodo_http"/>36 </ p :p r o c e s s o r>
186 Apéndice B. Ficheros desarrollados para la aplicación
37
38 <!−− Primer método GET (HTTP) −−>39 <p :p r o c e s s o r name="tmg:tm−http ">40 <p: input name=" con f i g " h r e f="#metodo_http"/>41 <p:output name="data" id="page"/>42 </ p :p r o c e s s o r>43
44 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o (datos de l a o f e r t a ) −−>
45 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">46 <p: input name=" con f i g ">47 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">48
49 <t i t u l o>50 <x s l : f o r −each s e l e c t="// form [@method='post ' and @action
= ' ' ]/ t ab l e / t r / td/ tab l e / t r [ 1 ] / td [ 1 ] / t ab l e [ 1 ] / t r [ 2 ] / td[ 1 ] / t ab l e [ 2 ] / t r [ 1 ] / td [ 1 ] / t ab l e / t r [ 1 ] / td [ 1 ] / t ab l e / t r / td">
51 <x s l : v a r i a b l e name=" texto " s e l e c t=" . "/>52 <xs l : v a l u e−o f s e l e c t="normal ize−space ($ texto ) "/>53 </ x s l : f o r −each>54 </ t i t u l o>55
56 <tex to s>57 <x s l : f o r −each s e l e c t="// form [@method='post ' and @action
= ' ' ]/ t ab l e / t r / td/ tab l e / t r [ 1 ] / td [ 1 ] / t ab l e [ 1 ] / t r [ 2 ] / td[ 1 ] / t ab l e [ 2 ] / t r [ 1 ] / td [ 1 ] / t ab l e / t r [ 2 ] ">
58 <texto>59 <x s l : t e x t>∗∗∗</ x s l : t e x t>60 <xs l : v a l u e−o f s e l e c t=" . / td/ tab l e / t r / td/ st rong "/>61 <x s l : t e x t>
</ x s l : t e x t>62 <xs l : v a l u e−o f s e l e c t=" . / td/ tab l e / t r / td/p [ 1 ] / span"/>63 <x s l : t e x t>
</ x s l : t e x t>64 <x s l : t e x t>∗∗∗</ x s l : t e x t>65 <xs l : v a l u e−o f s e l e c t=" . / td/ tab l e / t r / td/p [ 2 ] / s t rong
[ 1 ] "/>66 <x s l : t e x t>
</ x s l : t e x t>67 <x s l : f o r −each s e l e c t=" . / td/ tab l e / t r / td/p [ 2 ] / t ex t ( ) ">68 <x s l : v a r i a b l e name=" texto " s e l e c t=" . "/>69 <x s l : i f t e s t=" po s i t i o n ( )=2">70 <xs l : v a l u e−o f s e l e c t="normal ize−space ($ texto ) "
/>71 <x s l : t e x t>
</ x s l : t e x t>72 </ x s l : i f>73 </ x s l : f o r −each>74 <x s l : t e x t>∗∗∗</ x s l : t e x t>75 <xs l : v a l u e−o f s e l e c t=" . / td/ tab l e / t r / td/p [ 2 ] / s t rong
[ 2 ] "/>76 <x s l : t e x t>
</ x s l : t e x t>77 <x s l : f o r −each s e l e c t=" . / td/ tab l e / t r / td/p [ 2 ] / t ex t ( ) ">78 <x s l : v a r i a b l e name=" texto " s e l e c t=" . "/>79 <x s l : i f t e s t=" po s i t i o n ( )=4">
B.3. Directorio de gestión del canal de retorno 187
80 <xs l : v a l u e−o f s e l e c t="normal ize−space ($ texto ) "/>
81 <x s l : t e x t>
</ x s l : t e x t>82 </ x s l : i f>83 </ x s l : f o r −each>84 </ texto>85 </ x s l : f o r −each>86
87 <x s l : f o r −each s e l e c t="// form [@method='post ' and @action= ' ' ]/ t ab l e / t r / td/ tab l e / t r [ 1 ] / td [ 1 ] / t ab l e [ 1 ] / t r [ 2 ] / td[ 1 ] / t ab l e [ 2 ] / t r [ 1 ] / td [ 1 ] / t ab l e / t r [ 3 ] / td/p">
88 <x s l : i f t e s t=" po s i t i o n ( ) &l t ; 4">89 <texto>90 <x s l : t e x t>∗∗∗</ x s l : t e x t>91 <xs l : v a l u e−o f s e l e c t=" . / s t rong "/>92 <x s l : t e x t>
</ x s l : t e x t>93 <x s l : t e x t>
</ x s l : t e x t>94 <x s l : f o r −each s e l e c t=" . / text ( ) ">95 <x s l : v a r i a b l e name=" texto " s e l e c t=" . "/>96 <x s l : v a r i a b l e name="textoNorm" s e l e c t="
normal ize−space ($ texto ) "/>97 <x s l : i f t e s t="$textoNorm != ' ' ">98 <xs l : v a l u e−o f s e l e c t="$textoNorm"/>99 <x s l : t e x t>
</ x s l : t e x t>100 </ x s l : i f>101 </ x s l : f o r −each>102 </ texto>103 </ x s l : i f>104 </ x s l : f o r −each>105 </ tex to s>106 </ items>107 </p: input>108 <p: input name="data" h r e f="#page"/>109 <p:output name="data" id=" r e s u l t "/>110 </ p :p r o c e s s o r>111
112 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP (d e t a l l e s de l a empresa ) −−>
113 <p :p r o c e s s o r name=" o x f : x s l t ">114 <p: input name="data" h r e f="#in s tance "/>115 <p: input name=" con f i g ">116 <x s l : s t y l e s h e e t version=" 2 .0 ">117 <xs l : t emp l a t e match="/">118 <config>119 <method>url−http</method>120 <action>121 <x s l : v a r i a b l e name="idEmpresa">122 <xs l : c h o o s e>123 <xsl :when t e s t=" conta in s (/ submiss ion / idEmpresa , '
AMPERSAND' ) ">124 <xs l : v a l u e−o f s e l e c t=" concat ( subst r ing−be f o r e
(/ submiss ion / idEmpresa , 'AMPERSAND' ) , '& ' , subs t r ing−a f t e r (/ submiss ion / idEmpresa , 'AMPERSAND' ) ) "/>
125 </xs l :when>126 <x s l : o t h e rw i s e>
188 Apéndice B. Ficheros desarrollados para la aplicación
127 <xs l : v a l u e−o f s e l e c t="/ submiss ion / idEmpresa"/>128 </ x s l : o t h e rw i s e>129 </ x s l : c h o o s e>130 </ x s l : v a r i a b l e>131
132 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www. o f i c i naemp l eo .com ' , $ idEmpresa ) "/>
133 </action>134 <cookies>yes</cookies>135 <timeout>40</timeout>136 <content−type>text /html</content−type>137 <encoding>utf−8</encoding>138 </config>139 </ xs l : t emp l a t e>140 </ x s l : s t y l e s h e e t>141 </p: input>142 <p:output name="data" id="metodo_http2"/>143 </ p :p r o c e s s o r>144
145 <!−− Segundo método GET (HTTP) −−>146 <p :p r o c e s s o r name="tmg:tm−http ">147 <p: input name=" con f i g " h r e f="#metodo_http2"/>148 <p:output name="data" id="page2"/>149 </ p :p r o c e s s o r>150
151 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o (d e t a l l e s de l a empresa ) −−>
152 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">153 <p: input name=" con f i g ">154 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">155 <tex to s>156 <texto>157 <x s l : t e x t>−−−−−−−−−−−−−−Datos de l a empresa
−−−−−−−−−−−−−−</ x s l : t e x t>158 <x s l : t e x t>
</ x s l : t e x t>159 </ texto>160 <x s l : f o r −each s e l e c t="// div [ 2 ] / t ab l e [ 2 ] / t r [ 1 ] / td [ 2 ] / t ab l e
[ 1 ] / t r [ 1 ] / td [ 1 ] / t ab l e [ 1 ] / t r [ 6 ] / td [ 1 ] / t ab l e [ 1 ] / t r [ 1 ] / td[ 1 ] / t ab l e [ 2 ] / t r ">
161 <x s l : i f t e s t="count ( . / / t ab l e )=0 and count ( . / / a )=0">162 <texto>163 <x s l : t e x t>∗ </ x s l : t e x t>164 <xs l : v a l u e−o f s e l e c t=" . / td [ 1 ] / span"/>165 <x s l : t e x t> </ x s l : t e x t>166 <xs l : v a l u e−o f s e l e c t=" . / td [ 2 ] "/>167 <x s l : t e x t>
</ x s l : t e x t>168 </ texto>169 </ x s l : i f>170 </ x s l : f o r −each>171 </ tex to s>172 </ items>173 </p: input>174 <p: input name="data" h r e f="#page2"/>175 <p:output name="data" id=" resultEmpresa "/>176 </ p :p r o c e s s o r>177
178 <!−− Generación de l f i c h e r o XML −−>179 <p :p r o c e s s o r name=" o x f : x s l t ">180 <p: input name=" con f i g " h r e f=" buscador_ofe r tas_deta l l e . x s l "/>
B.3. Directorio de gestión del canal de retorno 189
181 <p: input name="data" h r e f="#r e s u l t "/>182 <p: input name="empresa" h r e f="#resultEmpresa "/>183 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>184 <p: input name=" s e r v e r " h r e f="#se rv e r "/>185 <p:output name="data" id=" l i s t "/>186 </ p :p r o c e s s o r>187
188 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>189 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">190 <p: input name=" con f i g ">191 <config>192 <content−type>app l i c a t i on /xml</content−type>193 <encoding>utf−8</encoding>194 <version>1.0</version>195 </config>196 </p: input>197 <p: input name="data" h r e f="#l i s t "/>198 </ p :p r o c e s s o r>199
200 </ p : c o n f i g>
buscador_ofertas_detalle.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_on . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>14 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>18 </container>19
20 <!−− Contenedor de l t í t u l o −−>21 <container id=" c_texto_ti tu lo " v i s="1" alpha="0" posx="30" posy="
214" s i z e x="520" s i z e y="260">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0"><xs l : v a l u e−o f s e l e c t=" t i t u l o "/></text>23 </container>24
25 <!−− Contenedor de l t exto de in formac ión −−>26 <container id="c_textoGral " v i s="1" alpha="0" posx="30" posy="234"
s i z e x="520" s i z e y="260">
190 Apéndice B. Ficheros desarrollados para la aplicación
27 <text s t y l e=" s_bodyDetal le " posx="0" posy="0" s i z e x="520" s i z e y="240" s c r o l l="1">
28 <xs l : f o r− ea ch s e l e c t=" tex to s / texto ">29 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>30 </ xs l : f o r− ea ch>31 <xs l : f o r− ea ch s e l e c t="doc ( ' input:empresa ' ) / items / t ex to s / texto
">32 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>33 </ xs l : f o r− ea ch>34 </text>35 </container>36
37 <!−− Contenedor de l menú −−>38 <container id="c_menu" v i s="1" alpha="0" posx="145" posy="490"
s i z e x="290" s i z e y="45">39 <menu type=" ho r i z on t a l " posx="0" posy="0" s i z e x="290" s i z e y="45"
itemx="130" itemy="45" sepx="30" sepy="0" s t y l e="s_menuhor">
40 <menuitem s t r="Volver " >41 <action key="OK">42 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>43 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>44 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>45 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>46 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>47 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>48 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>49 <x s l : v a r i a b l e name=" idOfe r ta " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idOfe r ta "/>50 <x s l : v a r i a b l e name="idEmpresa" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idEmpresa"/>51
52 <x s l : a t t r i b u t e name=" act ">53 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / buscador_ofertas ? c a t e go r i a= ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$ subcategor ia, '& ; p rov inc i a = ' ,$ prov inc ia , '& ; pag= ' ,$pag, '& ; pa labrasClave = ' ,$ palabrasClave , ' ) ' ) "/>
54 <xs l : v a l u e−o f s e l e c t="$comun"/>55 </ x s l : a t t r i b u t e>56
57 <x s l : a t t r i b u t e name="actback ">58 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / buscador_ofe r tas_deta l l e ?c a t e g o r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$subcategor ia , '& ; p rov inc i a = ' ,$ prov inc ia , '& ;pag= ' ,$pag , '& ; pa labrasClave = ' ,$ palabrasClave, '& ; idOfe r ta = ' ,$ idOferta , '& ; idEmpresa= ' ,$idEmpresa , ' ) ' ) "/>
59 <xs l : v a l u e−o f s e l e c t="$comun"/>60 </ x s l : a t t r i b u t e>61 </action>62 </menuitem>63
64 <menuitem s t r="Nueva búsqueda" >
B.3. Directorio de gestión del canal de retorno 191
65 <action key="OK">66 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>67 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>68 <x s l : v a r i a b l e name=" ca t e go r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ca t e go r i a "/>69 <x s l : v a r i a b l e name=" subca t ego r i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / subca t ego r i a "/>70 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>71 <x s l : v a r i a b l e name="palabrasClave " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / pa labrasClave "/>72 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>73 <x s l : v a r i a b l e name=" idOfe r ta " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idOfe r ta "/>74 <x s l : v a r i a b l e name="idEmpresa" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idEmpresa"/>75
76 <x s l : a t t r i b u t e name=" act ">77 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc /buscador_ofertas_formular io ? c a t e go r i a=& ;p rov inc i a=& ; pa labrasClave=) ' ) "/>
78 <xs l : v a l u e−o f s e l e c t="$comun"/>79 </ x s l : a t t r i b u t e>80
81 <x s l : a t t r i b u t e name="actback ">82 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / buscador_ofe r tas_deta l l e ?c a t e g o r i a = ' ,$ ca t ego r i a , '& ; subca t ego r i a = ' ,$subcategor ia , '& ; p rov inc i a = ' ,$ prov inc ia , '& ;pag= ' ,$pag , '& ; pa labrasClave = ' ,$ palabrasClave, '& ; idOfe r ta = ' ,$ idOferta , '& ; idEmpresa= ' ,$idEmpresa , ' ) ' ) "/>
83 <xs l : v a l u e−o f s e l e c t="$comun"/>84 </ x s l : a t t r i b u t e>85 </action>86 </menuitem>87
88 </menu>89 </container>90 </page>91 </ xs l : t emp l a t e>92
93 </ x s l : s t y l e s h e e t>
ofertas_empleo_publico_datos.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2
3 <datos>4
5 <prov i n c i a s>6 <opt ion value="−1" nombreBusq="Todas" nombreUrl="Todas"></ opt ion>7 <opt ion value="Nac" nombreBusq="Nacional###Nacional " nombreUrl="
Nacional %23%23%23Nacional "></ opt ion>
192 Apéndice B. Ficheros desarrollados para la aplicación
8 <opt ion value="Pro" nombreBusq=" Prov i n c i a l###Todos" nombreUrl="Prov i n c i a l %23%23%23Todos"></ opt ion>
9 <opt ion value="Alm" nombreBusq=" Prov in c i a l###Almerí ; a"nombreUrl=" Prov in c i a l %23%23%23Almer %C3%ADa"></ opt ion>
10 <opt ion value="Cad" nombreBusq=" Prov i n c i a l###Cá ; d i z "nombreUrl=" Prov in c i a l %23%23%23C%C3%A1diz"></ opt ion>
11 <opt ion value="Cor" nombreBusq=" Prov i n c i a l###Có ; rdoba"nombreUrl=" Prov in c i a l %23%23%23C%C3%B3rdoba"></ opt ion>
12 <opt ion value="Gra" nombreBusq=" Prov i n c i a l###Granada" nombreUrl="Prov i n c i a l %23%23%23Granada"></ opt ion>
13 <opt ion value="Hue" nombreBusq=" Prov in c i a l###Huelva" nombreUrl="Prov i n c i a l %23%23%23Huelva"></ opt ion>
14 <opt ion value="Jae" nombreBusq=" Prov i n c i a l###Jaé ; n"nombreUrl=" Prov in c i a l %23%23%23Ja %C3%A9n"></ opt ion>
15 <opt ion value="Mal" nombreBusq=" Prov in c i a l###Má ; laga "nombreUrl=" Prov in c i a l %23%23%23M%C3%A1laga"></ opt ion>
16 <opt ion value="Sev" nombreBusq=" Prov in c i a l###S e v i l l a " nombreUrl="Prov i n c i a l %23%23%23S e v i l l a "></ opt ion>
17 </ prov i n c i a s>18
19 <t i t u l a c i o n e s>20 <opt ion value="−1" nombreBusq="Todas" nombreUrl="Todas"></ opt ion>21 <opt ion value="Bach" nombreBusq=" Ba ch i l l e r / FP I I " nombreUrl="
Ba ch i l l e r+%2F+FP+I I "></ opt ion>22 <opt ion value="Cert " nombreBusq=" Ce r t i f i c a d o de e s c o l a r i d ad " nombreUrl
=" Ce r t i f i c ad o+de+e s c o l a r i d ad "></ opt ion>23 <opt ion value="Dipl " nombreBusq="Diplomatura / Ing en i e rí ; a t
é ; cn i ca " nombreUrl="Diplomatura+%2F+Ingen i e r %C3%ADa+t %C3%A9cnica"></ opt ion>
24 <opt ion value="Doct" nombreBusq="Doctor" nombreUrl="Doctor"></ opt ion>25 <opt ion value="ESO" nombreBusq="ESO" nombreUrl="ESO"></ opt ion>26 <opt ion value="Grad" nombreBusq="Graduado e s c o l a r / FP I " nombreUrl="
Graduado+e s c o l a r+%2F+FP+I "></ opt ion>27 <opt ion value="Lice " nombreBusq=" L i c enc i a tu ra / Ing en i e rí ; a"
nombreUrl=" L i c enc i a tu ra+%2F+Ingen i e r %C3%ADa"></opt ion>28 <opt ion value="NS" nombreBusq="N/S" nombreUrl="N%2FS"></ opt ion>29 <opt ion value="Secu" nombreBusq="Secundar ia " nombreUrl="Secundar ia "></
opt ion>30 <opt ion value="Sin " nombreBusq="Sin t i t u l a c ió ; n" nombreUrl="
Sin+t i t u l a c i %C3%B3n"></ opt ion>31 </ t i t u l a c i o n e s>32
33 <t ipo s>34 <opt ion value="−1" nombreBusq="Todas" nombreUrl="Todas"></ opt ion>35 <opt ion value="Conc" nombreBusq="Concurso−op o s i c ió ; n"
nombreUrl="Concurso−op o s i c i %C3%B3n"></ opt ion>36 <opt ion value="Opos" nombreBusq="Opos ic ió ; n" nombreUrl="
Opos ic i %C3%B3n"></ opt ion>37 <opt ion value="Libr " nombreBusq="Opos ic ió ; n l i b r e " nombreUrl
="Opos ic i %C3%B3n+l i b r e "></ opt ion>38 </ t i p o s>39
40 </datos>
ofertas_empleo_publico.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
B.3. Directorio de gestión del canal de retorno 193
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <p :p r o c e s s o r name=" o x f : i d e n t i t y ">17 <p: input name="data" h r e f="ofertas_empleo_publico_datos . xml"/>18 <p:output name="data" id="ofertas_empleo_publico_datos "/>19 </ p :p r o c e s s o r>20
21 <p:choose h r e f="#in s tance ">22
23 <!−− Si es l a primera vez que se accede −−>24 <p:when t e s t="/ submiss ion /primeraVez='S ' ">25
26 <!−− Procesador para generar e l config ne c e s a r i o para e l métodoHTTP que obtendrá l a cookie de s e s i ó n −−>
27 <p :p r o c e s s o r name=" o x f : x s l t ">28 <p: input name="data" h r e f="#in s tance "/>29 <p: input name=" con f i g ">30 <x s l : s t y l e s h e e t version=" 2 .0 ">31 <xs l : t emp l a t e match="/">32 <config>33 <method>se s s i o n</method>34 <action>ht tp : //www. juntadeanda luc ia . e s /
se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ ofertasEmpleo / o f e r t a sPub l i c a s /? t i c k e t=nocas</action>
35 <timeout>40</timeout>36 </config>37 </ xs l : t emp l a t e>38 </ x s l : s t y l e s h e e t>39 </p: input>40 <p:output name="data" id="metodo_http_session"/>41 </ p :p r o c e s s o r>42
43 <!−− Método GET para obtener l a cookie de s e s i ó n −−>44 <p :p r o c e s s o r name="tmg:tm−http ">45 <p: input name=" con f i g " h r e f="#metodo_http_session"/>46 <p:output name="data" id=" cook i e "/>47 </ p :p r o c e s s o r>48
49 <!−− Procesador para generar e l config ne c e s a r i o para e l métodoHTTP que recuperará l a página con l o s r e s u l t ado s de l a búsqueda−−>
50 <p :p r o c e s s o r name=" o x f : x s l t ">51 <p: input name="data" h r e f="#in s tance "/>52 <p: input name=" con f i g ">53 <x s l : s t y l e s h e e t version=" 2 .0 ">54 <xs l : t emp l a t e match="/">55 <config>56 <method>post</method>57 <action>ht tp : //www. juntadeanda luc ia . e s /
se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ ofertasEmpleo / o f e r t a sPub l i c a s /l i s t ado_opo s i c i on e s . html</action>
194 Apéndice B. Ficheros desarrollados para la aplicación
58 <cookies>yes</cookies>59 <cookie>60 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t=" subst r ing
−be f o r e ( doc ( ' i nput : cook i e ' ) / s e s s i o n /j s e s s i o n i d , ' ; ' ) "/>
61 <xs l : v a l u e−o f s e l e c t=" concat ( ' JSESSIONID= ' ,$j s e s s i o n i d ) "/>
62 </cookie>63 <parameters>64 <parameter name=" opDescr ipc ion " value=""/>65 <parameter name="opSubambito">66 <x s l : a t t r i b u t e name="value ">67 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="/
submiss ion / prov inc i a "/>68 <xs l : v a l u e−o f s e l e c t="doc ( ' input :datos ' ) /
datos / p r ov i n c i a s / opt ion [ @value=$prov inc i a ] /@nombreBusq"/>
69 </ x s l : a t t r i b u t e>70 </parameter>71 <parameter name=" opTi tu l a c i one s ">72 <x s l : a t t r i b u t e name="value ">73 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="/
submiss ion / t i t u l a c i o n "/>74 <xs l : v a l u e−o f s e l e c t="doc ( ' input :datos ' ) /
datos / t i t u l a c i o n e s / opt ion [ @value=$t i t u l a c i o n ] /@nombreBusq"/>
75 </ x s l : a t t r i b u t e>76 </parameter>77 <parameter name="opTipo">78 <x s l : a t t r i b u t e name="value ">79 <x s l : v a r i a b l e name=" t ipo " s e l e c t="/
submiss ion / t ipoOpos i c i on "/>80 <xs l : v a l u e−o f s e l e c t="doc ( ' input :datos ' ) /
datos / t i p o s / opt ion [ @value=$t ipo ] /@nombreBusq"/>
81 </ x s l : a t t r i b u t e>82 </parameter>83 </parameters>84 <timeout>40</timeout>85 </config>86 </ xs l : t emp l a t e>87 </ x s l : s t y l e s h e e t>88 </p: input>89 <p: input name=" cook i e " h r e f="#cook i e "/>90 <p: input name="datos " h r e f="#ofertas_empleo_publico_datos "/>91 <p:output name="data" id="metodo_post"/>92 </ p :p r o c e s s o r>93
94 <!−− Método POST para obtener e l f i c h e r o HTML −−>95 <p :p r o c e s s o r name="tmg:tm−http ">96 <p: input name=" con f i g " h r e f="#metodo_post"/>97 <p:output name="data" id="web"/>98 </ p :p r o c e s s o r>99
100 <!−− Procesador para agregar a l o s datos de s a l i d a l a in formac iónde l a cookie ( j s e s s i o n i d ) −−>
101 <p :p r o c e s s o r name=" o x f : x s l t ">102 <p: input name=" con f i g ">103 <x s l : s t y l e s h e e t version=" 2 .0 ">104 <xs l : t emp l a t e match="@∗ | node ( ) ">105 <xs l : c opy>106 <xs l : app ly−templates s e l e c t="@∗ | node ( ) "/>107 </ xs l : c opy>108 </ xs l : t emp l a t e>
B.3. Directorio de gestión del canal de retorno 195
109
110 <xs l : t emp l a t e match="head">111 <j s e s s i o n i d>112 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e ( doc ( '
i nput : cook i e ' ) / s e s s i o n / j s e s s i o n i d , ' ; ' ) "/>113 </ j s e s s i o n i d>114 </ xs l : t emp l a t e>115 </ x s l : s t y l e s h e e t>116 </p: input>117 <p: input name="data" h r e f="#web"/>118 <p: input name=" cook i e " h r e f="#cook i e "/>119 <p:output name="data" id="page"/>120 </ p :p r o c e s s o r>121
122 </p:when>123
124 <!−− Si no es l a primera vez que se accede ( se ha hecho pag inac ión ) −−>
125 <p:o the rw i s e>126
127 <!−− Procesador para generar e l config ne c e s a r i o para e l métodoHTTP que recuperará l a página con l o s r e s u l t ado s de l a búsqueda−−>
128 <p :p r o c e s s o r name=" o x f : x s l t ">129 <p: input name=" con f i g ">130 <x s l : s t y l e s h e e t version=" 2 .0 ">131 <xs l : t emp l a t e match="/">132 <config>133 <method>get</method>134 <action>135 <x s l : v a r i a b l e name=" ur lba s e " s e l e c t=" ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ ofertasEmpleo /o f e r t a sPub l i c a s / l i s t ado_opo s i c i on e s . html ? ' "/>
136 <x s l : v a r i a b l e name=" t ipo " s e l e c t="/ submiss ion /t ipoOpos i c i on "/>
137 <x s l : v a r i a b l e name=" t ipo2 " s e l e c t="doc ( 'input :datos ' ) / datos / t i p o s / opt ion [ @value=$t ipo] / @nombreUrl"/>
138 <x s l : v a r i a b l e name="opTipo" s e l e c t=" concat ( 'opTipo= ' ,$ t ipo2 , '& ; ' ) "/>
139 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="/submiss ion / prov inc i a "/>
140 <x s l : v a r i a b l e name="prov2" s e l e c t="doc ( 'input :datos ' ) / datos / p r ov i n c i a s / opt ion [ @value=$prov inc i a ] / @nombreUrl"/>
141 <x s l : v a r i a b l e name="opSubambito" s e l e c t=" concat ( 'opSubambito= ' ,$ prov2 , '& ; ' ) "/>
142 <x s l : v a r i a b l e name=" u r l " s e l e c t=" concat ( ' d− ' ,/submiss ion / ur l , '−p= ' ,/ submiss ion /pag , '& ; ' )"/>
143 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="/submiss ion / t i t u l a c i o n "/>
144 <x s l : v a r i a b l e name=" t i t u 2 " s e l e c t="doc ( 'input :datos ' ) / datos / t i t u l a c i o n e s / opt ion [@value=$t i t u l a c i o n ] / @nombreUrl"/>
145 <x s l : v a r i a b l e name=" opTi tu l a c i one s " s e l e c t="concat ( ' opT i tu l a c i one s = ' ,$ t i tu2 , '& ; ' ) "/>
146 <x s l : v a r i a b l e name=" f i n u r l " s e l e c t=" ' T i t l e=Ofer tas+de+Empleo+P%C3%BAblico& ;opDescr ipc ion='"/>
147 <xs l : v a l u e−o f s e l e c t=" concat ($ ur lbase , $ opTipo , $opSubambito , $ ur l , $ opTi tu lac iones , $ f i n u r l ) "/>
148 </action>
196 Apéndice B. Ficheros desarrollados para la aplicación
149 <cookies>yes</cookies>150 <cookie>151 <xs l : v a l u e−o f s e l e c t=" concat ( ' JSESSIONID= ' ,/
submiss ion / j s e s s i o n i d ) "/>152 </cookie>153 <timeout>40</timeout>154 <content−type>text /html</content−type>155 <encoding>utf−8</encoding>156 </config>157 </ xs l : t emp l a t e>158 </ x s l : s t y l e s h e e t>159 </p: input>160 <p: input name="data" h r e f="#in s tance "/>161 <p: input name="datos " h r e f="#ofertas_empleo_publico_datos "/>162 <p:output name="data" id="metodo_get"/>163 </ p :p r o c e s s o r>164
165 <!−− Método GET para obtener e l f i c h e r o HTML −−>166 <p :p r o c e s s o r name="tmg:tm−http ">167 <p: input name=" con f i g " h r e f="#metodo_get"/>168 <p:output name="data" id="page"/>169 </ p :p r o c e s s o r>170
171 </ p :o the rw i s e>172
173 </p:choose>174
175 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>176 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">177 <p: input name=" con f i g ">178 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">179 <x s l : i f t e s t="doc ( ' input :dat−in s tance ' ) / submiss ion /primeraVez='S
' ">180 <j s e s s i o n i d>181 <xs l : v a l u e−o f s e l e c t="// j s e s s i o n i d "/>182 </ j s e s s i o n i d>183 </ x s l : i f>184
185 <o f e r t a s>186 <x s l : f o r −each s e l e c t="// tab l e [ @id='dataTable ' ] / tbody/ t r ">187 <o f e r t a>188 <nombre><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 1 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></nombre>189 <fecha><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 2 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ fecha>190 <convocante><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−
space ( . / td [ 3 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></convocante>191 <t ipo><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 4 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ t ipo>192 <plaza s><xs l : v a l u e−o f s e l e c t="normal ize−space ( . / td [ 5 ] ) "
/></ p laza s>
B.3. Directorio de gestión del canal de retorno 197
193 <idOfe r ta>194 <x s l : v a r i a b l e name=" idOf " s e l e c t=" subst r ing−a f t e r (
normal ize−space ( . / td [ 6 ] / a/@href ) , ' opCodigo= ')"/>195 <xs l : c h o o s e>196 <xsl :when t e s t=" conta in s ($ idOf , '& ; ' ) ">197 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e ($ idOf
, '& ; ' ) "/>198 </xs l :when>199 <x s l : o t h e rw i s e>200 <xs l : v a l u e−o f s e l e c t="$ idOf "/>201 </ x s l : o t h e rw i s e>202 </ x s l : c h o o s e>203 </ idOfe r ta>204 </ o f e r t a>205 </ x s l : f o r −each>206 </ o f e r t a s>207 <paginas>208 <x s l : v a r i a b l e name=" tota l_pag inas ">209 <x s l : v a r i a b l e name=" i rUlt ima " s e l e c t="// div [ @class='
paginacion ' ] / a [ l a s t ( ) ] / @href "/>210 <xs l : c h o o s e>211 <xsl :when t e s t="$ i rUl t ima != ' ' ">212 <x s l : v a r i a b l e name=" to t a l_p rov i s i ona l " s e l e c t="
subst r ing−be f o r e ( subst r ing−a f t e r ($ irUlt ima , '−p= ') , '& ; ' ) "/>
213 <xs l : c h o o s e>214 <xsl :when t e s t="$ t o t a l_p rov i s i ona l &l t ; doc ( '
input :dat−in s tance ' ) / submiss ion /pag">215 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance
' ) / submiss ion /pag"/>216 </xs l :when>217 <x s l : o t h e rw i s e>218 <xs l : v a l u e−o f s e l e c t="$ t o t a l_p rov i s i ona l "/>219 </ x s l : o t h e rw i s e>220 </ x s l : c h o o s e>221 </xs l :when>222 <x s l : o t h e rw i s e>223 <x s l : t e x t>1</ x s l : t e x t>224 </ x s l : o t h e rw i s e>225 </ x s l : c h o o s e>226 </ x s l : v a r i a b l e>227
228 <pagina>229 <x s l : a t t r i b u t e name=" ac tua l ">1</ x s l : a t t r i b u t e>230 <x s l : a t t r i b u t e name="numero">231 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance ' ) /
submiss ion /pag"/>232 </ x s l : a t t r i b u t e>233 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>234 <x s l : a t t r i b u t e name=" u r l "/>235 </pagina>236 <x s l : f o r −each s e l e c t="// div [ @class='paginacion ' ] / a">237 <x s l : i f t e s t=" subst r ing−a f t e r ( . / @t i t l e , ' g ina ' )=text ( ) ">238 <pagina>239 <x s l : a t t r i b u t e name=" ac tua l ">0</ x s l : a t t r i b u t e>240 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="
text ( ) "/></ x s l : a t t r i b u t e>241 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>242 <x s l : a t t r i b u t e name=" u r l "><xs l : v a l u e−o f s e l e c t="
subst r ing−be f o r e ( subst r ing−a f t e r ( . / @href , '& ; d− ') , '−p= ')"/></ x s l : a t t r i b u t e>
243 </pagina>
198 Apéndice B. Ficheros desarrollados para la aplicación
244 </ x s l : i f>245 </ x s l : f o r −each>246 </paginas>247 </ items>248 </p: input>249 <p: input name="data" h r e f="#page"/>250 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>251 <p:output name="data" id=" resu l tDesordenado "/>252 </ p :p r o c e s s o r>253
254 <!−− Procesador para ordenar l a s páginas −−>255 <p :p r o c e s s o r name=" o x f : x s l t ">256 <p: input name="data" h r e f="#resu l tDesordenado "/>257 <p: input name=" con f i g ">258 <x s l : s t y l e s h e e t version=" 2 .0 ">259 <xs l : t emp l a t e match=" items ">260 <items>261 <x s l : i f t e s t="doc ( ' input :dat−in s tance ' ) / submiss ion /
primeraVez='S ' ">262 <j s e s s i o n i d>263 <xs l : v a l u e−o f s e l e c t="// j s e s s i o n i d "/>264 </ j s e s s i o n i d>265 </ x s l : i f>266 <o f e r t a s>267 <xs l : app ly−templates s e l e c t=" o f e r t a s / o f e r t a "/>268 </ o f e r t a s>269 <paginas>270 <xs l : app ly−templates s e l e c t="paginas /pagina ">271 <x s l : s o r t s e l e c t="@numero" data−type="number" order=
" ascending "/>272 </ xs l : app ly−templates>273 </paginas>274 </ items>275 </ xs l : t emp l a t e>276
277 <xs l : t emp l a t e match=" o f e r t a s / o f e r t a ">278 <o f e r t a>279 <nombre><xs l : v a l u e−o f s e l e c t="nombre"/></nombre>280 <fecha><xs l : v a l u e−o f s e l e c t=" fecha "/></ fecha>281 <convocante><xs l : v a l u e−o f s e l e c t=" convocante "/></
convocante>282 <t ipo><xs l : v a l u e−o f s e l e c t=" t ipo "/></ t ipo>283 <plaza s><xs l : v a l u e−o f s e l e c t=" p laza s "/></ p laza s>284 <idOfe r ta><xs l : v a l u e−o f s e l e c t=" idOfe r ta "/></ idOfe r ta>285 </ o f e r t a>286 </ xs l : t emp l a t e>287 <xs l : t emp l a t e match="paginas /pagina ">288 <pagina>289 <x s l : a t t r i b u t e name=" ac tua l "><xs l : v a l u e−o f s e l e c t="@actual
"/></ x s l : a t t r i b u t e>290 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="@numero
"/></ x s l : a t t r i b u t e>291 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="@total "/
></ x s l : a t t r i b u t e>292 <x s l : a t t r i b u t e name=" u r l "><xs l : v a l u e−o f s e l e c t="@url"/></
x s l : a t t r i b u t e>293 </pagina>294 </ xs l : t emp l a t e>295
296 </ x s l : s t y l e s h e e t>297 </p: input>298 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>299 <p:output name="data" id=" r e s u l t "/>300 </ p :p r o c e s s o r>
B.3. Directorio de gestión del canal de retorno 199
301
302 <!−− Generación de l f i c h e r o XML −−>303 <p :p r o c e s s o r name=" o x f : x s l t ">304 <p: input name=" con f i g " h r e f=" ofertas_empleo_publ ico . x s l "/>305 <p: input name="data" h r e f="#r e s u l t "/>306 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>307 <p: input name=" s e r v e r " h r e f="#se rv e r "/>308 <p:output name="data" id=" l i s t "/>309 </ p :p r o c e s s o r>310
311 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>312 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">313 <p: input name=" con f i g ">314 <config>315 <content−type>app l i c a t i on /xml</content−type>316 <encoding>utf−8</encoding>317 <version>1.0</version>318 </config>319 </p: input>320 <p: input name="data" h r e f="#l i s t "/>321 </ p :p r o c e s s o r>322
323 </ p : c o n f i g>
ofertas_empleo_publico.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_on . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>19 </container>20
21 <!−− Contenedor de l menú ho r i z on t a l ( pag inac ión ) −−>22 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="
215" posx="30" v i s="1">23 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25
" itemx="36" itemy="25" sepx="5" sepy="0" s t y l e="s_menuhorCentrado">
200 Apéndice B. Ficheros desarrollados para la aplicación
24 <x s l : v a r i a b l e name=" total_pag" s e l e c t="/ items / paginas /pagina[ 1 ] / @total "/>
25 <x s l : v a r i a b l e name="primera_pag" s e l e c t="/ items / paginas /pagina [ 1 ] / @numero"/>
26 <x s l : v a r i a b l e name="ultima_pag" s e l e c t="/ items / paginas /pagina[ l a s t ( ) ] /@numero"/>
27 <x s l : v a r i a b l e name="num_pag">28 <xs l : c h o o s e>29 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
primeraVez='S ' ">1</xs l :when>30 <x s l : o t h e rw i s e>31 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion /pag"/>32 </ x s l : o t h e rw i s e>33 </ x s l : c h o o s e>34 </ x s l : v a r i a b l e>35
36 <xs l : c h o o s e>37 <xsl :when t e s t="$primera_pag= '1 '">38 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − 1) "/></ x s l : a t t r i b u t e>39 </xs l :when>40 <x s l : o t h e rw i s e>41 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − $primera_pag + 1) "/></x s l : a t t r i b u t e>
42 <menuitem img=" images /bot_matrix_off . png" imgfocus="images /bot_matrix_on . png" s t r="<<"/>
43 </ x s l : o t h e rw i s e>44 </ x s l : c h o o s e>45
46 <xs l :app ly− t emplate s s e l e c t="paginas /pagina "/>47
48 <x s l : i f t e s t="$ultima_pag != $ total_pag and $ultima_pag !='1 ' ">
49 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images/bot_matrix_on . png" s t r=">>"/>
50 </ x s l : i f>51 </menu>52 </container>53
54 <!−− Contenedor de l menú v e r t i c a l ( l i s t a d o de o f e r t a s ) −−>55 <container id="c_menu" alpha="255" s i z e y="300" s i z e x="510" posy="
250" posx="30" v i s="1">56 <xs l : c h o o s e>57 <xsl :when t e s t="count (// o f e r t a ) !=0">58 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="510" s i z e y=
"275" itemx="510" itemy="25" sepx="0" sepy="0" s t y l e="s_menuverEmpresas">
59 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >60 <action key="OK">61 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>62 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>63 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>64 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t i t u l a c i o n "/>65 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on"/>
66 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
B.3. Directorio de gestión del canal de retorno 201
67 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /primeraVez"/>
68 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / u r l "/>
69 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / j s e s s i o n i d "/>
70
71 <x s l : a t t r i b u t e name=" act ">72 <x s l : v a r i a b l e name="comun" s e l e c t=" ' hidepage
(∗ ) , showpage ( ofertas_empleo_publ ico ) ' "/>73 <xs l : v a l u e−o f s e l e c t="$comun"/>74 </ x s l : a t t r i b u t e>75
76 <x s l : a t t r i b u t e name="actback ">77 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a = ' ,$prov inc ia , '& ; t i t u l a c i o n = ' ,$ t i t u l a c i o n, '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$primeraVez , '& ; u r l = ' ,$ ur l , '& ;j s e s s i o n i d = ' ,$ j s e s s i o n i d , ' ) ' ) "/>
78 </ x s l : a t t r i b u t e>79
80 </action>81 </menuitem>82
83 <xs l :app ly− t emplate s s e l e c t=" o f e r t a s / o f e r t a "/>84
85 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >86 <action key="OK">87 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>88 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>89 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>90 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t i t u l a c i o n "/>91 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on"/>
92 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
93 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /primeraVez"/>
94 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / u r l "/>
95 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / j s e s s i o n i d "/>
96
97 <x s l : a t t r i b u t e name=" act ">98 <x s l : v a r i a b l e name="comun" s e l e c t=" ' hidepage
(∗ ) , showpage ( ofertas_empleo_publ ico ) ' "/>99 <xs l : v a l u e−o f s e l e c t="$comun"/>
100 </ x s l : a t t r i b u t e>101
102 <x s l : a t t r i b u t e name="actback ">103 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a = ' ,$prov inc ia , '& ; t i t u l a c i o n = ' ,$ t i t u l a c i o n
202 Apéndice B. Ficheros desarrollados para la aplicación
, '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$primeraVez , '& ; u r l = ' ,$ ur l , '& ;j s e s s i o n i d = ' ,$ j s e s s i o n i d , ' ) ' ) "/>
104 </ x s l : a t t r i b u t e>105
106 </action>107 </menuitem>108
109 </menu>110 </xs l :when>111 <x s l : o t h e rw i s e>112 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="510" s i z e y
="90" s c r o l l="0">No se ha encontrado ninguna o f e r t a deempleo púb l i co con l o s parámetros de búsquedas e l e c c i onado s . Pulse "OK" para r e a l i z a r una nuevabúsqueda .</text>
113 <menu type=" v e r t i c a l " posx="0" posy="115" s i z e x="510"s i z e y="27" itemx="510" itemy="27" sepx="0" sepy="0"s t y l e="s_menuverCursos">
114 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >115 <action key="OK">116 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>117 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>118 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>119 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t i t u l a c i o n "/>120 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on"/>
121 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
122 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /primeraVez"/>
123 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / u r l "/>
124 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / j s e s s i o n i d "/>
125
126 <x s l : a t t r i b u t e name=" act ">127 <x s l : v a r i a b l e name="comun" s e l e c t=" ' hidepage
(∗ ) , showpage ( ofertas_empleo_publ ico ) ' "/>128 <xs l : v a l u e−o f s e l e c t="$comun"/>129 </ x s l : a t t r i b u t e>130
131 <x s l : a t t r i b u t e name="actback ">132 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a = ' ,$prov inc ia , '& ; t i t u l a c i o n = ' ,$ t i t u l a c i o n, '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$primeraVez , '& ; u r l = ' ,$ ur l , '& ;j s e s s i o n i d = ' ,$ j s e s s i o n i d , ' ) ' ) "/>
133 </ x s l : a t t r i b u t e>134
135 </action>136 </menuitem>137 </menu>138 </ x s l : o t h e rw i s e>
B.3. Directorio de gestión del canal de retorno 203
139 </ x s l : c h o o s e>140 </container>141 </page>142 </ xs l : t emp l a t e>143
144 <xs l : t emp l a t e match="paginas /pagina ">145 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">146 <x s l : a t t r i b u t e name=" s t r "><xs l : v a l u e−o f s e l e c t="@numero"/></
x s l : a t t r i b u t e>147 <x s l : i f t e s t="@actual= '0 ' ">148 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>149 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>150 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / p rov inc i a "/>151 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion / t i t u l a c i o n "/>152 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on "/>153 <x s l : v a r i a b l e name=" j s e s s i o n i d ">154 <xs l : c h o o s e>155 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
primeraVez='S ' ">156 <xs l : v a l u e−o f s e l e c t="// j s e s s i o n i d "/>157 </xs l :when>158 <x s l : o t h e rw i s e>159 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / j s e s s i o n i d "/>160 </ x s l : o t h e rw i s e>161 </ x s l : c h o o s e>162 </ x s l : v a r i a b l e>163 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a = ' ,$ prov inc ia , '& ;t i t u l a c i o n = ' ,$ t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$t ipoOpos ic ion , '& ; pag= ' ,@numero , '& ; primeraVez=N& ; u r l= ' ,@url , '& ; j s e s s i o n i d = ' ,$ j s e s s i o n i d , ' ) ' ) "/>
164 <x s l : a t t r i b u t e name="onover ">165 <xs l : v a l u e−o f s e l e c t="$comun"/>166 </ x s l : a t t r i b u t e>167 </ x s l : i f>168 </menuitem>169 </ xs l : t emp l a t e>170
171 <xs l : t emp l a t e match=" o f e r t a s / o f e r t a ">172 <menuitem>173 <x s l : a t t r i b u t e name=" s t r ">174 <xs l : v a l u e−o f s e l e c t=" concat ( nombre , ' . F . i n s t a n c i a : ' , fecha , ' .
Convocante: ' , convocante , ' . Tipo: ' , t ipo , ' . N. p l a z a s : ' ,p l a za s ) "/>
175 </ x s l : a t t r i b u t e>176
177 <action key="OK">178 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>179 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>180 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / p rov inc i a "/>181 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion / t i t u l a c i o n "/>
204 Apéndice B. Ficheros desarrollados para la aplicación
182 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on "/>
183 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( ' input :dat− ins tance ' ) /submiss ion /pag"/>
184 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( ' input :dat− ins tance' ) / submiss ion /primeraVez"/>
185 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( ' input :dat− ins tance ' ) /submiss ion / u r l "/>
186 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( ' input :dat− ins tance' ) / submiss ion / j s e s s i o n i d "/>
187 <x s l : v a r i a b l e name=" idOfe r ta " s e l e c t=" idOfe r ta "/>188
189 <x s l : a t t r i b u t e name=" act ">190 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage ( h t tp : // ' ,$
servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /ofertas_empleo_publ ico_deta l l e ? p rov inc i a = ' ,$ prov inc ia , '& ; t i t u l a c i o n = ' ,$ t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$primeraVez , '& ; u r l = ' ,$ ur l , '& ; j s e s s i o n i d = ' ,$j s e s s i o n i d , '& ; idOfe r ta = ' ,$ idOferta , ' ) ' ) "/>
191 </ x s l : a t t r i b u t e>192 <x s l : a t t r i b u t e name="actback ">193 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage ( h t tp : // ' ,$
servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /ofertas_empleo_publ ico ? p rov inc i a = ' ,$ prov inc ia , '& ;t i t u l a c i o n = ' ,$ t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$primeraVez , '& ; u r l = ' ,$ ur l , '& ; j s e s s i o n i d = ' ,$j s e s s i o n i d , ' ) ' ) "/>
194 </ x s l : a t t r i b u t e>195 </action>196
197 </menuitem>198 </ xs l : t emp l a t e>199
200 </ x s l : s t y l e s h e e t>
ofertas_empleo_publico_detalle.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">
B.3. Directorio de gestión del canal de retorno 205
20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <action>25 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ ofertasEmpleo /o f e r t a sPub l i c a s / de t a l l e_opo s i c i on . html?opCodigo= ' ,/submiss ion / idOferta , '& ; t i c k e t=nocas ' ) "/>
26 </action>27 <cookies>yes</cookies>28 <timeout>40</timeout>29 <content−type>text /html</content−type>30 <encoding>utf−8</encoding>31 </config>32 </ xs l : t emp l a t e>33 </ x s l : s t y l e s h e e t>34 </p: input>35 <p:output name="data" id="metodo_http"/>36 </ p :p r o c e s s o r>37
38 <!−− Método GET (HTTP) −−>39 <p :p r o c e s s o r name="tmg:tm−http ">40 <p: input name=" con f i g " h r e f="#metodo_http"/>41 <p:output name="data" id="page"/>42 </ p :p r o c e s s o r>43
44 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>45 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">46 <p: input name=" con f i g ">47 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">48
49 <t i t u l o>50 <x s l : f o r −each s e l e c t="//h4">51 <x s l : i f t e s t=" po s i t i o n ( )=1">52 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t ex t ( ) ) "/>53 </ x s l : i f>54 </ x s l : f o r −each>55 </ t i t u l o>56
57 <tab la>58 <x s l : f o r −each s e l e c t="// f i e l d s e t [ @class=' formular io ' ] / div "
>59 <l i n e a>60 <x s l : f o r −each s e l e c t=" l a b e l ">61 <elemento>62 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t ex t ( ) ) "
/>63 </elemento>64 </ x s l : f o r −each>65 </ l i n e a>66 </ x s l : f o r −each>67 </ tab la>68
69 </ items>70 </p: input>71 <p: input name="data" h r e f="#page"/>72 <p:output name="data" id=" r e s u l t "/>73 </ p :p r o c e s s o r>74
75 <!−− Generación de l f i c h e r o XML −−>76 <p :p r o c e s s o r name=" o x f : x s l t ">
206 Apéndice B. Ficheros desarrollados para la aplicación
77 <p: input name=" con f i g " h r e f=" ofertas_empleo_publ ico_deta l l e . x s l "/>78 <p: input name="data" h r e f="#r e s u l t "/>79 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>80 <p: input name=" s e r v e r " h r e f="#se rv e r "/>81 <p:output name="data" id=" l i s t "/>82 </ p :p r o c e s s o r>83
84 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>85 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">86 <p: input name=" con f i g ">87 <config>88 <content−type>app l i c a t i on /xml</content−type>89 <encoding>utf−8</encoding>90 <version>1.0</version>91 </config>92 </p: input>93 <p: input name="data" h r e f="#l i s t "/>94 </ p :p r o c e s s o r>95
96 </ p : c o n f i g>
ofertas_empleo_publico_detalle.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_on . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>14 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>18 </container>19
20 <!−− Contenedor de l t í t u l o −−>21 <container id=" c_texto_ti tu lo " v i s="1" alpha="0" posx="30" posy="
214" s i z e x="520" s i z e y="30">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0"><xs l : v a l u e−o f s e l e c t=" t i t u l o "/></text>23 </container>24
25 <!−− Contenedor de l a tab la −−>26 <container id="c_tabla " v i s="1" alpha="0" posx="30" posy="239"
s i z e x="520" s i z e y="315">
B.3. Directorio de gestión del canal de retorno 207
27 <table s t y l e 1="s_tabla_impares " s t y l e 0=" s_tabla_pares " c e l l x="250" c e l l y="35" s i z e x="520" s i z e y="315" posx="0" posy="0">
28 <xs l :app ly− t emplate s s e l e c t=" tab la / l i n e a "/>29 </table>30 </container>31
32
33 <!−− Contenedor de l menú −−>34 <container id="c_menu" v i s="1" alpha="0" posx="545" posy="415"
s i z e x="118" s i z e y="100">35 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="118" s i z e y="100"
itemx="118" itemy="40" sepx="0" sepy="10" s t y l e="s_menuhor">36 <menuitem s t r="Volver " >37 <action key="OK">38 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>39 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>40 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>41 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t i t u l a c i o n "/>42 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on "/>43 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>44 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /primeraVez"/>45 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / u r l "/>46 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / j s e s s i o n i d "/>47 <x s l : v a r i a b l e name=" idOfe r ta " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idOfe r ta "/>48
49 <x s l : a t t r i b u t e name=" act ">50 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / ofertas_empleo_publ ico ? p rov inc i a= ' ,$ prov inc ia , '& ; t i t u l a c i o n = ' ,$ t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion , '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$ primeraVez , '& ; u r l = ' ,$ur l , '& ; j s e s s i o n i d = ' ,$ j s e s s i o n i d , ' ) ' ) "/>
51 </ x s l : a t t r i b u t e>52
53 <x s l : a t t r i b u t e name="actback ">54 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / ofertas_empleo_publ ico_deta l l e ?p rov inc i a = ' ,$ prov inc ia , '& ; t i t u l a c i o n = ' ,$t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion, '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$ primeraVez, '& ; u r l = ' ,$ ur l , '& ; j s e s s i o n i d = ' ,$ j s e s s i o n i d, '& ; idOfe r ta = ' ,$ idOferta , ' ) ' ) "/>
55 </ x s l : a t t r i b u t e>56 </action>57 </menuitem>58
59 <menuitem s t r="Nueva búsqueda" >60 <action key="OK">61 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>62 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>
208 Apéndice B. Ficheros desarrollados para la aplicación
63 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
64 <x s l : v a r i a b l e name=" t i t u l a c i o n " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t i t u l a c i o n "/>
65 <x s l : v a r i a b l e name=" t ipoOpos i c i on " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t ipoOpos i c i on "/>
66 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
67 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /primeraVez"/>
68 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / u r l "/>
69 <x s l : v a r i a b l e name=" j s e s s i o n i d " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / j s e s s i o n i d "/>
70 <x s l : v a r i a b l e name=" idOfe r ta " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / idOfe r ta "/>
71
72 <x s l : a t t r i b u t e name=" act ">73 <x s l : t e x t>hidepage (∗ ) , showpage (
ofertas_empleo_publ ico )</ x s l : t e x t>74 </ x s l : a t t r i b u t e>75
76 <x s l : a t t r i b u t e name="actback ">77 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / ofertas_empleo_publ ico_deta l l e ?p rov inc i a = ' ,$ prov inc ia , '& ; t i t u l a c i o n = ' ,$t i t u l a c i o n , '& ; t ipoOpos i c i on = ' ,$ t ipoOpos ic ion, '& ; pag= ' ,$pag , '& ; primeraVez= ' ,$ primeraVez, '& ; u r l = ' ,$ ur l , '& ; j s e s s i o n i d = ' ,$ j s e s s i o n i d, '& ; idOfe r ta = ' ,$ idOferta , ' ) ' ) "/>
78 </ x s l : a t t r i b u t e>79 </action>80 </menuitem>81
82 </menu>83 </container>84 </page>85 </ xs l : t emp l a t e>86
87 <xs l : t emp l a t e match=" tab la / l i n e a ">88 <tr>89 <xs l : f o r− ea ch s e l e c t=" elemento ">90 <td>91 <xs l : v a l u e−o f s e l e c t=" . "/>92 </td>93 </ xs l : f o r− ea ch>94 </ tr>95 </ xs l : t emp l a t e>96
97 </ x s l : s t y l e s h e e t>
B.3.3. Empresas andaluzas que ofrecen empleo
empresas_formulario.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
B.3. Directorio de gestión del canal de retorno 209
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <cookies>yes</cookies>25 <action>ht tp : //www. juntadeanda luc ia . e s /
se rv i c i oanda luzdeempleo /web/websae/ i n i c i a l i z aBu squeda .do</action>
26 <timeout>40</timeout>27 <content−type>text /html</content−type>28 <encoding>utf−8</encoding>29 </config>30 </ xs l : t emp l a t e>31 </ x s l : s t y l e s h e e t>32 </p: input>33 <p:output name="data" id="metodo_http"/>34 </ p :p r o c e s s o r>35
36 <!−− Método GET (HTTP) −−>37 <p :p r o c e s s o r name="tmg:tm−http ">38 <p: input name=" con f i g " h r e f="#metodo_http"/>39 <p:output name="data" id="page"/>40 </ p :p r o c e s s o r>41
42 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>43 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">44 <p: input name=" con f i g ">45 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">46 <url>47 <xs l : v a l u e−o f s e l e c t=" subst r ing−a f t e r (// form [@name='
busquedaForm ' ] / @action , ' j s e s s i o n i d = ')"/>48 </url>49 <prov i n c i a s>50 <x s l : f o r −each s e l e c t="// s e l e c t [ @id=' ubicac ion ' ] / opt ion ">51 <prov inc i a>52 <nombre>53 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t ex t ( ) ) "/>54 </nombre>55 <va lo r>56 <xs l : v a l u e−o f s e l e c t="@value"/>57 </ va lo r>58 </ prov inc i a>59 </ x s l : f o r −each>60 </ prov i n c i a s>61 <s e c t o r e s>
210 Apéndice B. Ficheros desarrollados para la aplicación
62 <x s l : f o r −each s e l e c t="// s e l e c t [ @id=' sec to r ' ] / opt ion ">63 <x s l : i f t e s t=" po s i t i o n ( ) !=1">64 <se c t o r>65 <nombre>66 <xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space (
t ex t ( ) ) , ' , ' , ' ' ) "/>67 </nombre>68 <va lo r>69 <xs l : v a l u e−o f s e l e c t=" . / @value"/>70 </ va lo r>71 </ s e c t o r>72 </ x s l : i f>73 </ x s l : f o r −each>74 </ s e c t o r e s>75 </ items>76 </p: input>77 <p: input name="data" h r e f="#page"/>78 <p:output name="data" id=" resu l tDesordenado "/>79 </ p :p r o c e s s o r>80
81 <!−− Procesador para ordenar l o s s e c t o r e s −−>82 <p :p r o c e s s o r name=" o x f : x s l t ">83 <p: input name="data" h r e f="#resu l tDesordenado "/>84 <p: input name=" con f i g ">85 <x s l : s t y l e s h e e t version=" 2 .0 ">86 <xs l : t emp l a t e match=" items ">87 <items>88 <url>89 <xs l : v a l u e−o f s e l e c t=" u r l "/>90 </url>91 <prov i n c i a s>92 <xs l : app ly−templates s e l e c t=" p rov i n c i a s / p rov inc i a "/>93 </ prov i n c i a s>94 <s e c t o r e s>95 <se c t o r>96 <nombre>−−Todos−−</nombre>97 <va lo r></ va lo r>98 </ s e c t o r>99 <xs l : app ly−templates s e l e c t=" s e c t o r e s / s e c t o r ">
100 <x s l : s o r t s e l e c t="nombre" order=" ascending "/>101 </ xs l : app ly−templates>102 </ s e c t o r e s>103 </ items>104 </ xs l : t emp l a t e>105
106 <xs l : t emp l a t e match=" p rov i n c i a s / p rov inc i a ">107 <prov inc i a>108 <nombre>109 <xs l : v a l u e−o f s e l e c t="nombre"/>110 </nombre>111 <va lo r>112 <xs l : v a l u e−o f s e l e c t=" va lo r "/>113 </ va lo r>114 </ prov inc i a>115 </ xs l : t emp l a t e>116 <xs l : t emp l a t e match=" s e c t o r e s / s e c t o r ">117 <se c t o r>118 <nombre>119 <xs l : v a l u e−o f s e l e c t="nombre"/>120 </nombre>121 <va lo r>122 <xs l : v a l u e−o f s e l e c t=" va lo r "/>123 </ va lo r>124 </ s e c t o r>
B.3. Directorio de gestión del canal de retorno 211
125 </ xs l : t emp l a t e>126
127 </ x s l : s t y l e s h e e t>128 </p: input>129 <p:output name="data" id=" r e s u l t "/>130 </ p :p r o c e s s o r>131
132 <!−− Generación de l f i c h e r o XML −−>133 <p :p r o c e s s o r name=" o x f : x s l t ">134 <p: input name=" con f i g " h r e f=" empresas_formular io . x s l "/>135 <p: input name="data" h r e f="#r e s u l t "/>136 <p: input name=" s e r v e r " h r e f="#se rv e r "/>137 <p:output name="data" id=" l i s t "/>138 </ p :p r o c e s s o r>139
140 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>141 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">142 <p: input name=" con f i g ">143 <config>144 <content−type>app l i c a t i on /xml</content−type>145 <encoding>utf−8</encoding>146 <version>1.0</version>147 </config>148 </p: input>149 <p: input name="data" h r e f="#l i s t "/>150 </ p :p r o c e s s o r>151
152 </ p : c o n f i g>
empresas_formulario.xsl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_on . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>19 </container>20
21 <!−− Contenedor de l t exto de bienvenida −−>
212 Apéndice B. Ficheros desarrollados para la aplicación
22 <container id="c_bienv" v i s="1" posx="30" posy="223" s i z e x="520"s i z e y="90" alpha="0">
23 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"s c r o l l="0">Empresas andaluzas</text>
24 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="520" s i z e y="65"s c r o l l="0">En e s t e menú , podrá acceder a un buscador deempresas . E l i j a l o s v a l o r e s que desee en e l f o rmu la r i o ypu l s e "OK" sobre e l botón "Buscar" .</text>
25 </container>26
27 <!−− Contenedor de l f o rmu la r i o de búsqueda −−>28 <container id="c_form" v i s="1" posx="30" posy="325" s i z e x="520"
s i z e y="170" alpha="0">29
30 <form f o cu s=" f_prov inc ia " posx="0" posy="0" s i z e x="520" s i z e y="170" s t y l e="s_menu_form">
31
32 <text s t r="Prov inc ia " posx="0" posy="0" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
33 <form_list id=" f_prov inc ia " va l="0000" type="harrows" posx="175" posy="0" s i z e x="150" s i z e y="25" down=" f_sec to r " up="f_buscar ">
34 <x s l : a t t r i b u t e name=" opt ions ">35 <xs l : f o r− ea ch s e l e c t=" p rov i n c i a s / p rov inc i a ">36 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>37 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">38 <x s l : t e x t> ,</ x s l : t e x t>39 </ x s l : i f>40 </ xs l : f o r− ea ch>41 </ x s l : a t t r i b u t e>42 <x s l : a t t r i b u t e name=" opt ions_texts ">43 <xs l : f o r− ea ch s e l e c t=" p rov i n c i a s / p rov inc i a ">44 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>45 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">46 <x s l : t e x t> ,</ x s l : t e x t>47 </ x s l : i f>48 </ xs l : f o r− ea ch>49 </ x s l : a t t r i b u t e>50 </ form_list>51
52 <text s t r=" Sector " posx="0" posy="40" s i z e x="155" s i z e y="25"s t y l e="s_body_form"></text>
53 <form_list id=" f_sec to r " va l="0000" type="harrows" posx="175"posy="40" s i z e x="330" s i z e y="25" down=" f_buscar " up="f_prov inc ia ">
54 <x s l : a t t r i b u t e name=" opt ions ">55 <xs l : f o r− ea ch s e l e c t=" s e c t o r e s / s e c t o r ">56 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>57 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">58 <x s l : t e x t> ,</ x s l : t e x t>59 </ x s l : i f>60 </ xs l : f o r− ea ch>61 </ x s l : a t t r i b u t e>62 <x s l : a t t r i b u t e name=" opt ions_texts ">63 <xs l : f o r− ea ch s e l e c t=" s e c t o r e s / s e c t o r ">64 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>65 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">66 <x s l : t e x t> ,</ x s l : t e x t>67 </ x s l : i f>68 </ xs l : f o r− ea ch>69 </ x s l : a t t r i b u t e>70 </ form_list>71
B.3. Directorio de gestión del canal de retorno 213
72 <form_imgbutton id=" f_buscar " img=" images /bot_buscar_off . png"imgfocus=" images /bot_buscar_on . png"
73 posx="170" posy="90" s i z e x="122" s i z e y="79" up=" f_sec to r "down=" f_prov inc ia " r i g h t=" f_volver " va l i d a t i o n=" f a l s e ">
74 <action key="OK">75 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>76 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>77 <x s l : a t t r i b u t e name=" act ">78 <x s l : v a r i a b l e name=" u r l " s e l e c t=" u r l "/>79 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas ? p rov inc i a=$f_prov inc ia ;& ; s e c t o r=$f_sec to r ;& ; u r l = ' ,$ur l , '& ; primeraVez=S& ; ur lF in=& ; pag=1) ' ) "/>
80 <xs l : v a l u e−o f s e l e c t="$comun"/>81 </ x s l : a t t r i b u t e>82 <x s l : a t t r i b u t e name="actback ">83 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas_formular io ) ' ) "/>
84 <xs l : v a l u e−o f s e l e c t="$comun"/>85 </ x s l : a t t r i b u t e>86 </action>87 </form_imgbutton>88
89 <form_imgbutton id=" f_volver " img=" images / bot_volver_off . png"imgfocus=" images /bot_volver_on . png"
90 posx="300" posy="90" s i z e x="122" s i z e y="79" up=" f_sec to r "down=" f_prov inc ia " l e f t=" f_buscar " va l i d a t i o n=" f a l s e ">
91 <action key="OK">92 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>93 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>94 <x s l : a t t r i b u t e name=" act ">95 <x s l : v a r i a b l e name="comun" s e l e c t=" ' hidepage (∗ ) ,
showpage ( index ) ' "/>96 <xs l : v a l u e−o f s e l e c t="$comun"/>97 </ x s l : a t t r i b u t e>98 <x s l : a t t r i b u t e name="actback ">99 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas_formular io ) ' ) "/>
100 <xs l : v a l u e−o f s e l e c t="$comun"/>101 </ x s l : a t t r i b u t e>102 </action>103 </form_imgbutton>104
105 </form>106 </container>107
108 </page>109
110 </ xs l : t emp l a t e>111
112 </ x s l : s t y l e s h e e t>
empresas.xpl
214 Apéndice B. Ficheros desarrollados para la aplicación
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <xs l : c h o o s e>24 <xsl :when t e s t="/ submiss ion /primeraVez='S ' ">25 <method>post</method>26 <action>27 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ i n i c i a l i z aBusqueda . do ; j s e s s i o n i d= ' ,/ submiss ion / u r l ) "/>
28 </action>29 <parameters>30 <parameter name=" r a z on s o c i a l " va lue=""/>31 <parameter name=" ub icac ion ">32 <x s l : a t t r i b u t e name="value ">33 <xs l : v a l u e−o f s e l e c t="/ submiss ion / p rov inc i a
"/>34 </ x s l : a t t r i b u t e>35 </parameter>36 <parameter name=" s e c t o r ">37 <x s l : a t t r i b u t e name="value ">38 <xs l : v a l u e−o f s e l e c t="/ submiss ion / s e c t o r "/>39 </ x s l : a t t r i b u t e>40 </parameter>41 </parameters>42 </xs l :when>43 <x s l : o t h e rw i s e>44 <method>url−http</method>45 <action>46 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ i n i c i a l i z aBusqueda . do ; j s e s s i o n i d= ' ,/ submiss ion / ur l , ' ? ' , / submiss ion / ur lFin , '−p= ' ,/ submiss ion /pag ) "/>
47 </action>48 <content−type>text /html</content−type>49 <encoding>utf−8</encoding>50 </ x s l : o t h e rw i s e>51 </ x s l : c h o o s e>52 <cookies>yes</cookies>
B.3. Directorio de gestión del canal de retorno 215
53 <timeout>40</timeout>54 </config>55 </ xs l : t emp l a t e>56 </ x s l : s t y l e s h e e t>57 </p: input>58 <p:output name="data" id="metodo_http"/>59 </ p :p r o c e s s o r>60
61 <!−− Método POST o GET (HTTP) −−>62 <p :p r o c e s s o r name="tmg:tm−http ">63 <p: input name=" con f i g " h r e f="#metodo_http"/>64 <p:output name="data" id="page"/>65 </ p :p r o c e s s o r>66
67 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>68 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">69 <p: input name=" con f i g ">70 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">71 <empresas>72 <x s l : f o r −each s e l e c t="// tab l e [ @id='dataTable ' ] / tbody/ t r ">73 <empresa>74 <nombre><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 1 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></nombre>75 <se c t o r><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space
( . / td [ 2 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ s e c t o r>76 <prov inc i a><xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−
space ( . / td [ 3 ] ),'¡©­³º±‰“š‘¼ÂÃ' , ' áéíóúñÁÉÍÓÚÑü ' ) "
/></ prov inc i a>77 <idEmpresa><xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e (
subst r ing−a f t e r ( normal ize−space ( . / td [ 4 ] / a/@href ) , 'idEmpresa= ') , '& ; idProv inc ia ' ) "/></idEmpresa>
78 <idProv inc i a>79 <x s l : v a r i a b l e name=" idProv" s e l e c t=" subst r ing−a f t e r (
normal ize−space ( . / td [ 4 ] / a/@href ) , ' i dProv inc i a = ')"/>
80 <xs l : c h o o s e>81 <xsl :when t e s t=" conta in s ($ idProv , '−p= ')">82 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e ($ idProv
, '& ; ' ) "/>83 </xs l :when>84 <x s l : o t h e rw i s e>85 <xs l : v a l u e−o f s e l e c t="$ idProv"/>86 </ x s l : o t h e rw i s e>87 </ x s l : c h o o s e>88 </ idProv inc i a>89 </empresa>90 </ x s l : f o r −each>91 </empresas>92 <paginas>93 <x s l : v a r i a b l e name=" tota l_pag inas ">94 <x s l : v a r i a b l e name=" i rUlt ima " s e l e c t="// div [ @class='
paginacion ' ] / a [ l a s t ( ) ] / @href "/>95 <xs l : c h o o s e>96 <xsl :when t e s t="$ i rUl t ima != ' ' ">
216 Apéndice B. Ficheros desarrollados para la aplicación
97 <x s l : v a r i a b l e name=" to t a l_p rov i s i ona l " s e l e c t="subst r ing−a f t e r ($ irUlt ima , '−p= ')"/>
98 <xs l : c h o o s e>99 <xsl :when t e s t="$ t o t a l_p rov i s i ona l &l t ; doc ( '
input :dat−in s tance ' ) / submiss ion /pag">100 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance
' ) / submiss ion /pag"/>101 </xs l :when>102 <x s l : o t h e rw i s e>103 <xs l : v a l u e−o f s e l e c t="$ t o t a l_p rov i s i ona l "/>104 </ x s l : o t h e rw i s e>105 </ x s l : c h o o s e>106 </xs l :when>107 <x s l : o t h e rw i s e>108 <x s l : t e x t>1</ x s l : t e x t>109 </ x s l : o t h e rw i s e>110 </ x s l : c h o o s e>111 </ x s l : v a r i a b l e>112
113 <pagina>114 <x s l : a t t r i b u t e name=" ac tua l ">1</ x s l : a t t r i b u t e>115 <x s l : a t t r i b u t e name="numero">116 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat−in s tance ' ) /
submiss ion /pag"/>117 </ x s l : a t t r i b u t e>118 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>119 <x s l : a t t r i b u t e name=" j s e s s i o n i d "/>120 <x s l : a t t r i b u t e name=" f i n u r l "/>121 </pagina>122 <x s l : f o r −each s e l e c t="// div [ @class='paginacion ' ] / a">123 <x s l : i f t e s t=" subst r ing−a f t e r ( . / @t i t l e , ' g ina ' )=text ( ) ">124 <pagina>125 <x s l : a t t r i b u t e name=" ac tua l ">0</ x s l : a t t r i b u t e>126 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="
text ( ) "/></ x s l : a t t r i b u t e>127 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>128 <x s l : a t t r i b u t e name=" j s e s s i o n i d "><xs l : v a l u e−o f
s e l e c t=" subst r ing−be f o r e ( subst r ing−a f t e r ( . / @href, ' j s e s s i o n i d = ') , ' ? ' ) "/></ x s l : a t t r i b u t e>
129 <x s l : a t t r i b u t e name=" f i n u r l ">130 <xs l : c h o o s e>131 <xsl :when t e s t=" conta in s ( . / @href , ' r a z on so c i a l
' ) ">132 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e (
subst r ing−a f t e r ( . / @href , ' ? r a z on s o c i a l=& ; ' ) , '−p= ')"/>
133 </xs l :when>134 <x s l : o t h e rw i s e>135 <xs l : v a l u e−o f s e l e c t=" subst r ing−be f o r e (
subst r ing−a f t e r ( . / @href , ' ? ' ) , '−p= ')"/>136 </ x s l : o t h e rw i s e>137 </ x s l : c h o o s e>138 </ x s l : a t t r i b u t e>139 </pagina>140 </ x s l : i f>141 </ x s l : f o r −each>142 </paginas>143 </ items>144 </p: input>145 <p: input name="data" h r e f="#page"/>146 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>147 <p:output name="data" id=" resu l tDesordenado "/>
B.3. Directorio de gestión del canal de retorno 217
148 </ p :p r o c e s s o r>149
150 <!−− Procesador para ordenar l a s páginas −−>151 <p :p r o c e s s o r name=" o x f : x s l t ">152 <p: input name="data" h r e f="#resu l tDesordenado "/>153 <p: input name=" con f i g ">154 <x s l : s t y l e s h e e t version=" 2 .0 ">155 <xs l : t emp l a t e match=" items ">156 <items>157 <empresas>158 <xs l : app ly−templates s e l e c t="empresas /empresa"/>159 </empresas>160 <paginas>161 <xs l : app ly−templates s e l e c t="paginas /pagina ">162 <x s l : s o r t s e l e c t="@numero" data−type="number" order=
" ascending "/>163 </ xs l : app ly−templates>164 </paginas>165 </ items>166 </ xs l : t emp l a t e>167
168 <xs l : t emp l a t e match="empresas /empresa">169 <empresa>170 <nombre><xs l : v a l u e−o f s e l e c t="nombre"/></nombre>171 <se c t o r><xs l : v a l u e−o f s e l e c t=" s e c t o r "/></ s e c t o r>172 <prov inc i a><xs l : v a l u e−o f s e l e c t=" prov inc i a "/></ prov inc i a>173 <idEmpresa><xs l : v a l u e−o f s e l e c t=" idEmpresa"/></idEmpresa>174 <idProv inc i a><xs l : v a l u e−o f s e l e c t=" idProv inc i a "/></
idProv inc i a>175 </empresa>176 </ xs l : t emp l a t e>177 <xs l : t emp l a t e match="paginas /pagina ">178 <pagina>179 <x s l : a t t r i b u t e name=" ac tua l "><xs l : v a l u e−o f s e l e c t="@actual
"/></ x s l : a t t r i b u t e>180 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="@numero
"/></ x s l : a t t r i b u t e>181 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="@total "/
></ x s l : a t t r i b u t e>182 <x s l : a t t r i b u t e name=" j s e s s i o n i d "><xs l : v a l u e−o f s e l e c t="
@j s e s s i on i d "/></ x s l : a t t r i b u t e>183 <x s l : a t t r i b u t e name=" f i n u r l "><xs l : v a l u e−o f s e l e c t="@f inur l
"/></ x s l : a t t r i b u t e>184 </pagina>185 </ xs l : t emp l a t e>186
187 </ x s l : s t y l e s h e e t>188 </p: input>189 <p:output name="data" id=" r e s u l t "/>190 </ p :p r o c e s s o r>191
192 <!−− Generación de l f i c h e r o XML −−>193 <p :p r o c e s s o r name=" o x f : x s l t ">194 <p: input name=" con f i g " h r e f="empresas . x s l "/>195 <p: input name="data" h r e f="#r e s u l t "/>196 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>197 <p: input name=" s e r v e r " h r e f="#se rv e r "/>198 <p:output name="data" id=" l i s t "/>199 </ p :p r o c e s s o r>200
201 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>202 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">203 <p: input name=" con f i g ">204 <config>
218 Apéndice B. Ficheros desarrollados para la aplicación
205 <content−type>app l i c a t i on /xml</content−type>206 <encoding>utf−8</encoding>207 <version>1.0</version>208 </config>209 </p: input>210 <p: input name="data" h r e f="#l i s t "/>211 </ p :p r o c e s s o r>212
213 </ p : c o n f i g>
empresas.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_on . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>19 </container>20
21 <!−− Contenedor de l menú ho r i z on t a l ( pag inac ión ) −−>22 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="
215" posx="30" v i s="1">23 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25
" itemx="36" itemy="25" sepx="5" sepy="0" s t y l e="s_menuhorCentrado">
24 <x s l : v a r i a b l e name=" total_pag" s e l e c t="/ items / paginas /pagina[ 1 ] / @total "/>
25 <x s l : v a r i a b l e name="primera_pag" s e l e c t="/ items / paginas /pagina [ 1 ] / @numero"/>
26 <x s l : v a r i a b l e name="ultima_pag" s e l e c t="/ items / paginas /pagina[ l a s t ( ) ] /@numero"/>
27 <x s l : v a r i a b l e name="num_pag">28 <xs l : c h o o s e>29 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
primeraVez='S ' ">1</xs l :when>30 <x s l : o t h e rw i s e>31 <xs l : v a l u e−o f s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion /pag"/>32 </ x s l : o t h e rw i s e>33 </ x s l : c h o o s e>
B.3. Directorio de gestión del canal de retorno 219
34 </ x s l : v a r i a b l e>35
36 <xs l : c h o o s e>37 <xsl :when t e s t="$primera_pag= '1 '">38 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − 1) "/></ x s l : a t t r i b u t e>39 </xs l :when>40 <x s l : o t h e rw i s e>41 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − $primera_pag + 1) "/></x s l : a t t r i b u t e>
42 <menuitem img=" images /bot_matrix_off . png" imgfocus="images /bot_matrix_on . png" s t r="<<"/>
43 </ x s l : o t h e rw i s e>44 </ x s l : c h o o s e>45
46 <xs l :app ly− t emplate s s e l e c t="paginas /pagina "/>47
48 <x s l : i f t e s t="$ultima_pag != $ total_pag and $ultima_pag !='1 ' ">
49 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images/bot_matrix_on . png" s t r=">>"/>
50 </ x s l : i f>51 </menu>52 </container>53
54 <!−− Contenedor de l menú v e r t i c a l ( l i s t a d o de empresas ) −−>55 <container id="c_menu" alpha="255" s i z e y="300" s i z e x="510" posy="
250" posx="30" v i s="1">56 <xs l : c h o o s e>57 <xsl :when t e s t="count (// empresa ) !=0">58 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="510" s i z e y=
"275" itemx="510" itemy="25" sepx="0" sepy="0" s t y l e="s_menuverEmpresas">
59 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >60 <action key="OK">61 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>62 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>63 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / u r l "/>64 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ur lF in "/>65 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /primeraVez"/>66 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / s e c t o r "/>67 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>68 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>69
70 <x s l : a t t r i b u t e name=" act ">71 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas_formular io ) ' ) "/>
72 <xs l : v a l u e−o f s e l e c t="$comun"/>73 </ x s l : a t t r i b u t e>74
75 <x s l : a t t r i b u t e name="actback ">76 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :
220 Apéndice B. Ficheros desarrollados para la aplicación
' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas ? p rov inc i a = ' ,$ prov inc ia , '& ;primeraVez= ' ,$ primeraVez , '& ; s e c t o r = ' ,$s ec to r , '& ; u r l = ' ,$ ur l , '& ; ur lF in = ' ,$ur lFin , '& ; pag= ' ,$pag , ' ) ' ) "/>
77 <xs l : v a l u e−o f s e l e c t="$comun"/>78 </ x s l : a t t r i b u t e>79
80 </action>81 </menuitem>82
83 <xs l :app ly− t emplate s s e l e c t="empresas /empresa"/>84
85 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >86 <action key="OK">87 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>88 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>89 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / u r l "/>90 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ur lF in "/>91 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /primeraVez"/>92 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / s e c t o r "/>93 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>94 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>95
96 <x s l : a t t r i b u t e name=" act ">97 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas_formular io ) ' ) "/>
98 <xs l : v a l u e−o f s e l e c t="$comun"/>99 </ x s l : a t t r i b u t e>
100
101 <x s l : a t t r i b u t e name="actback ">102 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas ? p rov inc i a = ' ,$ prov inc ia , '& ;primeraVez= ' ,$ primeraVez , '& ; s e c t o r = ' ,$s ec to r , '& ; u r l = ' ,$ ur l , '& ; ur lF in = ' ,$ur lFin , '& ; pag= ' ,$pag , ' ) ' ) "/>
103 <xs l : v a l u e−o f s e l e c t="$comun"/>104 </ x s l : a t t r i b u t e>105
106 </action>107 </menuitem>108
109 </menu>110 </xs l :when>111 <x s l : o t h e rw i s e>112 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="510" s i z e y
="90" s c r o l l="0">No se ha encontrado ninguna empresacon l o s parámetros de búsqueda s e l e c c i o nado s . Pulse "OK" para r e a l i z a r una nueva búsqueda .</text>
113 <menu type=" v e r t i c a l " posx="0" posy="115" s i z e x="510"s i z e y="27" itemx="510" itemy="27" sepx="0" sepy="0"s t y l e="s_menuverCursos">
B.3. Directorio de gestión del canal de retorno 221
114 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >115 <action key="OK">116 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>117 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>118 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / u r l "/>119 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ur lF in "/>120 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /primeraVez"/>121 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / s e c t o r "/>122 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>123 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>124
125 <x s l : a t t r i b u t e name=" act ">126 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas_formular io ) ' ) "/>
127 <xs l : v a l u e−o f s e l e c t="$comun"/>128 </ x s l : a t t r i b u t e>129
130 <x s l : a t t r i b u t e name="actback ">131 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( '
hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas ? p rov inc i a = ' ,$ prov inc ia , '& ;primeraVez= ' ,$ primeraVez , '& ; s e c t o r = ' ,$s ec to r , '& ; u r l = ' ,$ ur l , '& ; ur lF in = ' ,$ur lFin , '& ; pag= ' ,$pag , ' ) ' ) "/>
132 <xs l : v a l u e−o f s e l e c t="$comun"/>133 </ x s l : a t t r i b u t e>134
135 </action>136 </menuitem>137 </menu>138 </ x s l : o t h e rw i s e>139 </ x s l : c h o o s e>140 </container>141 </page>142 </ xs l : t emp l a t e>143
144 <xs l : t emp l a t e match="paginas /pagina ">145 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">146 <x s l : a t t r i b u t e name=" s t r "><xs l : v a l u e−o f s e l e c t="@numero"/></
x s l : a t t r i b u t e>147 <x s l : i f t e s t="@actual= '0 ' ">148 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>149 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>150 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /empresas ? p rov inc i a=& ; s e c t o r=& ; primeraVez=N& ; u r l = ' ,@ j s e s s i on id , '& ; ur lF in = ' , @f inur l , '& ; pag= ' ,@numero , ' ) ' ) "/>
151 <x s l : a t t r i b u t e name="onover ">152 <xs l : v a l u e−o f s e l e c t="$comun"/>
222 Apéndice B. Ficheros desarrollados para la aplicación
153 </ x s l : a t t r i b u t e>154 </ x s l : i f>155 </menuitem>156 </ xs l : t emp l a t e>157
158 <xs l : t emp l a t e match="empresas /empresa">159 <menuitem>160 <x s l : a t t r i b u t e name=" s t r ">161 <xs l : v a l u e−o f s e l e c t=" concat ( nombre , ' . S e c t o r : ' , s e c to r , ' .
P r ov i n c i a : ' , p r ov in c i a ) "/>162 </ x s l : a t t r i b u t e>163
164 <action key="OK">165 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>166 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>167 <x s l : v a r i a b l e name=" idProv inc i a " s e l e c t=" idProv inc i a "/>168 <x s l : v a r i a b l e name="idEmpresa" s e l e c t=" idEmpresa"/>169 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / u r l "/>170 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / ur lF in "/>171 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion /primeraVez"/>172 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / s e c t o r "/>173 <x s l : v a r i a b l e name=" prov inc i a " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / p rov inc i a "/>174 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion /pag"/>175 <x s l : a t t r i b u t e name=" act ">176 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / empresas_deta l l e ? p rov inc i a = ' ,$ prov inc ia , '& ; idEmpresa= ' ,$ idEmpresa , '& ; idProv inc i a = ' ,$idProv inc ia , '& ; primeraVez= ' ,$ primeraVez , '& ; s e c t o r= ' ,$ s ec to r , '& ; u r l = ' ,$ ur l , '& ; ur lF in = ' ,$ ur lFin , '& ;pag= ' ,$pag , ' ) ' ) "/>
177 <xs l : v a l u e−o f s e l e c t="$comun"/>178 </ x s l : a t t r i b u t e>179 <x s l : a t t r i b u t e name="actback ">180 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) ,
showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / empresas ? p rov inc i a = ' ,$ prov inc ia , '& ;primeraVez= ' ,$ primeraVez , '& ; s e c t o r = ' ,$ s ec to r , '& ; u r l= ' ,$ ur l , '& ; ur lF in = ' ,$ ur lFin , '& ; pag= ' ,$pag , ' ) ' ) "/>
181 <xs l : v a l u e−o f s e l e c t="$comun"/>182 </ x s l : a t t r i b u t e>183 </action>184
185 </menuitem>186 </ xs l : t emp l a t e>187
188 </ x s l : s t y l e s h e e t>
empresas_detalle.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /
B.3. Directorio de gestión del canal de retorno 223
p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <action>25 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ deta l leEmpresa . do? idEmpresa= ' ,/ submiss ion /idEmpresa , '& ; idProv inc i a = ' ,/ submiss ion /idProv inc i a ) "/>
26 </action>27 <cookies>yes</cookies>28 <timeout>40</timeout>29 <content−type>text /html</content−type>30 <encoding>utf−8</encoding>31 </config>32 </ xs l : t emp l a t e>33 </ x s l : s t y l e s h e e t>34 </p: input>35 <p:output name="data" id="metodo_http"/>36 </ p :p r o c e s s o r>37
38 <!−− Método GET (HTTP) −−>39 <p :p r o c e s s o r name="tmg:tm−http ">40 <p: input name=" con f i g " h r e f="#metodo_http"/>41 <p:output name="data" id="page"/>42 </ p :p r o c e s s o r>43
44 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>45 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">46 <p: input name=" con f i g ">47 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">48
49 <t i t u l o>50 <x s l : f o r −each s e l e c t="//h4/span">51 <x s l : i f t e s t=" po s i t i o n ( )=1">52 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>53 </ x s l : i f>54 </ x s l : f o r −each>55 </ t i t u l o>56
57 <x s l : f o r −each s e l e c t="// f i e l d s e t [ @class=' formular io ' ] ">58 <tex to s>59 <x s l : f o r −each s e l e c t=" . / div / l a b e l ">
224 Apéndice B. Ficheros desarrollados para la aplicación
60 <texto>61 <x s l : i f t e s t="number ( p o s i t i o n ( ) mod 2)=1">62 <x s l : t e x t>∗∗∗</ x s l : t e x t>63 </ x s l : i f>64 <xs l : c h o o s e>65 <xsl :when t e s t="count ( . / / a )=0">66 <xs l : v a l u e−o f s e l e c t="normal ize−space ( t ex t
( ) ) "/>67 </xs l :when>68 <x s l : o t h e rw i s e>69 <x s l : f o r −each s e l e c t=" .//∗ ">70 <x s l : i f t e s t="normal ize−space ( t ex t ( ) )
!= ' ' ">71 <xs l : v a l u e−o f s e l e c t="normal ize−space
( t ex t ( ) ) "/>72 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">73 <x s l : t e x t>; </ x s l : t e x t>74 </ x s l : i f>75 </ x s l : i f>76 </ x s l : f o r −each>77 </ x s l : o t h e rw i s e>78 </ x s l : c h o o s e>79 </ texto>80 </ x s l : f o r −each>81 </ tex to s>82 </ x s l : f o r −each>83
84 </ items>85 </p: input>86 <p: input name="data" h r e f="#page"/>87 <p:output name="data" id=" r e s u l t "/>88 </ p :p r o c e s s o r>89
90 <!−− Generación de l f i c h e r o XML −−>91 <p :p r o c e s s o r name=" o x f : x s l t ">92 <p: input name=" con f i g " h r e f=" empresas_deta l l e . x s l "/>93 <p: input name="data" h r e f="#r e s u l t "/>94 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>95 <p: input name=" s e r v e r " h r e f="#se rv e r "/>96 <p:output name="data" id=" l i s t "/>97 </ p :p r o c e s s o r>98
99 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>100 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">101 <p: input name=" con f i g ">102 <config>103 <content−type>app l i c a t i on /xml</content−type>104 <encoding>utf−8</encoding>105 <version>1.0</version>106 </config>107 </p: input>108 <p: input name="data" h r e f="#l i s t "/>109 </ p :p r o c e s s o r>110
111 </ p : c o n f i g>
empresas_detalle.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">
B.3. Directorio de gestión del canal de retorno 225
3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>14 <image path=" images / ind_empresas_on . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>18 </container>19
20 <!−− Contenedor de l t í t u l o −−>21 <container id=" c_texto_ti tu lo " v i s="1" alpha="0" posx="30" posy="
214" s i z e x="520" s i z e y="260">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0"><xs l : v a l u e−o f s e l e c t=" t i t u l o "/></text>23 </container>24
25 <!−− Contenedor de l t exto de in formac ión −−>26 <container id="c_textoGral " v i s="1" alpha="0" posx="30" posy="234"
s i z e x="520" s i z e y="260">27 <text s t y l e=" s_bodyDetal le " posx="0" posy="0" s i z e x="520" s i z e y=
"240" s c r o l l="1">28 <xs l : f o r− ea ch s e l e c t=" tex to s [ 1 ] / texto ">29 <xs l : v a l u e−o f s e l e c t=" text ( ) "/> <
x s l : t e x t>
</ x s l : t e x t>30 </ xs l : f o r− ea ch>31
32 <x s l : t e x t>−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−33 Datos de con ta c t o :34 </ x s l : t e x t>35 <xs l : f o r− ea ch s e l e c t=" tex to s [ 2 ] / texto ">36 <xs l : v a l u e−o f s e l e c t=" text ( ) "/> <
x s l : t e x t>
</ x s l : t e x t>37 </ xs l : f o r− ea ch>38 </text>39 </container>40
41
42 <!−− Contenedor de l menú −−>43 <container id="c_menu" v i s="1" alpha="0" posx="145" posy="490"
s i z e x="290" s i z e y="45">44 <menu type=" ho r i z on t a l " posx="0" posy="0" s i z e x="290" s i z e y="45"
itemx="130" itemy="45" sepx="30" sepy="0" s t y l e="s_menuhor">
45 <menuitem s t r="Volver " >46 <action key="OK">
226 Apéndice B. Ficheros desarrollados para la aplicación
47 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )/ r eque s t /server−name"/>
48 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r' ) / r eque s t / server−port "/>
49 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
50 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
51 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / s e c t o r "/>
52 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / u r l "/>
53 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / ur lF in "/>
54 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /primeraVez"/>
55 <x s l : v a r i a b l e name=" idProv inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / idProv inc i a "/>
56 <x s l : v a r i a b l e name="idEmpresa" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / idEmpresa"/>
57
58 <x s l : a t t r i b u t e name=" act ">59 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas ? p rov inc i a = ' ,$ prov, '& ; s e c t o r = ' ,$ s ec to r , '& ; u r l = ' ,$ ur l , '& ;ur lF in = ' ,$ ur lFin , '& ; primeraVez= ' ,$ primeraVez, '& ; pag= ' ,$pag , ' ) ' ) "/>
60 <xs l : v a l u e−o f s e l e c t="$comun"/>61 </ x s l : a t t r i b u t e>62
63 <x s l : a t t r i b u t e name="actback ">64 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas_deta l l e ? p rov inc i a= ' ,$ prov , '& ; s e c t o r = ' ,$ s ec to r , '& ; u r l = ' ,$ ur l, '& ; ur lF in = ' ,$ ur lFin , '& ; primeraVez= ' ,$primeraVez , '& ; pag= ' ,$pag , '& ; idEmpresa= ' ,$idEmpresa , '& ; idProv inc i a = ' ,$ idProv inc ia , ' ) ' ) "/>
65 <xs l : v a l u e−o f s e l e c t="$comun"/>66 </ x s l : a t t r i b u t e>67 </action>68 </menuitem>69
70 <menuitem s t r="Nueva búsqueda" >71 <action key="OK">72 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>73 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>74 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>75 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>76 <x s l : v a r i a b l e name=" s e c t o r " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / s e c t o r "/>77 <x s l : v a r i a b l e name=" u r l " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / u r l "/>78 <x s l : v a r i a b l e name=" ur lF in " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / ur lF in "/>79 <x s l : v a r i a b l e name="primeraVez" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /primeraVez"/>
B.3. Directorio de gestión del canal de retorno 227
80 <x s l : v a r i a b l e name=" idProv inc i a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / idProv inc i a "/>
81 <x s l : v a r i a b l e name="idEmpresa" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / idEmpresa"/>
82
83 <x s l : a t t r i b u t e name=" act ">84 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / empresas_formular io ) ' ) "/>
85 </ x s l : a t t r i b u t e>86
87 <x s l : a t t r i b u t e name="actback ">88 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / empresas_deta l l e ? p rov inc i a= ' ,$ prov , '& ; s e c t o r = ' ,$ s ec to r , '& ; u r l = ' ,$ ur l, '& ; ur lF in = ' ,$ ur lFin , '& ; primeraVez= ' ,$primeraVez , '& ; pag= ' ,$pag , '& ; idEmpresa= ' ,$idEmpresa , '& ; idProv inc i a = ' ,$ idProv inc ia , ' ) ' ) "/>
89 <xs l : v a l u e−o f s e l e c t="$comun"/>90 </ x s l : a t t r i b u t e>91 </action>92 </menuitem>93
94 </menu>95 </container>96 </page>97 </ xs l : t emp l a t e>98
99 </ x s l : s t y l e s h e e t>
B.3.4. Formación para el empleo
cursos_formulario.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">
228 Apéndice B. Ficheros desarrollados para la aplicación
22 <config>23 <method>url−http</method>24 <cookies>yes</cookies>25 <action>26 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ formacion /ofertasFPE / ' ,/submiss ion / tipoCursoText , ' / busquedaAvanzada . html?t i c k e t=nocas ' ) "/>
27 </action>28 <timeout>40</timeout>29 <content−type>text /html</content−type>30 <encoding>utf−8</encoding>31 </config>32 </ xs l : t emp l a t e>33 </ x s l : s t y l e s h e e t>34 </p: input>35 <p:output name="data" id="metodo_http"/>36 </ p :p r o c e s s o r>37
38 <!−− Método GET (HTTP) −−>39 <p :p r o c e s s o r name="tmg:tm−http ">40 <p: input name=" con f i g " h r e f="#metodo_http"/>41 <p:output name="data" id="page"/>42 </ p :p r o c e s s o r>43
44 <!−− Recupera l a l i s t a de munic ip ios −−>45 <p :p r o c e s s o r name=" o x f : i d e n t i t y ">46 <p: input name="data" h r e f="munic ip ios . xml"/>47 <p:output name="data" id="municipiosxml "/>48 </ p :p r o c e s s o r>49
50 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>51 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">52 <p: input name=" con f i g ">53 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">54 <munic ip ios>55 <x s l : f o r −each s e l e c t="doc ( ' input :munic ip iosxml ' ) / p r ov i n c i a s /
p rov inc i a [@cp=doc ( ' input :dat−in s tance ' ) / submiss ion /p rov inc i a ] ">
56 <x s l : f o r −each s e l e c t=" . / opt ion ">57 <munic ip io>58 <nombre>59 <xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space (
t ex t ( ) ) , ' , ' , ' ' ) "/>60 </nombre>61 <va lo r>62 <xs l : v a l u e−o f s e l e c t="@value"/>63 </ va lo r>64 </munic ip io>65 </ x s l : f o r −each>66 </ x s l : f o r −each>67 </munic ip ios>68 <f am i l i a s>69 <x s l : f o r −each s e l e c t="// s e l e c t [ @id=' f ami l i a ' ] / opt ion ">70 <fam i l i a>71 <nombre>72 <xs l : v a l u e−o f s e l e c t=" t r a n s l a t e ( normal ize−space ( t ex t
( ) ) , ' , ' , ' ' ) "/>73 </nombre>74 <va lo r>75 <xs l : v a l u e−o f s e l e c t=" . / @value"/>76 </ va lo r>
B.3. Directorio de gestión del canal de retorno 229
77 </ f am i l i a>78 </ x s l : f o r −each>79 </ f am i l i a s>80 </ items>81 </p: input>82 <p: input name="data" h r e f="#page"/>83 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>84 <p: input name="municipiosxml " h r e f="#municipiosxml "/>85 <p:output name="data" id=" r e s u l t "/>86 </ p :p r o c e s s o r>87
88 <!−− Generación de l f i c h e r o XML −−>89 <p :p r o c e s s o r name=" o x f : x s l t ">90 <p: input name=" con f i g " h r e f=" cursos_formular io . x s l "/>91 <p: input name="data" h r e f="#r e s u l t "/>92 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>93 <p: input name=" s e r v e r " h r e f="#se rv e r "/>94 <p:output name="data" id=" l i s t "/>95 </ p :p r o c e s s o r>96
97 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>98 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">99 <p: input name=" con f i g ">
100 <config>101 <content−type>app l i c a t i on /xml</content−type>102 <encoding>utf−8</encoding>103 <version>1.0</version>104 </config>105 </p: input>106 <p: input name="data" h r e f="#l i s t "/>107 </ p :p r o c e s s o r>108
109 </ p : c o n f i g>
cursos_formulario.xsl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>14 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_formacion_on . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>
230 Apéndice B. Ficheros desarrollados para la aplicación
18 </container>19
20 <!−− Contenedor de l f o rmu la r i o de búsqueda −−>21 <container id="c_form" v i s="1" alpha="0" posx="30" posy="233" s i z e x
="520" s i z e y="330">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0">Cursos de formación para e l empleo</text>23
24 <form f o cu s=" f_tipoCurso " posx="0" posy="30" s i z e x="520" s i z e y="300" s t y l e="s_menu_form">
25
26 <text s t r="Tipo de curso " posx="0" posy="0" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
27 <form_list id=" f_tipoCurso " va l="0000" type="harrows" posx="175" posy="0" s i z e x="150" s i z e y="25" down=" f_ i n i c i o " up="f_buscar ">
28 <x s l : a t t r i b u t e name=" opt ions "><xs l : v a l u e−o f s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t ipoCurso "/></x s l : a t t r i b u t e>
29 <xs l : c h o o s e>30 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso='PRV' ">31 <x s l : a t t r i b u t e name=" opt ions_texts ">Prev i s t o s</
x s l : a t t r i b u t e>32 </xs l :when>33 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso='PUB' ">34 <x s l : a t t r i b u t e name=" opt ions_texts ">Convocados</
x s l : a t t r i b u t e>35 </xs l :when>36 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso='AMP' ">37 <x s l : a t t r i b u t e name=" opt ions_texts ">Plazo Ampliado</
x s l : a t t r i b u t e>38 </xs l :when>39 </ x s l : c h o o s e>40 </ form_list>41
42 <text s t r=" I n i c i o programado en" posx="0" posy="30" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
43 <form_list id=" f_ i n i c i o " opt ions="−1 ,01 ,02 ,03 ,04 ,05 ,06 ,07 ,08 ,09 ,10 ,11 ,12 " opt ions_texts="Cualquier mes , Enero , Febrero , Marzo , Abri l ,Mayo , Junio , Ju l i o ,Agosto , Septiembre , Octubre , Noviembre , Diciembre " va l="0000"type="harrows" posx="175" posy="30" s i z e x="150" s i z e y="
25" up=" f_tipoCurso " down=" f_municipio "></ form_list>44
45 <text s t r="Municipio " posx="0" posy="60" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
46 <form_list id=" f_municipio " va l="0000" type="harrows" posx="175" posy="60" s i z e x="330" s i z e y="25" up=" f_ i n i c i o ">
47 <x s l : a t t r i b u t e name="down">48 <xs l : c h o o s e>49 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion
/ t ipoCurso != 'AMP' ">50 <x s l : t e x t>f_co l e c t i v o</ x s l : t e x t>51 </xs l :when>52 <x s l : o t h e rw i s e>53 <x s l : t e x t>f_codigo</ x s l : t e x t>54 </ x s l : o t h e rw i s e>55 </ x s l : c h o o s e>56 </ x s l : a t t r i b u t e>57 <x s l : a t t r i b u t e name=" opt ions ">58 <xs l : f o r− ea ch s e l e c t="munic ip ios /munic ip io ">
B.3. Directorio de gestión del canal de retorno 231
59 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>60 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">61 <x s l : t e x t> ,</ x s l : t e x t>62 </ x s l : i f>63 </ xs l : f o r− ea ch>64 </ x s l : a t t r i b u t e>65 <x s l : a t t r i b u t e name=" opt ions_texts ">66 <xs l : f o r− ea ch s e l e c t="munic ip ios /munic ip io ">67 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>68 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">69 <x s l : t e x t> ,</ x s l : t e x t>70 </ x s l : i f>71 </ xs l : f o r− ea ch>72 </ x s l : a t t r i b u t e>73 </ form_list>74
75 <x s l : i f t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion / t ipoCurso!= 'AMP' ">
76 <text s t r="Co l e c t i vo " posx="0" posy="90" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
77 <form_list id=" f_co l e c t i v o " opt ions="−1 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 " opt ions_texts="Todos l o sc o l e c t i v o s , Desempleados ( gene ra l ) , Desempleados (jóvenes ) , Desempleados ( minor ías é t n i c a s /migrantes yo t r o s c o l e c t i v o s d e s f avo r e c i d o s ) , Desempleados (minusvá l idos ) , Desempleados ( mujeres ) , Formadores (desempleados /ocupados ) , Inmigrantes , Ocupados ( trab .pymes de ec . s o c i a l y autónomos ) , Plan memta , Prote ja "va l="0000" type="harrows" posx="175" posy="90" s i z e x="330" s i z e y="25" up=" f_municipio " down=" f_prac t i c a s "></form_list>
78
79 <text s t r=" Prác t i c a s empresas " posx="0" posy="120" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
80 <form_list id=" f_prac t i ca s " opt ions="−1,Si ,No"opt ions_texts="Todas l a s opciones , Sí ,No" va l="0000"type="harrows" posx="175" posy="120" s i z e x="150" s i z e y="25" up=" f_co l e c t i v o " down=" f_fami l i a "></ form_list>
81 </ x s l : i f>82
83 <x s l : i f t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion / t ipoCurso='AMP' ">
84 <text s t r="Código de l a o f e r t a " posx="0" posy="90" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
85 <edit_text id=" f_codigo " va l="" c o l e d i t="#f f f f f f " posx="175" posy="90" s i z e x="330" s i z e y="25" up=" f_municipio "down=" f_fami l i a " type="numeric "></edit_text>
86 </ x s l : i f>87
88 <text s t r="Famil ia p r o f e s i o n a l " posx="0" posy="150" s i z e x="155" s i z e y="25" s t y l e="s_body_form"></text>
89 <form_list id=" f_fami l i a " va l="0000" type="harrows" posx="175" posy="150" s i z e x="330" s i z e y="25" down=" f_buscar ">
90 <x s l : a t t r i b u t e name="up">91 <xs l : c h o o s e>92 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion
/ t ipoCurso != 'AMP' ">93 <x s l : t e x t>f_prac t i c a s</ x s l : t e x t>94 </xs l :when>95 <x s l : o t h e rw i s e>96 <x s l : t e x t>f_codigo</ x s l : t e x t>97 </ x s l : o t h e rw i s e>98 </ x s l : c h o o s e>99 </ x s l : a t t r i b u t e>
232 Apéndice B. Ficheros desarrollados para la aplicación
100 <x s l : a t t r i b u t e name=" opt ions ">101 <xs l : f o r− ea ch s e l e c t=" f am i l i a s / f am i l i a ">102 <xs l : v a l u e−o f s e l e c t=" . / va l o r "/>103 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">104 <x s l : t e x t> ,</ x s l : t e x t>105 </ x s l : i f>106 </ xs l : f o r− ea ch>107 </ x s l : a t t r i b u t e>108 <x s l : a t t r i b u t e name=" opt ions_texts ">109 <xs l : f o r− ea ch s e l e c t=" f am i l i a s / f am i l i a ">110 <xs l : v a l u e−o f s e l e c t=" . / nombre"/>111 <x s l : i f t e s t=" po s i t i o n ( ) != l a s t ( ) ">112 <x s l : t e x t> ,</ x s l : t e x t>113 </ x s l : i f>114 </ xs l : f o r− ea ch>115 </ x s l : a t t r i b u t e>116 </ form_list>117
118 <form_imgbutton id=" f_buscar " img=" images /bot_buscar_off . png"imgfocus=" images /bot_buscar_on . png"
119 posx="170" posy="185" s i z e x="122" s i z e y="79" up=" f_fami l i a " down=" f_tipoCurso " va l i d a t i o n=" f a l s e ">
120 <action key="OK">121 <x s l : a t t r i b u t e name=" act ">122 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>123 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>124 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / tipoCursoText "/>125 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / cursos_formacion ? t ipoCurso=$f_tipoCurso ;& ; tipoCursoText= ' ,$ textoCurso, '& ; i n i c i o=$f_ i n i c i o ;& ; munic ip io=$f_municipio ;& ; pag=1& ; ' ) "/>
126 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
127 <xs l : c h o o s e>128 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) /
submiss ion / t ipoCurso != 'AMP' ">129 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' c o l e c t i v o
=$f_co l e c t i v o ;& ; f am i l i a=$f_fami l i a ;& p r a c t i c a s=$f_prac t i ca s ;& ; codigo=& ;p rov inc i a = ' ,$ prov , ' ) ' ) "/>
130 </xs l :when>131 <x s l : o t h e rw i s e>132 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' cod igo=&
amp ; f am i l i a=$f_fami l i a ;& ; p r a c t i c a s=& c o l e c t i v o=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
133 </ x s l : o t h e rw i s e>134 </ x s l : c h o o s e>135 </ x s l : a t t r i b u t e>136 <x s l : a t t r i b u t e name="actback ">137 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>138 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>139 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoCurso "/>140 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / tipoCursoText "/>141 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
B.3. Directorio de gestión del canal de retorno 233
142 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (∗ ) , showpage (h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps/16003/800/ rc / cursos_formular io ? t ipoCurso = ' ,$tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
143 </ x s l : a t t r i b u t e>144
145 </action>146 </form_imgbutton>147
148 </form>149 </container>150
151 </page>152 </ xs l : t emp l a t e>153
154 </ x s l : s t y l e s h e e t>
municipios.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2
3 <prov i n c i a s>4
5 <!−− Todas l a s p r ov i n c i a s −−>6 <prov inc i a cp="−1">7 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>8 </ prov inc i a>9
10
11 <!−− Almería −−>12 <prov inc i a cp="04">13 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>14
15
16 <opt ion value="04001" >Abla</ opt ion>17
18 <opt ion value="04002" >Abrucena</ opt ion>19
20 <opt ion value="04003" >Adra</ opt ion>21
22 <opt ion value="04720" >Aguadulce</ opt ion>23
24 <opt ion value="04004" >Albanchez</ opt ion>25
26 <opt ion value="04005" >Alboloduy</ opt ion>27
28
29 <opt ion value="04006" >Albox</ opt ion>30
31 <opt ion value="04007" >Alco l ea</ opt ion>32
33 <opt ion value="04008" >Alcontar</ opt ion>34
35 <opt ion value="04009" >Alcudia de monteagud</ opt ion>36
37 <opt ion value="04010" >Alhabia</ opt ion>38
39 <opt ion value="04011" >Alhama de a lmer ia</ opt ion>40
41
234 Apéndice B. Ficheros desarrollados para la aplicación
42 <opt ion value="04012" >Alicun</ opt ion>43
44 <opt ion value="04013" >Almeria</ opt ion>45
46 <opt ion value="04014" >Almocita</ opt ion>47
48 <opt ion value="04779" >Alquer ia ( venta nueva ) ( l a )</opt ion>
49
50 <opt ion value="04130" >Alquian ( e l )</ opt ion>51
52 <opt ion value="04015" >Alsodux</ opt ion>53
54
55 <opt ion value="04016" >Antas</ opt ion>56
57 <opt ion value="04017" >Arboleas</ opt ion>58
59 <opt ion value="04018" >Armuña de almanzora</ opt ion>60
61 <opt ion value="04019" >Bacares</ opt ion>62
63 <opt ion value="04713" >Balanegra</ opt ion>64
65 <opt ion value="04712" >Balerma</ opt ion>66
67
68 <opt ion value="04020" >Bayarcal</ opt ion>69
70 <opt ion value="04021" >Bayarque</ opt ion>71
72 <opt ion value="04022" >Bedar</ opt ion>73
74 <opt ion value="04023" >Be i r e s</ opt ion>75
76 <opt ion value="04024" >Benahadux</ opt ion>77
78 <opt ion value="04026" >Beni tag la</ opt ion>79
80
81 <opt ion value="04027" >Beniza lon</ opt ion>82
83 <opt ion value="04028" >Bentar ique</ opt ion>84
85 <opt ion value="04029" >Berja</ opt ion>86
87 <opt ion value="04110" >Campohermoso</ opt ion>88
89 <opt ion value="04030" >Canjayar</ opt ion>90
91 <opt ion value="04031" >Cantoria</ opt ion>92
93
94 <opt ion value="04032" >Carboneras</ opt ion>95
96 <opt ion value="04033" >Castro de f i l a b r e s</ opt ion>97
98 <opt ion value="04811" >Cañada ( l a )</ opt ion>99
100 <opt ion value="04120" >Cañada de san urbano ( l a )</opt ion>
101
102 <opt ion value="04036" >Chercos</ opt ion>103
B.3. Directorio de gestión del canal de retorno 235
104 <opt ion value="04037" >Ch i r i v e l</ opt ion>105
106
107 <opt ion value="04034" >Cobdar</ opt ion>108
109 <opt ion value="04920" >Costacabana</ opt ion>110
111 <opt ion value="04035" >Cuevas de l almanzora</ opt ion>112
113 <opt ion value="04770" >Curva ( l a )</ opt ion>114
115 <opt ion value="04038" >Dal ia s</ opt ion>116
117 <opt ion value="04039" >Dar r i c a l</ opt ion>118
119
120 <opt ion value="04905" >Doña maria de ocaña</ opt ion>121
122 <opt ion value="04902" >Ejido ( e l )</ opt ion>123
124 <opt ion value="04041" >Enix</ opt ion>125
126 <opt ion value="04904" >Escu l l a r</ opt ion>127
128 <opt ion value="04043" >Fe l i x</ opt ion>129
130 <opt ion value="04044" >Fines</ opt ion>131
132
133 <opt ion value="04045" >Fiñana</ opt ion>134
135 <opt ion value="04046" >Fondon</ opt ion>136
137 <opt ion value="04047" >Gador</ opt ion>138
139 <opt ion value="04048" >Gal lardos ( l o s )</ opt ion>140
141 <opt ion value="04280" >Gal lardos ( l o s )</ opt ion>142
143 <opt ion value="04049" >Garrucha</ opt ion>144
145
146 <opt ion value="04050" >Gergal</ opt ion>147
148 <opt ion value="04051" >Huec i ja</ opt ion>149
150 <opt ion value="04052" >Huercal de a lmer ia</ opt ion>151
152 <opt ion value="04600" >Huercal overa</ opt ion>153
154 <opt ion value="04053" >Huercal−overa</ opt ion>155
156 <opt ion value="04054" >I l l a r</ opt ion>157
158
159 <opt ion value="04055" >In s t i n c i o n</ opt ion>160
161 <opt ion value="04056" >Laroya</ opt ion>162
163 <opt ion value="04057" >Laujar de andarax</ opt ion>164
165 <opt ion value="04058" >L i j a r</ opt ion>166
167 <opt ion value="04059" >Lubrin</ opt ion>
236 Apéndice B. Ficheros desarrollados para la aplicación
168
169 <opt ion value="04060" >Lucainena de l a s t o r r e s</ opt ion>170
171
172 <opt ion value="04061" >Lucar</ opt ion>173
174 <opt ion value="04062" >Macael</ opt ion>175
176 <opt ion value="04063" >Maria</ opt ion>177
178 <opt ion value="04064" >Mojacar</ opt ion>179
180 <opt ion value="04903" >Mojonera ( l a )</ opt ion>181
182 <opt ion value="04065" >Nacimiento</ opt ion>183
184
185 <opt ion value="04066" >Ni ja r</ opt ion>186
187 <opt ion value="04716" >Norias de daza ( l a s )</ opt ion>188
189 <opt ion value="04067" >Ohanes</ opt ion>190
191 <opt ion value="04068" >Olula de ca s t r o</ opt ion>192
193 <opt ion value="04069" >Olula de l r i o</ opt ion>194
195 <opt ion value="04070" >Oria</ opt ion>196
197
198 <opt ion value="04810" >Oria</ opt ion>199
200 <opt ion value="04071" >Padules</ opt ion>201
202 <opt ion value="04072" >Parta loa</ opt ion>203
204 <opt ion value="04073" >Paterna de l r i o</ opt ion>205
206 <opt ion value="04074" >Pechina</ opt ion>207
208 <opt ion value="04075" >Pulpi</ opt ion>209
210
211 <opt ion value="04076" >Purchena</ opt ion>212
213 <opt ion value="04077" >Ragol</ opt ion>214
215 <opt ion value="04078" >Rioja</ opt ion>216
217 <opt ion value="04079" >Roquetas de mar</ opt ion>218
219 <opt ion value="04080" >Santa cruz de marchena</ opt ion>220
221 <opt ion value="04081" >Santa f e de mondujar</ opt ion>222
223
224 <opt ion value="04710" >Santa maria de l a gu i l a</ opt ion>225
226 <opt ion value="04700" >Santo domingo</ opt ion>227
228 <opt ion value="04082" >Senes</ opt ion>229
230 <opt ion value="04083" >Seron</ opt ion>231
B.3. Directorio de gestión del canal de retorno 237
232 <opt ion value="04084" >S i e r r o</ opt ion>233
234 <opt ion value="04085" >Somontin</ opt ion>235
236
237 <opt ion value="04086" >Sorbas</ opt ion>238
239 <opt ion value="04087" >Su f l i</ opt ion>240
241 <opt ion value="04088" >Tabernas</ opt ion>242
243 <opt ion value="04089" >Taberno</ opt ion>244
245 <opt ion value="04090" >Tahal</ opt ion>246
247 <opt ion value="04091" >Terque</ opt ion>248
249
250 <opt ion value="04092" >T i j o l a</ opt ion>251
252 <opt ion value="04901" >Tres v i l l a s ( l a s )</ opt ion>253
254 <opt ion value="04093" >Turre</ opt ion>255
256 <opt ion value="04094" >Tu r r i l l a s</ opt ion>257
258 <opt ion value="04095" >U l e i l a de l campo</ opt ion>259
260 <opt ion value="04096" >Urraca l</ opt ion>261
262
263 <opt ion value="04097" >Ve l e f i que</ opt ion>264
265 <opt ion value="04098" >Velez−blanco</ opt ion>266
267 <opt ion value="04099" >Velez−rub io</ opt ion>268
269 <opt ion value="04100" >Vera</ opt ion>270
271 <opt ion value="04101" >Viator</ opt ion>272
273 <opt ion value="04102" >Vicar</ opt ion>274
275
276 <opt ion value="04103" >Zurgena</ opt ion>277 </ prov inc i a>278
279 <!−− Cádiz −−>280 <prov inc i a cp="11">281 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>282
283
284 <opt ion value="11001" >Alca la de l o s gazu l e s</ opt ion>285
286 <opt ion value="11002" >Alca la de l v a l l e</ opt ion>287
288 <opt ion value="11003" >Algar</ opt ion>289
290 <opt ion value="11004" >Alg e c i r a s</ opt ion>291
292 <opt ion value="11005" >Algodonales</ opt ion>293
294 <opt ion value="11006" >Arcos de l a f r on t e r a</ opt ion>295
238 Apéndice B. Ficheros desarrollados para la aplicación
296
297 <opt ion value="11007" >Barbate</ opt ion>298
299 <opt ion value="11008" >Barr i o s ( l o s )</ opt ion>300
301 <opt ion value="11901" >Benalup</ opt ion>302
303 <opt ion value="11009" >Benaocaz</ opt ion>304
305 <opt ion value="11010" >Bornos</ opt ion>306
307 <opt ion value="11011" >Bosque ( e l )</ opt ion>308
309
310 <opt ion value="11012" >Cadiz</ opt ion>311
312 <opt ion value="11013" >Ca s t e l l a r de l a f r on t e r a</ opt ion>
313
314 <opt ion value="11015" >Chiclana de l a f r on t e r a</ opt ion>315
316 <opt ion value="11016" >Chipiona</ opt ion>317
318 <opt ion value="11014" >Coni l de l a f r on t e r a</ opt ion>319
320 <opt ion value="11043" >Desconocido</ opt ion>321
322
323 <opt ion value="11017" >Espera</ opt ion>324
325 <opt ion value="11018" >Gastor ( e l )</ opt ion>326
327 <opt ion value="11019" >Grazalema</ opt ion>328
329 <opt ion value="11020" >Jerez de l a f r on t e r a</ opt ion>330
331 <opt ion value="11021" >Jimena de l a f r on t e r a</ opt ion>332
333 <opt ion value="11022" >Linea de l a concepc ion ( l a )</opt ion>
334
335
336 <opt ion value="11023" >Medina−s i d on i a</ opt ion>337
338 <opt ion value="11024" >Olvera</ opt ion>339
340 <opt ion value="11025" >Paterna de r i v e r a</ opt ion>341
342 <opt ion value="11026" >Prado de l rey</ opt ion>343
344 <opt ion value="11027" >Puerto de santa maria ( e l )</opt ion>
345
346 <opt ion value="11028" >Puerto r e a l</ opt ion>347
348
349 <opt ion value="11029" >Puerto se r rano</ opt ion>350
351 <opt ion value="11030" >Rota</ opt ion>352
353 <opt ion value="11031" >San fernando</ opt ion>354
355 <opt ion value="11902" >San j o s e de l v a l l e</ opt ion>356
B.3. Directorio de gestión del canal de retorno 239
357 <opt ion value="11340" >San martin de l t e s o r i l l o</ opt ion>
358
359 <opt ion value="11033" >San roque</ opt ion>360
361
362 <opt ion value="11032" >Sanlucar de barrameda</ opt ion>363
364 <opt ion value="11034" >S e t e n i l de l a s bodegas</ opt ion>365
366 <opt ion value="11035" >Tar i f a</ opt ion>367
368 <opt ion value="11036" >Torre−alhaquime</ opt ion>369
370 <opt ion value="11037" >Trebujena</ opt ion>371
372 <opt ion value="11038" >Ubrique</ opt ion>373
374
375 <opt ion value="11039" >Vejer de l a f r on t e r a</ opt ion>376
377 <opt ion value="11040" >Vi l l a l u enga de l r o s a r i o</ opt ion>378
379 <opt ion value="11041" >Vi l l amar t in</ opt ion>380
381 <opt ion value="11042" >Zahara</ opt ion>382 </ prov inc i a>383
384
385 <!−− Córdoba −−>386 <prov inc i a cp="14">387 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>388
389
390 <opt ion value="14001" >Adamuz</ opt ion>391
392 <opt ion value="14002" >Agui lar de l a f r on t e r a</ opt ion>393
394 <opt ion value="14003" >Alca ra c e j o s</ opt ion>395
396 <opt ion value="14610" >Alco l ea</ opt ion>397
398 <opt ion value="14004" >Almed in i l l a</ opt ion>399
400 <opt ion value="14005" >Almodovar de l r i o</ opt ion>401
402
403 <opt ion value="14006" >Añora</ opt ion>404
405 <opt ion value="14007" >Baena</ opt ion>406
407 <opt ion value="14008" >Be la l c a za r</ opt ion>408
409 <opt ion value="14009" >Belmez</ opt ion>410
411 <opt ion value="14010" >Benameji</ opt ion>412
413 <opt ion value="14011" >Blazquez ( l o s )</ opt ion>414
415
416 <opt ion value="14012" >Bujalance</ opt ion>417
418 <opt ion value="14013" >Cabra</ opt ion>419
240 Apéndice B. Ficheros desarrollados para la aplicación
420 <opt ion value="14015" >Carcabuey</ opt ion>421
422 <opt ion value="14016" >Cardeña</ opt ion>423
424 <opt ion value="14017" >Carlota ( l a )</ opt ion>425
426 <opt ion value="14018" >Carpio ( e l )</ opt ion>427
428
429 <opt ion value="14019" >Castro de l r i o</ opt ion>430
431 <opt ion value="14014" >Cañete de l a s t o r r e s</ opt ion>432
433 <opt ion value="14020" >Conquista</ opt ion>434
435 <opt ion value="14021" >Cordoba</ opt ion>436
437 <opt ion value="14023" >Dos t o r r e s</ opt ion>438
439 <opt ion value="14022" >Doña mencia</ opt ion>440
441
442 <opt ion value="14024" >Encinas r e a l e s</ opt ion>443
444 <opt ion value="14025" >Espejo</ opt ion>445
446 <opt ion value="14026" >Esp i e l</ opt ion>447
448 <opt ion value="14027" >Fernan nuñez</ opt ion>449
450 <opt ion value="14110" >Fuente c a r r e t e r o s</ opt ion>451
452 <opt ion value="14028" >Fuente l a lancha</ opt ion>453
454
455 <opt ion value="14029" >Fuente obejuna</ opt ion>456
457 <opt ion value="14030" >Fuente palmera</ opt ion>458
459 <opt ion value="14031" >Fuente−t o j a r</ opt ion>460
461 <opt ion value="14032" >Granjuela ( l a )</ opt ion>462
463 <opt ion value="14033" >Guadalcazar</ opt ion>464
465 <opt ion value="14034" >Guijo ( e l )</ opt ion>466
467
468 <opt ion value="14193" >Higueron ( e l )</ opt ion>469
470 <opt ion value="14035" >Hinojosa de l duque</ opt ion>471
472 <opt ion value="14036" >Hornachuelos</ opt ion>473
474 <opt ion value="14037" >I zna j a r</ opt ion>475
476 <opt ion value="14038" >Lucena</ opt ion>477
478 <opt ion value="14039" >Luque</ opt ion>479
480
481 <opt ion value="14040" >Montalban de cordoba</ opt ion>482
483 <opt ion value="14041" >Montemayor</ opt ion>
B.3. Directorio de gestión del canal de retorno 241
484
485 <opt ion value="14042" >Mont i l l a</ opt ion>486
487 <opt ion value="14043" >Montoro</ opt ion>488
489 <opt ion value="14044" >Monturque</ opt ion>490
491 <opt ion value="14045" >Mor i l e s</ opt ion>492
493
494 <opt ion value="14046" >Nueva car teya</ opt ion>495
496 <opt ion value="14047" >Obejo</ opt ion>497
498 <opt ion value="14129" >Ochav i l l o de l r i o</ opt ion>499
500 <opt ion value="14048" >Palenc iana</ opt ion>501
502 <opt ion value="14049" >Palma de l r i o</ opt ion>503
504 <opt ion value="14050" >Pedro abad</ opt ion>505
506
507 <opt ion value="14051" >Pedroche</ opt ion>508
509 <opt ion value="14052" >Peñarroya−pueblonuevo</ opt ion>510
511 <opt ion value="14053" >Posadas</ opt ion>512
513 <opt ion value="14054" >Pozoblanco</ opt ion>514
515 <opt ion value="14055" >Priego de cordoba</ opt ion>516
517 <opt ion value="14056" >Puente g e n i l</ opt ion>518
519
520 <opt ion value="14057" >Rambla ( l a )</ opt ion>521
522 <opt ion value="14058" >Rute</ opt ion>523
524 <opt ion value="14059" >San s eba s t i an de l o s b a l l e s t e r o s</ opt ion>
525
526 <opt ion value="14061" >Santa eufemia</ opt ion>527
528 <opt ion value="14060" >Santae l l a</ opt ion>529
530 <opt ion value="14062" >Torrecampo</ opt ion>531
532
533 <opt ion value="14063" >Valenzue la</ opt ion>534
535 <opt ion value="14064" >Va l s e qu i l l o</ opt ion>536
537 <opt ion value="14065" >Vi c t o r i a ( l a )</ opt ion>538
539 <opt ion value="14066" >V i l l a de l r i o</ opt ion>540
541 <opt ion value="14067" >V i l l a f r a n c a de cordoba</ opt ion>542
543 <opt ion value="14068" >Vi l l aha r t a</ opt ion>544
545
546 <opt ion value="14069" >Vi l lanueva de cordoba</ opt ion>
242 Apéndice B. Ficheros desarrollados para la aplicación
547
548 <opt ion value="14070" >Vi l lanueva de l duque</ opt ion>549
550 <opt ion value="14071" >Vi l lanueva de l rey</ opt ion>551
552 <opt ion value="14072" >V i l l a r a l t o</ opt ion>553
554 <opt ion value="14710" >V i l l a r r ub i a</ opt ion>555
556 <opt ion value="14073" >V i l l a v i c i o s a de cordoba</ opt ion>557
558
559 <opt ion value="14074" >Viso ( e l )</ opt ion>560
561 <opt ion value="14950" >Zambra</ opt ion>562
563 <opt ion value="14075" >Zuheros</ opt ion>564 </ prov inc i a>565
566
567 <!−− Granada −−>568 <prov inc i a cp="18">569 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>570
571
572 <opt ion value="18001" >Agron</ opt ion>573
574 <opt ion value="18002" >Alamedi l la</ opt ion>575
576 <opt ion value="18003" >Albo lote</ opt ion>577
578 <opt ion value="18004" >Albondon</ opt ion>579
580 <opt ion value="18005" >Albuñan</ opt ion>581
582 <opt ion value="18006" >Albuñol</ opt ion>583
584
585 <opt ion value="18007" >Albuñuelas</ opt ion>586
587 <opt ion value="18920" >Alcudia de guadix</ opt ion>588
589 <opt ion value="18010" >Alde i r e</ opt ion>590
591 <opt ion value="18011" >Al facar</ opt ion>592
593 <opt ion value="18012" >Alga r in e j o</ opt ion>594
595 <opt ion value="18013" >Alhama de granada</ opt ion>596
597
598 <opt ion value="18014" >Alhendin</ opt ion>599
600 <opt ion value="18015" >Alicun de or tega</ opt ion>601
602 <opt ion value="18016" >Almegi jar</ opt ion>603
604 <opt ion value="18017" >Almuñecar</ opt ion>605
606 <opt ion value="18904" >Alpujarra de l a s i e r r a</ opt ion>607
608 <opt ion value="18018" >Alqu i f e</ opt ion>609
610
B.3. Directorio de gestión del canal de retorno 243
611 <opt ion value="18020" >Arenas de l rey</ opt ion>612
613 <opt ion value="18021" >Armil la</ opt ion>614
615 <opt ion value="18022" >Atar fe</ opt ion>616
617 <opt ion value="18023" >Baza</ opt ion>618
619 <opt ion value="18024" >Beas de granada</ opt ion>620
621 <opt ion value="18025" >Beas de guadix</ opt ion>622
623
624 <opt ion value="18027" >Benalua de guadix</ opt ion>625
626 <opt ion value="18028" >Benalua de l a s v i l l a s</ opt ion>627
628 <opt ion value="18029" >Benamaurel</ opt ion>629
630 <opt ion value="18030" >Berchules</ opt ion>631
632 <opt ion value="18032" >Bubion</ opt ion>633
634 <opt ion value="18033" >Busquis tar</ opt ion>635
636
637 <opt ion value="18034" >Cacin</ opt ion>638
639 <opt ion value="18035" >Cadiar</ opt ion>640
641 <opt ion value="18036" >Cajar</ opt ion>642
643 <opt ion value="18199" >Cajar</ opt ion>644
645 <opt ion value="18730" >Calahonda</ opt ion>646
647 <opt ion value="18114" >Calahorra ( l a )</ opt ion>648
649
650 <opt ion value="18037" >Ca l i c a s a s</ opt ion>651
652 <opt ion value="18038" >Campotejar</ opt ion>653
654 <opt ion value="18039" >Can i l e s</ opt ion>655
656 <opt ion value="18042" >Cap i l e i r a</ opt ion>657
658 <opt ion value="18043" >Carataunas</ opt ion>659
660 <opt ion value="18044" >Castaras</ opt ion>661
662
663 <opt ion value="18740" >Ca s t e l l de f e r r o</ opt ion>664
665 <opt ion value="18045" >Ca s t i l l e j a r</ opt ion>666
667 <opt ion value="18046" >Ca s t r i l</ opt ion>668
669 <opt ion value="18040" >Cañar</ opt ion>670
671 <opt ion value="18047" >Cenes de l a vega</ opt ion>672
673 <opt ion value="18059" >Chauchina</ opt ion>674
244 Apéndice B. Ficheros desarrollados para la aplicación
675
676 <opt ion value="18061" >Chimeneas</ opt ion>677
678 <opt ion value="18062" >Churriana de l a vega</ opt ion>679
680 <opt ion value="18048" >Ci ju e l a</ opt ion>681
682 <opt ion value="18049" >Cogo l lo s de guadix</ opt ion>683
684 <opt ion value="18050" >Cogo l lo s vega</ opt ion>685
686 <opt ion value="18051" >Colomera</ opt ion>687
688
689 <opt ion value="18053" >Cortes de baza</ opt ion>690
691 <opt ion value="18054" >Cortes y graena</ opt ion>692
693 <opt ion value="18912" >Cuevas de l campo</ opt ion>694
695 <opt ion value="18056" >Cul la r</ opt ion>696
697 <opt ion value="18057" >Cul la r vega</ opt ion>698
699 <opt ion value="18063" >Darro</ opt ion>700
701
702 <opt ion value="18064" >Dehesas de guadix</ opt ion>703
704 <opt ion value="18066" >De i f on te s</ opt ion>705
706 <opt ion value="18067" >Diezma</ opt ion>707
708 <opt ion value="18068" >Di l a r</ opt ion>709
710 <opt ion value="18069" >Dolar</ opt ion>711
712 <opt ion value="18070" >Dudar</ opt ion>713
714
715 <opt ion value="18071" >Durcal</ opt ion>716
717 <opt ion value="18072" >Escuzar</ opt ion>718
719 <opt ion value="18074" >Fe r r e i r a</ opt ion>720
721 <opt ion value="18076" >Fonelas</ opt ion>722
723 <opt ion value="18078" >Fr e i l a</ opt ion>724
725 <opt ion value="18079" >Fuente vaqueros</ opt ion>726
727
728 <opt ion value="18905" >Gabias ( l a s )</ opt ion>729
730 <opt ion value="18082" >Galera</ opt ion>731
732 <opt ion value="18083" >Gobernador</ opt ion>733
734 <opt ion value="18084" >Gojar</ opt ion>735
736 <opt ion value="18085" >Gor</ opt ion>737
738 <opt ion value="18086" >Gorafe</ opt ion>
B.3. Directorio de gestión del canal de retorno 245
739
740
741 <opt ion value="18087" >Granada</ opt ion>742
743 <opt ion value="18088" >Guadahortuna</ opt ion>744
745 <opt ion value="18089" >Guadix</ opt ion>746
747 <opt ion value="18906" >Guajares ( l o s )</ opt ion>748
749 <opt ion value="18093" >Gualchos</ opt ion>750
751 <opt ion value="18160" >Guejar s i e r r a</ opt ion>752
753
754 <opt ion value="18094" >Güejar s i e r r a</ opt ion>755
756 <opt ion value="18212" >Güevejar</ opt ion>757
758 <opt ion value="18095" >Güevejar</ opt ion>759
760 <opt ion value="18880" >Hernan v a l l e</ opt ion>761
762 <opt ion value="18096" >Huelago</ opt ion>763
764 <opt ion value="18097" >Hueneja</ opt ion>765
766
767 <opt ion value="18098" >Huescar</ opt ion>768
769 <opt ion value="18099" >Huetor s a n t i l l a n</ opt ion>770
771 <opt ion value="18100" >Huetor t a j a r</ opt ion>772
773 <opt ion value="18360" >Huetor t a j a r</ opt ion>774
775 <opt ion value="18198" >Huetor vega</ opt ion>776
777 <opt ion value="18101" >Huetor vega</ opt ion>778
779
780 <opt ion value="18102" >I l l o r a</ opt ion>781
782 <opt ion value="18103" >It rabo</ opt ion>783
784 <opt ion value="18105" >I z n a l l o z</ opt ion>785
786 <opt ion value="18107" >Jayena</ opt ion>787
788 <opt ion value="18108" >Jerez de l marquesado</ opt ion>789
790 <opt ion value="18109" >Jete</ opt ion>791
792
793 <opt ion value="18111" >Jun</ opt ion>794
795 <opt ion value="18213" >Jun</ opt ion>796
797 <opt ion value="18112" >Juv i l e s</ opt ion>798
799 <opt ion value="18115" >Lachar</ opt ion>800
801 <opt ion value="18116" >Lanjaron</ opt ion>802
246 Apéndice B. Ficheros desarrollados para la aplicación
803 <opt ion value="18117" >Lante i ra</ opt ion>804
805
806 <opt ion value="18914" >Laro l e s</ opt ion>807
808 <opt ion value="18119" >Lecr in</ opt ion>809
810 <opt ion value="18120" >Lenteg i</ opt ion>811
812 <opt ion value="18121" >Lobras</ opt ion>813
814 <opt ion value="18122" >Loja</ opt ion>815
816 <opt ion value="18123" >Lugros</ opt ion>817
818
819 <opt ion value="18124" >Lujar</ opt ion>820
821 <opt ion value="18615" >Los guá ja r e s</ opt ion>822
823 <opt ion value="18126" >Malaha ( l a )</ opt ion>824
825 <opt ion value="18127" >Maracena</ opt ion>826
827 <opt ion value="18128" >Marchal</ opt ion>828
829 <opt ion value="18450" >Mecina bombaron</ opt ion>830
831
832 <opt ion value="18916" >Meleg i s</ opt ion>833
834 <opt ion value="18132" >Moclin</ opt ion>835
836 <opt ion value="18133" >Molvizar</ opt ion>837
838 <opt ion value="18134" >Monachil</ opt ion>839
840 <opt ion value="18135" >Montefr io</ opt ion>841
842 <opt ion value="18136" >Montej icar</ opt ion>843
844
845 <opt ion value="18137" >Monti l lana</ opt ion>846
847 <opt ion value="18138" >Moraleda de zafayona</ opt ion>848
849 <opt ion value="18921" >Moreda</ opt ion>850
851 <opt ion value="18909" >Morelabor</ opt ion>852
853 <opt ion value="18140" >Motr i l</ opt ion>854
855 <opt ion value="18915" >Murchas</ opt ion>856
857
858 <opt ion value="18141" >Murtas</ opt ion>859
860 <opt ion value="18903" >Nevada</ opt ion>861
862 <opt ion value="18143" >Nigüe las</ opt ion>863
864 <opt ion value="18144" >Nivar</ opt ion>865
866 <opt ion value="18293" >Obei la r</ opt ion>
B.3. Directorio de gestión del canal de retorno 247
867
868 <opt ion value="18145" >Og i j a r e s</ opt ion>869
870
871 <opt ion value="18146" >Orce</ opt ion>872
873 <opt ion value="18147" >Orgiva</ opt ion>874
875 <opt ion value="18148" >Otivar</ opt ion>876
877 <opt ion value="18149" >Otura</ opt ion>878
879 <opt ion value="18150" >Padul</ opt ion>880
881 <opt ion value="18151" >Pampaneira</ opt ion>882
883
884 <opt ion value="18152" >Pedro mart inez</ opt ion>885
886 <opt ion value="18153" >Pe l i g r o s</ opt ion>887
888 <opt ion value="18154" >Peza ( l a )</ opt ion>889
890 <opt ion value="18328" >Peñuelas</ opt ion>891
892 <opt ion value="18910" >Pinar ( e l )</ opt ion>893
894 <opt ion value="18918" >Pinos de l v a l l e</ opt ion>895
896
897 <opt ion value="18157" >Pinos g e n i l</ opt ion>898
899 <opt ion value="18158" >Pinos puente</ opt ion>900
901 <opt ion value="18922" >P i t r e s</ opt ion>902
903 <opt ion value="18159" >Piñar</ opt ion>904
905 <opt ion value="18161" >Po l i c a r</ opt ion>906
907 <opt ion value="18162" >Polopos</ opt ion>908
909
910 <opt ion value="18163" >Portugos</ opt ion>911
912 <opt ion value="18164" >Puebla de don f ad r i que</ opt ion>913
914 <opt ion value="18165" >Pul ianas</ opt ion>915
916 <opt ion value="18167" >Purul lena</ opt ion>917
918 <opt ion value="18168" >Quentar</ opt ion>919
920 <opt ion value="18170" >Rubite</ opt ion>921
922
923 <opt ion value="18171" >Sa la r</ opt ion>924
925 <opt ion value="18917" >Sa l e r e s</ opt ion>926
927 <opt ion value="18173" >Salobreña</ opt ion>928
929 <opt ion value="18174" >Santa cruz de l comercio</ opt ion>930
248 Apéndice B. Ficheros desarrollados para la aplicación
931 <opt ion value="18175" >Santa f e</ opt ion>932
933 <opt ion value="18176" >Soportu jar</ opt ion>934
935
936 <opt ion value="18177" >Sorv i l an</ opt ion>937
938 <opt ion value="18901" >Taha ( l a )</ opt ion>939
940 <opt ion value="18248" >Tiena</ opt ion>941
942 <opt ion value="18178" >Torre−ca rde l a</ opt ion>943
944 <opt ion value="18179" >Torvizcon</ opt ion>945
946 <opt ion value="18180" >Treve l ez</ opt ion>947
948
949 <opt ion value="18181" >Turon</ opt ion>950
951 <opt ion value="18182" >Ugi ja r</ opt ion>952
953 <opt ion value="18250" >Valderrubio</ opt ion>954
955 <opt ion value="18902" >Val l e ( e l )</ opt ion>956
957 <opt ion value="18907" >Val l e de l z a l a b i</ opt ion>958
959 <opt ion value="18183" >Valor</ opt ion>960
961
962 <opt ion value="18911" >Vegas de l g e n i l</ opt ion>963
964 <opt ion value="18184" >Velez de benaudal la</ opt ion>965
966 <opt ion value="18185" >Ventas de huelma</ opt ion>967
968 <opt ion value="18125" >Ventas de za f a r raya</ opt ion>969
970 <opt ion value="18908" >Villamena</ opt ion>971
972 <opt ion value="18187" >Vi l lanueva de l a s t o r r e s</ opt ion>
973
974
975 <opt ion value="18188" >Vi l lanueva mesia</ opt ion>976
977 <opt ion value="18189" >Viznar</ opt ion>978
979 <opt ion value="18919" >Yegen</ opt ion>980
981 <opt ion value="18192" >Zafarraya</ opt ion>982
983 <opt ion value="18913" >Zagra</ opt ion>984
985 <opt ion value="18193" >Zubia ( l a )</ opt ion>986
987
988 <opt ion value="18194" >Zujar</ opt ion>989
990 </ prov inc i a>991
992 <!−− Huelva −−>993 <prov inc i a cp="21">
B.3. Directorio de gestión del canal de retorno 249
994 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>995
996
997 <opt ion value="21001" >Ala ja r</ opt ion>998
999 <opt ion value="21002" >Aljaraque</ opt ion>1000
1001 <opt ion value="21003" >Almendro ( e l )</ opt ion>1002
1003 <opt ion value="21004" >Almonaster l a r e a l</ opt ion>1004
1005 <opt ion value="21005" >Almonte</ opt ion>1006
1007 <opt ion value="21006" >Alosno</ opt ion>1008
1009
1010 <opt ion value="21007" >Aracena</ opt ion>1011
1012 <opt ion value="21008" >Aroche</ opt ion>1013
1014 <opt ion value="21009" >Arroyomolinos de l eon</ opt ion>1015
1016 <opt ion value="21010" >Ayamonte</ opt ion>1017
1018 <opt ion value="21011" >Beas</ opt ion>1019
1020 <opt ion value="21012" >Berroca l</ opt ion>1021
1022
1023 <opt ion value="21013" >Bo l l u l l o s par de l condado</opt ion>
1024
1025 <opt ion value="21014" >Bonares</ opt ion>1026
1027 <opt ion value="21015" >Cabezas rub ia s</ opt ion>1028
1029 <opt ion value="21016" >Cala</ opt ion>1030
1031 <opt ion value="21017" >Calañas</ opt ion>1032
1033 <opt ion value="21018" >Campillo ( e l )</ opt ion>1034
1035
1036 <opt ion value="21019" >Campofrio</ opt ion>1037
1038 <opt ion value="21021" >Cartaya</ opt ion>1039
1040 <opt ion value="21022" >Castaño de l rob ledo</ opt ion>1041
1042 <opt ion value="21020" >Cañaveral de l eon</ opt ion>1043
1044 <opt ion value="21023" >Cerro de andevalo ( e l )</ opt ion>1045
1046 <opt ion value="21030" >Chucena</ opt ion>1047
1048
1049 <opt ion value="21024" >Corteconcepc ion</ opt ion>1050
1051 <opt ion value="21025" >Cortegana</ opt ion>1052
1053 <opt ion value="21026" >Corte l a zo r</ opt ion>1054
1055 <opt ion value="21027" >Cumbres de enmedio</ opt ion>1056
250 Apéndice B. Ficheros desarrollados para la aplicación
1057 <opt ion value="21028" >Cumbres de san bartolome</ opt ion>
1058
1059 <opt ion value="21029" >Cumbres mayores</ opt ion>1060
1061
1062 <opt ion value="21031" >Encinaso la</ opt ion>1063
1064 <opt ion value="21032" >Escacena de l campo</ opt ion>1065
1066 <opt ion value="21033" >Fuenteher idos</ opt ion>1067
1068 <opt ion value="21034" >Galaroza</ opt ion>1069
1070 <opt ion value="21035" >Gibraleon</ opt ion>1071
1072 <opt ion value="21036" >Granada de r i o t i n t o ( l a )</opt ion>
1073
1074
1075 <opt ion value="21037" >Granado ( e l )</ opt ion>1076
1077 <opt ion value="21038" >Higuera de l a s i e r r a</ opt ion>1078
1079 <opt ion value="21039" >Hino j a l e s</ opt ion>1080
1081 <opt ion value="21040" >Hinojos</ opt ion>1082
1083 <opt ion value="21041" >Huelva</ opt ion>1084
1085 <opt ion value="21042" >I s l a c r i s t i n a</ opt ion>1086
1087
1088 <opt ion value="21043" >Jabugo</ opt ion>1089
1090 <opt ion value="21044" >Lepe</ opt ion>1091
1092 <opt ion value="21045" >Linare s de l a s i e r r a</ opt ion>1093
1094 <opt ion value="21046" >Lucena de l puerto</ opt ion>1095
1096 <opt ion value="21047" >Manzani l la</ opt ion>1097
1098 <opt ion value="21048" >Marines ( l o s )</ opt ion>1099
1100
1101 <opt ion value="21208" >Marines ( l o s )</ opt ion>1102
1103 <opt ion value="21760" >Matalascaqas</ opt ion>1104
1105 <opt ion value="21130" >Mazagon</ opt ion>1106
1107 <opt ion value="21559" >Minas de h e r r e r i a s</ opt ion>1108
1109 <opt ion value="21049" >Minas de r i o t i n t o</ opt ion>1110
1111 <opt ion value="21530" >Minas de t h a r s i s</ opt ion>1112
1113
1114 <opt ion value="21050" >Moguer</ opt ion>1115
1116 <opt ion value="21500" >Minas de t h a r s i s</ opt ion>1117
1118 <opt ion value="21051" >Nava ( l a )</ opt ion>
B.3. Directorio de gestión del canal de retorno 251
1119
1120 <opt ion value="21052" >Nerva</ opt ion>1121
1122 <opt ion value="21053" >Niebla</ opt ion>1123
1124 <opt ion value="21054" >Palma de l condado ( l a )</ opt ion>1125
1126
1127 <opt ion value="21055" >Palos de l a f r on t e r a</ opt ion>1128
1129 <opt ion value="21056" >Paterna de l campo</ opt ion>1130
1131 <opt ion value="21057" >Paymogo</ opt ion>1132
1133 <opt ion value="21459" >Po r t i l ( e l )</ opt ion>1134
1135 <opt ion value="21058" >Puebla de guzman</ opt ion>1136
1137 <opt ion value="21059" >Puerto moral</ opt ion>1138
1139
1140 <opt ion value="21060" >Punta umbria</ opt ion>1141
1142 <opt ion value="21430" >Redondela ( l a )</ opt ion>1143
1144 <opt ion value="21061" >Rociana de l condado</ opt ion>1145
1146 <opt ion value="21062" >Rosal de l a f r on t e r a</ opt ion>1147
1148 <opt ion value="21063" >San bartolome de l a t o r r e</opt ion>
1149
1150 <opt ion value="21064" >San juan de l puerto</ opt ion>1151
1152
1153 <opt ion value="21066" >San s i l v e s t r e de guzman</ opt ion>1154
1155 <opt ion value="21330" >San telmo</ opt ion>1156
1157 <opt ion value="21065" >Sanlucar de guadiana</ opt ion>1158
1159 <opt ion value="21067" >Santa ana l a r e a l</ opt ion>1160
1161 <opt ion value="21068" >Santa barbara de casa</ opt ion>1162
1163 <opt ion value="21069" >Santa o l a l l a de l ca l a</ opt ion>1164
1165
1166 <opt ion value="21070" >Tr igueros</ opt ion>1167
1168 <opt ion value="21207" >Umbria ( l a )</ opt ion>1169
1170 <opt ion value="21071" >Valde la rco</ opt ion>1171
1172 <opt ion value="21072" >Valverde de l camino</ opt ion>1173
1174 <opt ion value="21073" >Vi l l ab l anca</ opt ion>1175
1176 <opt ion value="21074" >V i l l a l b a de l a l c o r</ opt ion>1177
1178
1179 <opt ion value="21075" >Vi l lanueva de l a s c ruce s</ opt ion>
1180
252 Apéndice B. Ficheros desarrollados para la aplicación
1181 <opt ion value="21076" >Vi l lanueva de l o s c a s t i l l e j o s</opt ion>
1182
1183 <opt ion value="21077" >V i l l a r r a s a</ opt ion>1184
1185 <opt ion value="21078" >Zalamea l a r e a l</ opt ion>1186
1187 <opt ion value="21079" >Zufre</ opt ion>1188
1189 </ prov inc i a>1190
1191
1192 <!−− Jaén −−>1193 <prov inc i a cp="23">1194 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>1195
1196
1197 <opt ion value="23001" >Albanchez de magina</ opt ion>1198
1199 <opt ion value="23002" >Alca la l a r e a l</ opt ion>1200
1201 <opt ion value="23003" >Alcaudete</ opt ion>1202
1203 <opt ion value="23004" >Aldeaquemada</ opt ion>1204
1205 <opt ion value="23005" >Andujar</ opt ion>1206
1207 <opt ion value="23006" >Arjona</ opt ion>1208
1209
1210 <opt ion value="23007" >Ar j o n i l l a</ opt ion>1211
1212 <opt ion value="23008" >Arqu i l l o s</ opt ion>1213
1214 <opt ion value="23905" >Arroyo de l o janco</ opt ion>1215
1216 <opt ion value="23009" >Baeza</ opt ion>1217
1218 <opt ion value="23010" >Bai len</ opt ion>1219
1220 <opt ion value="23011" >Baños de l a enc ina</ opt ion>1221
1222
1223 <opt ion value="23012" >Beas de segura</ opt ion>1224
1225 <opt ion value="23902" >Bedmar y ga r c i e z</ opt ion>1226
1227 <opt ion value="23014" >Beg i j a r</ opt ion>1228
1229 <opt ion value="23015" >Belmez de l a moraleda</ opt ion>1230
1231 <opt ion value="23016" >Benatae</ opt ion>1232
1233 <opt ion value="23017" >Cabra de l santo c r i s t o</ opt ion>1234
1235
1236 <opt ion value="23018" >Cambil</ opt ion>1237
1238 <opt ion value="23019" >Campillo de arenas</ opt ion>1239
1240 <opt ion value="23020" >Canena</ opt ion>1241
1242 <opt ion value="23021" >Carboneros</ opt ion>1243
B.3. Directorio de gestión del canal de retorno 253
1244 <opt ion value="23901" >Carche le s</ opt ion>1245
1246 <opt ion value="23024" >Caro l ina ( l a )</ opt ion>1247
1248
1249 <opt ion value="23025" >Ca s t e l l a r</ opt ion>1250
1251 <opt ion value="23026" >Ca s t i l l o de locub in</ opt ion>1252
1253 <opt ion value="23027" >Ca z a l i l l a</ opt ion>1254
1255 <opt ion value="23028" >Cazorla</ opt ion>1256
1257 <opt ion value="23029" >Chiclana de segura</ opt ion>1258
1259 <opt ion value="23030" >Chi l l u eva r</ opt ion>1260
1261
1262 <opt ion value="23031" >Escañuela</ opt ion>1263
1264 <opt ion value="23032" >Espeluy</ opt ion>1265
1266 <opt ion value="23033" >F r a i l e s</ opt ion>1267
1268 <opt ion value="23034" >Fuensanta de martos</ opt ion>1269
1270 <opt ion value="23035" >Fuerte de l rey</ opt ion>1271
1272 <opt ion value="23037" >Genave</ opt ion>1273
1274
1275 <opt ion value="23038" >Guardia de jaen ( l a )</ opt ion>1276
1277 <opt ion value="23039" >Guarroman</ opt ion>1278
1279 <opt ion value="23041" >Higuera de ca l a t r ava</ opt ion>1280
1281 <opt ion value="23042" >Hino ja re s</ opt ion>1282
1283 <opt ion value="23043" >Hornos</ opt ion>1284
1285 <opt ion value="23044" >Huelma</ opt ion>1286
1287
1288 <opt ion value="23045" >Huesa</ opt ion>1289
1290 <opt ion value="23046" >Ibro s</ opt ion>1291
1292 <opt ion value="23639" >In fan ta s ( l a s )</ opt ion>1293
1294 <opt ion value="23047" >I r u e l a ( l a )</ opt ion>1295
1296 <opt ion value="23048" >I zna t o r a f</ opt ion>1297
1298 <opt ion value="23049" >Jaba lqu into</ opt ion>1299
1300
1301 <opt ion value="23050" >Jaen</ opt ion>1302
1303 <opt ion value="23051" >Jamilena</ opt ion>1304
1305 <opt ion value="23052" >Jimena</ opt ion>1306
1307 <opt ion value="23053" >Jodar</ opt ion>
254 Apéndice B. Ficheros desarrollados para la aplicación
1308
1309 <opt ion value="23040" >Lahiguera</ opt ion>1310
1311 <opt ion value="23054" >Larva</ opt ion>1312
1313
1314 <opt ion value="23055" >Linare s</ opt ion>1315
1316 <opt ion value="23056" >Lopera</ opt ion>1317
1318 <opt ion value="23057" >Lupion</ opt ion>1319
1320 <opt ion value="23058" >Mancha r e a l</ opt ion>1321
1322 <opt ion value="23059" >Marmolejo</ opt ion>1323
1324 <opt ion value="23060" >Martos</ opt ion>1325
1326
1327 <opt ion value="23061" >Mengibar</ opt ion>1328
1329 <opt ion value="23062" >Montizon</ opt ion>1330
1331 <opt ion value="23063" >Navas de san juan</ opt ion>1332
1333 <opt ion value="23212" >Navas de t o l o s a</ opt ion>1334
1335 <opt ion value="23340" >No usar</ opt ion>1336
1337 <opt ion value="23906" >No u t i l i z a r usar e l 23903</opt ion>
1338
1339
1340 <opt ion value="23064" >Noale jo</ opt ion>1341
1342 <opt ion value="23065" >Orcera</ opt ion>1343
1344 <opt ion value="23066" >Peal de bece r ro</ opt ion>1345
1346 <opt ion value="23067" >Pega la ja r</ opt ion>1347
1348 <opt ion value="23069" >Porcuna</ opt ion>1349
1350 <opt ion value="23070" >Pozo a lcon</ opt ion>1351
1352
1353 <opt ion value="23071" >Puente de genave</ opt ion>1354
1355 <opt ion value="23072" >Puerta de segura ( l a )</ opt ion>1356
1357 <opt ion value="23073" >Quesada</ opt ion>1358
1359 <opt ion value="23074" >Rus</ opt ion>1360
1361 <opt ion value="23075" >Sabiote</ opt ion>1362
1363 <opt ion value="23076" >Santa e l ena</ opt ion>1364
1365
1366 <opt ion value="23077" >Sant iago de ca l a t r ava</ opt ion>1367
1368 <opt ion value="23904" >Santiago−pontones</ opt ion>1369
1370 <opt ion value="23079" >Sant i s teban de l puerto</ opt ion>
B.3. Directorio de gestión del canal de retorno 255
1371
1372 <opt ion value="23080" >Santo tome</ opt ion>1373
1374 <opt ion value="23081" >Segura de l a s i e r r a</ opt ion>1375
1376 <opt ion value="23082" >S i l e s</ opt ion>1377
1378
1379 <opt ion value="23084" >Sor ihue l a de l guadalimar</ opt ion>
1380
1381 <opt ion value="23085" >Torreb lascopedro</ opt ion>1382
1383 <opt ion value="23086" >Torredelcampo</ opt ion>1384
1385 <opt ion value="23087" >Torredonjimeno</ opt ion>1386
1387 <opt ion value="23088" >Tor r epe rog i l</ opt ion>1388
1389 <opt ion value="23090" >Torres</ opt ion>1390
1391
1392 <opt ion value="23091" >Torres de albanchez</ opt ion>1393
1394 <opt ion value="23092" >Ubeda</ opt ion>1395
1396 <opt ion value="23093" >Valdepeñas de jaen</ opt ion>1397
1398 <opt ion value="23094" >Vi l che s</ opt ion>1399
1400 <opt ion value="23095" >V i l l a c a r r i l l o</ opt ion>1401
1402 <opt ion value="23096" >Vi l lanueva de l a r e i na</ opt ion>1403
1404
1405 <opt ion value="23097" >Vi l lanueva de l a rzob i spo</ opt ion>
1406
1407 <opt ion value="23098" >Vil lardompardo</ opt ion>1408
1409 <opt ion value="23099" >V i l l a r e s ( l o s )</ opt ion>1410
1411 <opt ion value="23101" >V i l l a r r o d r i g o</ opt ion>1412
1413 <opt ion value="23903" >V i l l a t o r r e s</ opt ion>1414
1415 </ prov inc i a>1416
1417
1418 <!−− Málaga −−>1419 <prov inc i a cp="29">1420
1421 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>1422
1423
1424 <opt ion value="29001" >Alameda</ opt ion>1425
1426 <opt ion value="29002" >Alcaucin</ opt ion>1427
1428 <opt ion value="29003" >Al fa rnate</ opt ion>1429
1430 <opt ion value="29004" >Al f a rna t e j o</ opt ion>1431
1432 <opt ion value="29005" >Algarrobo</ opt ion>
256 Apéndice B. Ficheros desarrollados para la aplicación
1433
1434 <opt ion value="29006" >Algatoc in</ opt ion>1435
1436
1437 <opt ion value="29007" >Alhaurin de l a t o r r e</ opt ion>1438
1439 <opt ion value="29008" >Alhaurin e l grande</ opt ion>1440
1441 <opt ion value="29009" >Almachar</ opt ion>1442
1443 <opt ion value="29010" >Almargen</ opt ion>1444
1445 <opt ion value="29749" >Almayate</ opt ion>1446
1447 <opt ion value="29011" >Almogia</ opt ion>1448
1449
1450 <opt ion value="29012" >Alora</ opt ion>1451
1452 <opt ion value="29013" >Alozaina</ opt ion>1453
1454 <opt ion value="29014" >Alpandeire</ opt ion>1455
1456 <opt ion value="29015" >Antequera</ opt ion>1457
1458 <opt ion value="29016" >Archez</ opt ion>1459
1460 <opt ion value="29017" >Archidona</ opt ion>1461
1462
1463 <opt ion value="29018" >Ardales</ opt ion>1464
1465 <opt ion value="29019" >Arenas</ opt ion>1466
1467 <opt ion value="29020" >Arr i a t e</ opt ion>1468
1469 <opt ion value="29631" >Arroyo de l a mie l</ opt ion>1470
1471 <opt ion value="29021" >Atajate</ opt ion>1472
1473 <opt ion value="29022" >Benadal id</ opt ion>1474
1475
1476 <opt ion value="29738" >Benagalbon</ opt ion>1477
1478 <opt ion value="29023" >Benahavis</ opt ion>1479
1480 <opt ion value="29024" >Benalaur ia</ opt ion>1481
1482 <opt ion value="29025" >Benalmadena</ opt ion>1483
1484 <opt ion value="29026" >Benamargosa</ opt ion>1485
1486 <opt ion value="29027" >Benamocarra</ opt ion>1487
1488
1489 <opt ion value="29028" >Benaojan</ opt ion>1490
1491 <opt ion value="29029" >Benarraba</ opt ion>1492
1493 <opt ion value="29030" >Borge ( e l )</ opt ion>1494
1495 <opt ion value="29031" >Burgo ( e l )</ opt ion>1496
B.3. Directorio de gestión del canal de retorno 257
1497 <opt ion value="29720" >Cala de l moral ( l a )</ opt ion>1498
1499 <opt ion value="29751" >Caleta de v e l e z</ opt ion>1500
1501
1502 <opt ion value="29590" >Campanil las</ opt ion>1503
1504 <opt ion value="29032" >Campil los</ opt ion>1505
1506 <opt ion value="29033" >Can i l l a s de ace i tuno</ opt ion>1507
1508 <opt ion value="29034" >Can i l l a s de a lba ida</ opt ion>1509
1510 <opt ion value="29036" >Carratraca</ opt ion>1511
1512 <opt ion value="29037" >Cartajima</ opt ion>1513
1514
1515 <opt ion value="29038" >Cartama</ opt ion>1516
1517 <opt ion value="29570" >Cartama</ opt ion>1518
1519 <opt ion value="29039" >Casabermeja</ opt ion>1520
1521 <opt ion value="29040" >Casarabonela</ opt ion>1522
1523 <opt ion value="29041" >Casares</ opt ion>1524
1525 <opt ion value="29035" >Cañete l a r e a l</ opt ion>1526
1527
1528 <opt ion value="29904" >Churriana</ opt ion>1529
1530 <opt ion value="29042" >Coin</ opt ion>1531
1532 <opt ion value="29043" >Colmenar</ opt ion>1533
1534 <opt ion value="29044" >Comares</ opt ion>1535
1536 <opt ion value="29045" >Competa</ opt ion>1537
1538 <opt ion value="29046" >Cortes de l a f r on t e r a</ opt ion>1539
1540
1541 <opt ion value="29047" >Cuevas ba jas</ opt ion>1542
1543 <opt ion value="29049" >Cuevas de san marcos</ opt ion>1544
1545 <opt ion value="29048" >Cuevas de l bece r ro</ opt ion>1546
1547 <opt ion value="29050" >Cutar</ opt ion>1548
1549 <opt ion value="29051" >Estepona</ opt ion>1550
1551 <opt ion value="29052" >Farajan</ opt ion>1552
1553
1554 <opt ion value="29053" >F r i g i l i a n a</ opt ion>1555
1556 <opt ion value="29054" >Fueng i ro la</ opt ion>1557
1558 <opt ion value="29055" >Fuente de p iedra</ opt ion>1559
1560 <opt ion value="29056" >Gaucin</ opt ion>
258 Apéndice B. Ficheros desarrollados para la aplicación
1561
1562 <opt ion value="29057" >Gena lguac i l</ opt ion>1563
1564 <opt ion value="29058" >Guaro</ opt ion>1565
1566
1567 <opt ion value="29059" >Humil ladero</ opt ion>1568
1569 <opt ion value="29060" >I gua l e j a</ opt ion>1570
1571 <opt ion value="29061" >Is tan</ opt ion>1572
1573 <opt ion value="29062" >Iznate</ opt ion>1574
1575 <opt ion value="29063" >Jimera de l i b a r</ opt ion>1576
1577 <opt ion value="29064" >Jubrique</ opt ion>1578
1579
1580 <opt ion value="29065" >Juzcar</ opt ion>1581
1582 <opt ion value="29066" >Macharaviaya</ opt ion>1583
1584 <opt ion value="29067" >Malaga</ opt ion>1585
1586 <opt ion value="29068" >Manilva</ opt ion>1587
1588 <opt ion value="29591" >Maqueda</ opt ion>1589
1590 <opt ion value="29069" >Marbel la</ opt ion>1591
1592
1593 <opt ion value="29070" >Mijas</ opt ion>1594
1595 <opt ion value="29651" >Mijas</ opt ion>1596
1597 <opt ion value="29071" >Mocl ine jo</ opt ion>1598
1599 <opt ion value="29072" >Mol l ina</ opt ion>1600
1601 <opt ion value="29073" >Monda</ opt ion>1602
1603 <opt ion value="29074" >Montejaque</ opt ion>1604
1605
1606 <opt ion value="29075" >Nerja</ opt ion>1607
1608 <opt ion value="29076" >Ojen</ opt ion>1609
1610 <opt ion value="29077" >Parauta</ opt ion>1611
1612 <opt ion value="29079" >Periana</ opt ion>1613
1614 <opt ion value="29080" >Pizar ra</ opt ion>1615
1616 <opt ion value="29190" >Puerto de l a t o r r e</ opt ion>1617
1618
1619 <opt ion value="29081" >Pujerra</ opt ion>1620
1621 <opt ion value="29082" >Rincon de l a v i c t o r i a</ opt ion>1622
1623 <opt ion value="29083" >Riogordo</ opt ion>1624
B.3. Directorio de gestión del canal de retorno 259
1625 <opt ion value="29084" >Ronda</ opt ion>1626
1627 <opt ion value="29085" >Sa l a r e s</ opt ion>1628
1629 <opt ion value="29670" >San pedro a l can ta ra</ opt ion>1630
1631
1632 <opt ion value="29086" >Sayalonga</ opt ion>1633
1634 <opt ion value="29087" >Sede l l a</ opt ion>1635
1636 <opt ion value="29088" >S i e r r a de yeguas</ opt ion>1637
1638 <opt ion value="29089" >Teba</ opt ion>1639
1640 <opt ion value="29090" >Tolox</ opt ion>1641
1642 <opt ion value="29101" >Torre de l mar</ opt ion>1643
1644
1645 <opt ion value="29901" >Torremol inos</ opt ion>1646
1647 <opt ion value="29091" >Torrox</ opt ion>1648
1649 <opt ion value="29092" >Totalan</ opt ion>1650
1651 <opt ion value="29093" >Val l e de abda l a j i s</ opt ion>1652
1653 <opt ion value="29094" >Velez−malaga</ opt ion>1654
1655 <opt ion value="29095" >Vi l lanueva de a l g a i da s</ opt ion>1656
1657
1658 <opt ion value="29230" >Vi l lanueva de l a concepc ion</opt ion>
1659
1660 <opt ion value="29113" >Vi l lanueva de l a concepc ión</opt ion>
1661
1662 <opt ion value="29098" >Vi l lanueva de tap ia</ opt ion>1663
1664 <opt ion value="29096" >Vi l lanueva de l r o s a r i o</ opt ion>1665
1666 <opt ion value="29097" >Vi l lanueva de l trabuco</ opt ion>1667
1668 <opt ion value="29099" >Viñuela</ opt ion>1669
1670
1671 <opt ion value="29100" >Yunquera</ opt ion>1672
1673 <opt ion value="29902" >Zubia ( l a )</ opt ion>1674 </ prov inc i a>1675
1676
1677 <!−− S e v i l l a −−>1678 <prov inc i a cp="41">1679 <opt ion value="−1">−−Todos l o s munic ip ios−−</opt ion>1680
1681
1682 <opt ion value="41001" >Aguadulce</ opt ion>1683
1684 <opt ion value="41002" >Alan i s</ opt ion>1685
1686 <opt ion value="41003" >Albaida de l a l j a r a f e</ opt ion>
260 Apéndice B. Ficheros desarrollados para la aplicación
1687
1688 <opt ion value="41004" >Alca la de guadaira</ opt ion>1689
1690 <opt ion value="41005" >Alca la de l r i o</ opt ion>1691
1692 <opt ion value="41006" >Alco l ea de l r i o</ opt ion>1693
1694
1695 <opt ion value="41007" >Algaba ( l a )</ opt ion>1696
1697 <opt ion value="41008" >Algamitas</ opt ion>1698
1699 <opt ion value="41009" >Almaden de l a p la ta</ opt ion>1700
1701 <opt ion value="41010" >Almens i l l a</ opt ion>1702
1703 <opt ion value="41011" >Arahal</ opt ion>1704
1705 <opt ion value="41012" >Aznalcazar</ opt ion>1706
1707
1708 <opt ion value="41013" >Azna l c o l l a r</ opt ion>1709
1710 <opt ion value="41014" >Badolatosa</ opt ion>1711
1712 <opt ion value="41015" >Benacazon</ opt ion>1713
1714 <opt ion value="41016" >Bo l l u l l o s de l a mitac ion</ opt ion>
1715
1716 <opt ion value="41017" >Bormujos</ opt ion>1717
1718 <opt ion value="41018" >Brenes</ opt ion>1719
1720
1721 <opt ion value="41019" >Burgu i l l o s</ opt ion>1722
1723 <opt ion value="41020" >Cabezas de san juan ( l a s )</opt ion>
1724
1725 <opt ion value="41021" >Camas</ opt ion>1726
1727 <opt ion value="41022" >Campana ( l a )</ opt ion>1728
1729 <opt ion value="41023" >Cant i l l ana</ opt ion>1730
1731 <opt ion value="41024" >Carmona</ opt ion>1732
1733
1734 <opt ion value="41025" >Carrion de l o s cespedes</ opt ion>1735
1736 <opt ion value="41026" >Casar iche</ opt ion>1737
1738 <opt ion value="41027" >Cas t i l b l anco de l o s ar royos</opt ion>
1739
1740 <opt ion value="41028" >Ca s t i l l e j a de guzman</ opt ion>1741
1742 <opt ion value="41029" >Ca s t i l l e j a de l a cues ta</ opt ion>1743
1744 <opt ion value="41030" >Ca s t i l l e j a de l campo</ opt ion>1745
1746
B.3. Directorio de gestión del canal de retorno 261
1747 <opt ion value="41031" >Ca s t i l l o de l a s guardas ( e l )</opt ion>
1748
1749 <opt ion value="41032" >Caza l la de l a s i e r r a</ opt ion>1750
1751 <opt ion value="41901" >Cañada r o s a l</ opt ion>1752
1753 <opt ion value="41033" >Constantina</ opt ion>1754
1755 <opt ion value="41034" >Coria de l r i o</ opt ion>1756
1757 <opt ion value="41035" >Coripe</ opt ion>1758
1759
1760 <opt ion value="41036" >Coron i l ( e l )</ opt ion>1761
1762 <opt ion value="41037" >Corra l e s ( l o s )</ opt ion>1763
1764 <opt ion value="41903" >Cuervo de s e v i l l a ( e l )</ opt ion>1765
1766 <opt ion value="41201" >Desconocido</ opt ion>1767
1768 <opt ion value="41038" >Dos hermanas</ opt ion>1769
1770 <opt ion value="41039" >Ec i j a</ opt ion>1771
1772
1773 <opt ion value="41040" >Espart inas</ opt ion>1774
1775 <opt ion value="41041" >Estepa</ opt ion>1776
1777 <opt ion value="41042" >Fuentes de anda luc ia</ opt ion>1778
1779 <opt ion value="41043" >Garrobo ( e l )</ opt ion>1780
1781 <opt ion value="41044" >Gelves</ opt ion>1782
1783 <opt ion value="41045" >Gerena</ opt ion>1784
1785
1786 <opt ion value="41046" >Gilena</ opt ion>1787
1788 <opt ion value="41047" >Gines</ opt ion>1789
1790 <opt ion value="41048" >Guadalcanal</ opt ion>1791
1792 <opt ion value="41049" >Gui l l ena</ opt ion>1793
1794 <opt ion value="41050" >Herrera</ opt ion>1795
1796 <opt ion value="41051" >Huevar</ opt ion>1797
1798
1799 <opt ion value="41902" >I s l a mayor</ opt ion>1800
1801 <opt ion value="41052" >Lante jue la ( l a )</ opt ion>1802
1803 <opt ion value="41053" >Lebr i j a</ opt ion>1804
1805 <opt ion value="41054" >Lora de es tepa</ opt ion>1806
1807 <opt ion value="41055" >Lora de l r i o</ opt ion>1808
1809 <opt ion value="41056" >Luis iana ( l a )</ opt ion>
262 Apéndice B. Ficheros desarrollados para la aplicación
1810
1811
1812 <opt ion value="41057" >Madroño ( e l )</ opt ion>1813
1814 <opt ion value="41058" >Mairena de l a l c o r</ opt ion>1815
1816 <opt ion value="41059" >Mairena de l a l j a r a f e</ opt ion>1817
1818 <opt ion value="41060" >Marchena</ opt ion>1819
1820 <opt ion value="41061" >Marinaleda</ opt ion>1821
1822 <opt ion value="41062" >Martin de l a j a r a</ opt ion>1823
1824
1825 <opt ion value="41063" >Molares ( l o s )</ opt ion>1826
1827 <opt ion value="41064" >Montel lano</ opt ion>1828
1829 <opt ion value="41065" >Moron de l a f r on t e r a</ opt ion>1830
1831 <opt ion value="41066" >Navas de l a concepc ion ( l a s )</opt ion>
1832
1833 <opt ion value="41202" >No de f i n i d o</ opt ion>1834
1835 <opt ion value="41067" >Ol iva r e s</ opt ion>1836
1837
1838 <opt ion value="41068" >Osuna</ opt ion>1839
1840 <opt ion value="41069" >Pa lac i o s y v i l l a f r a n c a ( l o s )</opt ion>
1841
1842 <opt ion value="41070" >Palomares de l r i o</ opt ion>1843
1844 <opt ion value="41071" >Paradas</ opt ion>1845
1846 <opt ion value="41072" >Pedrera</ opt ion>1847
1848 <opt ion value="41073" >Pedroso ( e l )</ opt ion>1849
1850
1851 <opt ion value="41074" >Peña f l o r</ opt ion>1852
1853 <opt ion value="41075" >P i l a s</ opt ion>1854
1855 <opt ion value="41076" >Pruna</ opt ion>1856
1857 <opt ion value="41077" >Puebla de c a z a l l a ( l a )</ opt ion>1858
1859 <opt ion value="41078" >Puebla de l o s i n f a n t e s ( l a )</opt ion>
1860
1861 <opt ion value="41079" >Puebla de l r i o ( l a )</ opt ion>1862
1863
1864 <opt ion value="41080" >Real de l a j a r a ( e l )</ opt ion>1865
1866 <opt ion value="41081" >Rinconada ( l a )</ opt ion>1867
1868 <opt ion value="41082" >Roda de anda luc ia ( l a )</ opt ion>1869
1870 <opt ion value="41083" >Ronqui l lo ( e l )</ opt ion>
B.3. Directorio de gestión del canal de retorno 263
1871
1872 <opt ion value="41330" >Rosa les ( l o s )</ opt ion>1873
1874 <opt ion value="41084" >Rubio ( e l )</ opt ion>1875
1876
1877 <opt ion value="41085" >Sa l t e r a s</ opt ion>1878
1879 <opt ion value="41086" >San juan de azna l f a r a che</ opt ion>
1880
1881 <opt ion value="41088" >San n i c o l a s de l puerto</ opt ion>1882
1883 <opt ion value="41087" >Sanlucar l a mayor</ opt ion>1884
1885 <opt ion value="41089" >Santiponce</ opt ion>1886
1887 <opt ion value="41090" >Saucejo ( e l )</ opt ion>1888
1889
1890 <opt ion value="41091" >S e v i l l a</ opt ion>1891
1892 <opt ion value="41103" >Sin determinar</ opt ion>1893
1894 <opt ion value="41092" >Tocina</ opt ion>1895
1896 <opt ion value="41093" >Tomares</ opt ion>1897
1898 <opt ion value="41094" >Umbrete</ opt ion>1899
1900 <opt ion value="41095" >Utrera</ opt ion>1901
1902
1903 <opt ion value="41096" >Valencina de l a concepc ion</opt ion>
1904
1905 <opt ion value="41319" >Viar ( e l )</ opt ion>1906
1907 <opt ion value="41097" >Vi l lamanr ique de l a condesa</opt ion>
1908
1909 <opt ion value="41100" >Vi l lanueva de san juan</ opt ion>1910
1911 <opt ion value="41098" >Vi l lanueva de l a r i s c a l</ opt ion>1912
1913 <opt ion value="41099" >Vi l lanueva de l r i o y minas</opt ion>
1914
1915
1916 <opt ion value="41101" >Vi l l a v e rd e de l r i o</ opt ion>1917
1918 <opt ion value="41102" >Viso de l a l c o r ( e l )</ opt ion>1919
1920 </ prov inc i a>1921
1922 </ prov i n c i a s>
cursos_formacion.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>
264 Apéndice B. Ficheros desarrollados para la aplicación
2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp ://www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <preaction>25 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ formacion /ofertasFPE / ' ,/submiss ion / tipoCursoText , ' / d i spa t che r . html? s tep=s t o r e F i l t e r& ; t i c k e t=nocas ' ) "/>
26 </preaction>27 <action>28 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ formacion /ofertasFPE / ' ,/submiss ion / tipoCursoText , ' / l i s t adoCur so s . html? s tep=paginar& ; pg= ' ,/ submiss ion /pag ) "/>
29 </action>30 <cookies>yes</cookies>31 <xs l : c h o o s e>32 <xsl :when t e s t="/ submiss ion / t ipoCurso != 'AMP' ">33 <parameters>34 <parameter name=" tipoCurso ">35 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / t ipoCurso "/></x s l : a t t r i b u t e>
36 </parameter>37 <parameter name="tipoPrograma">38 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / i n i c i o "/></x s l : a t t r i b u t e>
39 </parameter>40 <parameter name=" prov inc i a ">41 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / prov inc i a "/></x s l : a t t r i b u t e>
42 </parameter>43 <parameter name="codMunicipio ">44 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion /munic ip io "/></x s l : a t t r i b u t e>
45 </parameter>46 <parameter name="cp" value=""></parameter>
B.3. Directorio de gestión del canal de retorno 265
47 <parameter name="denominacion" value=""></parameter>
48 <parameter name="numero" value=""></parameter>49 <parameter name=" ent idad " value=""></parameter>50 <parameter name=" codColec t ivo ">51 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / c o l e c t i v o "/></x s l : a t t r i b u t e>
52 </parameter>53 <parameter name=" p ra c t i c a ">54 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / p r a c t i c a s "/></x s l : a t t r i b u t e>
55 </parameter>56 <parameter name=" l i n ea sxpag ina " value="10"></
parameter>57 <parameter name=" f am i l i a ">58 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / f am i l i a "/></x s l : a t t r i b u t e>
59 </parameter>60 </parameters>61 </xs l :when>62 <x s l : o t h e rw i s e>63 <parameters>64 <parameter name=" tipoCurso ">65 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / t ipoCurso "/></x s l : a t t r i b u t e>
66 </parameter>67 <parameter name="tipoPrograma">68 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / i n i c i o "/></x s l : a t t r i b u t e>
69 </parameter>70 <parameter name=" prov inc i a ">71 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / prov inc i a "/></x s l : a t t r i b u t e>
72 </parameter>73 <parameter name="codMunicipio ">74 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion /munic ip io "/></x s l : a t t r i b u t e>
75 </parameter>76 <parameter name="denominacion" value=""></
parameter>77 <parameter name="numero" value=""></parameter>78 <parameter name=" codigo ">79 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t=" t r a n s l a t e (/ submiss ion / codigo , '' , '+ ' ) "/></ x s l : a t t r i b u t e>
80 </parameter>81 <parameter name=" ent idad " value=""></parameter>82 <parameter name=" l i n ea sxpag ina " value="10"></
parameter>83 <parameter name=" f am i l i a ">84 <x s l : a t t r i b u t e name="value "><xs l : v a l u e−o f
s e l e c t="/ submiss ion / f am i l i a "/></x s l : a t t r i b u t e>
85 </parameter>86 </parameters>87 </ x s l : o t h e rw i s e>88 </ x s l : c h o o s e>
266 Apéndice B. Ficheros desarrollados para la aplicación
89 <timeout>40</timeout>90 <content−type>text /html</content−type>91 <encoding>utf−8</encoding>92 </config>93 </ xs l : t emp l a t e>94 </ x s l : s t y l e s h e e t>95 </p: input>96 <p:output name="data" id="metodo_http"/>97 </ p :p r o c e s s o r>98
99 <!−− Método POST+GET (HTTP) −−>100 <p :p r o c e s s o r name="tmg:tm−http ">101 <p: input name=" con f i g " h r e f="#metodo_http"/>102 <p:output name="data" id="page"/>103 </ p :p r o c e s s o r>104
105 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>106 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">107 <p: input name=" con f i g ">108 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">109 <curso s>110 <x s l : f o r −each s e l e c t="// tab l e / t r ">111 <x s l : i f t e s t=" po s i t i o n ( ) !=1">112 <curso>113 <x s l : a t t r i b u t e name="nombre"><xs l : v a l u e−o f s e l e c t="
normal ize−space ( . / td [ 1 ] / a ) "/></ x s l : a t t r i b u t e>114 <x s l : a t t r i b u t e name=" ent idad "><xs l : v a l u e−o f s e l e c t="
. / td [ 2 ] "/></ x s l : a t t r i b u t e>115 <x s l : a t t r i b u t e name=" prov inc i a "><xs l : v a l u e−o f s e l e c t
=" . / td [ 3 ] "/></ x s l : a t t r i b u t e>116 <x s l : a t t r i b u t e name="munic ip io "><xs l : v a l u e−o f s e l e c t
=" . / td [ 4 ] "/></ x s l : a t t r i b u t e>117 <x s l : a t t r i b u t e name=" idCurso "><xs l : v a l u e−o f s e l e c t="
subst r ing−be f o r e ( subs t r ing−a f t e r ( . / td [ 1 ] / a/@href, ' idCurso= ') , '& ; pg= ')"/></ x s l : a t t r i b u t e>
118 <x s l : a t t r i b u t e name="pag"><xs l : v a l u e−o f s e l e c t="subst r ing−a f t e r ( . / td [ 1 ] / a/@href , '& ; pg= ')"/></x s l : a t t r i b u t e>
119 <x s l : a t t r i b u t e name=" l e t r a "><xs l : v a l u e−o f s e l e c t="subst r ing−be f o r e ( subs t r ing−a f t e r ( . / td [ 1 ] / a/@href, ' de ta l l eCurso ' ) , ' . html ' ) "/></ x s l : a t t r i b u t e>
120 </ curso>121 </ x s l : i f>122 </ x s l : f o r −each>123 </ cur so s>124 <paginas>125 <x s l : v a r i a b l e name=" tota l_pag inas ">126 <x s l : v a r i a b l e name="mostrandoXde" s e l e c t="// div [ @class='
centradoPaginacion ' ] / p [ 1 ] "/>127 <xs l : c h o o s e>128 <xsl :when t e s t="$mostrandoXde != ' ' ">129 <xs l : v a l u e−o f s e l e c t=" subst r ing−a f t e r ($mostrandoXde
, ' de ' ) "/>130 </xs l :when>131 <x s l : o t h e rw i s e>132 <x s l : t e x t>1</ x s l : t e x t>133 </ x s l : o t h e rw i s e>134 </ x s l : c h o o s e>135 </ x s l : v a r i a b l e>136
137 <pagina>138 <x s l : a t t r i b u t e name=" ac tua l ">1</ x s l : a t t r i b u t e>
B.3. Directorio de gestión del canal de retorno 267
139 <x s l : v a r i a b l e name="num_pag" s e l e c t="doc ( ' input :dat−in s tance ' ) / submiss ion /pag"/>
140 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="$num_pag"/></ x s l : a t t r i b u t e>
141 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$tota l_pag inas "/></ x s l : a t t r i b u t e>
142 </pagina>143 <x s l : f o r −each s e l e c t="// u l [ @class='paginacion ' ] / l i / span/a">144 <pagina>145 <x s l : a t t r i b u t e name=" ac tua l ">0</ x s l : a t t r i b u t e>146 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t=" text
( ) "/></ x s l : a t t r i b u t e>147 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="$
tota l_pag inas "/></ x s l : a t t r i b u t e>148 </pagina>149 </ x s l : f o r −each>150 </paginas>151 </ items>152 </p: input>153 <p: input name="data" h r e f="#page"/>154 <p: input name=" s e r v e r " h r e f="#se rv e r "/>155 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>156 <p:output name="data" id=" resu l tDesordenado "/>157 </ p :p r o c e s s o r>158
159 <!−− Procesador para ordenar l a s páginas −−>160 <p :p r o c e s s o r name=" o x f : x s l t ">161 <p: input name="data" h r e f="#resu l tDesordenado "/>162 <p: input name=" con f i g ">163 <x s l : s t y l e s h e e t version=" 2 .0 ">164 <xs l : t emp l a t e match="/">165 <items>166 <curso s>167 <xs l : app ly−templates s e l e c t="/ items / cur so s / curso "/>168 </ cur so s>169 <paginas>170 <xs l : app ly−templates s e l e c t="/ items / paginas /pagina ">171 <x s l : s o r t s e l e c t="@numero" data−type="number" order=
" ascending "/>172 </ xs l : app ly−templates>173 </paginas>174 </ items>175 </ xs l : t emp l a t e>176
177 <xs l : t emp l a t e match="/ items / cur so s / curso ">178 <curso>179 <x s l : a t t r i b u t e name="nombre"><xs l : v a l u e−o f s e l e c t="@nombre
"/></ x s l : a t t r i b u t e>180 <x s l : a t t r i b u t e name=" ent idad "><xs l : v a l u e−o f s e l e c t="
@entidad"/></ x s l : a t t r i b u t e>181 <x s l : a t t r i b u t e name=" prov inc i a "><xs l : v a l u e−o f s e l e c t="
@provincia "/></ x s l : a t t r i b u t e>182 <x s l : a t t r i b u t e name="munic ip io "><xs l : v a l u e−o f s e l e c t="
@municipio"/></ x s l : a t t r i b u t e>183 <x s l : a t t r i b u t e name=" idCurso "><xs l : v a l u e−o f s e l e c t="
@idCurso"/></ x s l : a t t r i b u t e>184 <x s l : a t t r i b u t e name="pag"><xs l : v a l u e−o f s e l e c t="@pag"/></
x s l : a t t r i b u t e>185 <x s l : a t t r i b u t e name=" l e t r a "><xs l : v a l u e−o f s e l e c t="@letra "/
></ x s l : a t t r i b u t e>186 </ curso>187 </ xs l : t emp l a t e>188 <xs l : t emp l a t e match="/ items / paginas /pagina ">189 <pagina>
268 Apéndice B. Ficheros desarrollados para la aplicación
190 <x s l : a t t r i b u t e name=" ac tua l "><xs l : v a l u e−o f s e l e c t="@actual"/></ x s l : a t t r i b u t e>
191 <x s l : a t t r i b u t e name="numero"><xs l : v a l u e−o f s e l e c t="@numero"/></ x s l : a t t r i b u t e>
192 <x s l : a t t r i b u t e name=" t o t a l "><xs l : v a l u e−o f s e l e c t="@total "/></ x s l : a t t r i b u t e>
193 </pagina>194 </ xs l : t emp l a t e>195
196 </ x s l : s t y l e s h e e t>197 </p: input>198 <p:output name="data" id=" r e s u l t "/>199 </ p :p r o c e s s o r>200
201 <!−− Generación de l f i c h e r o XML −−>202 <p :p r o c e s s o r name=" o x f : x s l t ">203 <p: input name=" con f i g " h r e f=" cursos_formacion . x s l "/>204 <p: input name="data" h r e f="#r e s u l t "/>205 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>206 <p: input name=" s e r v e r " h r e f="#se rv e r "/>207 <p:output name="data" id=" l i s t "/>208 </ p :p r o c e s s o r>209
210 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>211 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">212 <p: input name=" con f i g ">213 <config>214 <content−type>app l i c a t i on /xml</content−type>215 <encoding>utf−8</encoding>216 <version>1.0</version>217 </config>218 </p: input>219 <p: input name="data" h r e f="#l i s t "/>220 </ p :p r o c e s s o r>221
222 </ p : c o n f i g>
cursos_formacion.xsl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8
9 <help>c_help</help>10
11 <!−− Contenedor de l í n d i c e l a t e r a l −−>12 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">13 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>14 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_formacion_on . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>
B.3. Directorio de gestión del canal de retorno 269
17 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"s i z e x="118" s i z e y="28"></image>
18 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118" s i z e y="28"></image>
19 </container>20
21 <!−− Contenedor de l menú ho r i z on t a l ( pag inac ión ) −−>22 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="
215" posx="30" v i s="1">23 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25
" itemx="36" itemy="25" sepx="5" sepy="0" s t y l e="s_menuhorCentrado">
24 <x s l : v a r i a b l e name=" total_pag" s e l e c t="/ items / paginas /pagina[ 1 ] / @total "/>
25 <x s l : v a r i a b l e name="primera_pag" s e l e c t="/ items / paginas /pagina [ 1 ] / @numero"/>
26 <x s l : v a r i a b l e name="ultima_pag" s e l e c t="/ items / paginas /pagina[ l a s t ( ) ] /@numero"/>
27 <x s l : v a r i a b l e name="num_pag" s e l e c t="doc ( ' input :dat− ins tance' ) / submiss ion /pag"/>
28
29 <xs l : c h o o s e>30 <xsl :when t e s t="$primera_pag= '1 '">31 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − 1) "/></ x s l : a t t r i b u t e>32 </xs l :when>33 <x s l : o t h e rw i s e>34 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="
number ($num_pag − $primera_pag + 1) "/></x s l : a t t r i b u t e>
35 <menuitem img=" images /bot_matrix_off . png" imgfocus="images /bot_matrix_on . png" s t r="<<"/>
36 </ x s l : o t h e rw i s e>37 </ x s l : c h o o s e>38
39 <xs l :app ly− t emplate s s e l e c t="paginas /pagina "/>40
41 <x s l : i f t e s t="$ultima_pag != $ total_pag and $ultima_pag !='1 ' ">
42 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images/bot_matrix_on . png" s t r=">>"/>
43 </ x s l : i f>44 </menu>45 </container>46
47 <!−− Contenedor de l menú v e r t i c a l ( cu r so s ) −−>48 <container id="c_menu" alpha="0" s i z e y="300" s i z e x="510" posy="250"
posx="30" v i s="1">49 <xs l : c h o o s e>50 <xsl :when t e s t="count (// curso ) !=0">51 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="510" s i z e y=
"300" itemx="510" itemy="27" sepx="0" sepy="0" s t y l e="s_menuverCursos">
52 <xs l :app ly− t emplate s s e l e c t=" cur so s / curso "/>53
54 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >55 <action key="OK" act="hidepage (∗ ) , showpage (
formacion_empleo ) ">56 <x s l : a t t r i b u t e name="actback ">57 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>58 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>
270 Apéndice B. Ficheros desarrollados para la aplicación
59 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /tipoCursoText "/>
60 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t ipoCurso "/>
61 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / i n i c i o "/>
62 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /munic ip io "/>
63 <x s l : v a r i a b l e name="pg" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
64 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / p rov inc i a "/>
65 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( 'hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /cursos_formacion ? t ipoCurso = ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ;i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; ' ) "/>
66 <xs l : c h o o s e>67 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) /
submiss ion / t ipoCurso != 'AMP' ">68 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="
doc ( ' input :dat− ins tance ' ) / submiss ion/ c o l e c t i v o "/>
69 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc( ' input :dat− ins tance ' ) / submiss ion /f am i l i a "/>
70 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( ' input :dat− ins tance ' ) / submiss ion/ p r a c t i c a s "/>
71 <xs l : v a l u e−o f s e l e c t=" concat ($comun , 'c o l e c t i v o = ' ,$ c o l e c t i v o , '& ; f am i l i a= ' ,$ f ami l i a , '& ; codigo=& ;p r a c t i c a s = ' ,$ p rac t i c a s , '& ;p rov inc i a = ' ,$ prov , ' ) ' ) "/>
72 </xs l :when>73 <x s l : o t h e rw i s e>74 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc
( ' input :dat− ins tance ' ) / submiss ion /codigo "/>
75 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc( ' input :dat− ins tance ' ) / submiss ion /f am i l i a "/>
76 <xs l : v a l u e−o f s e l e c t=" concat ($comun , 'codigo = ' ,$ codigo , '& ; f am i l i a = ' ,$f ami l i a , ' c o l e c t i v o=& ; p r a c t i c a s=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
77 </ x s l : o t h e rw i s e>78 </ x s l : c h o o s e>79 </ x s l : a t t r i b u t e>80 </action>81 </menuitem>82
83 </menu>84 </xs l :when>85 <x s l : o t h e rw i s e>86 <text s t y l e="s_body2" posx="0" posy="25" s i z e x="510" s i z e y
="90" s c r o l l="0">No se ha encontrado ningún curso deformación con l o s parámetros de búsqueda s e l e c c i o nado s
B.3. Directorio de gestión del canal de retorno 271
. Pulse "OK" para r e a l i z a r una nueva búsqueda .</text>87 <menu type=" v e r t i c a l " posx="0" posy="115" s i z e x="510"
s i z e y="27" itemx="510" itemy="27" sepx="0" sepy="0"s t y l e="s_menuverCursos">
88 <menuitem s t r="−−−−Rea l i z a r nueva búsqueda−−−−" >89 <action key="OK" act="hidepage (∗ ) , showpage (
formacion_empleo ) ">90 <x s l : a t t r i b u t e name="actback ">91 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>92 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>93 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /tipoCursoText "/>
94 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / t ipoCurso "/>
95 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / i n i c i o "/>
96 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /munic ip io "/>
97 <x s l : v a r i a b l e name="pg" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
98 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / prov inc i a "/>
99 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( 'hidepage (∗ ) , showpage ( h t tp : // ' ,$ servIp , ' :' , $ servPort , ' / i t v /apps /16003/800/ rc /cursos_formacion ? t ipoCurso = ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ;i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; ' ) "/>
100 <xs l : c h o o s e>101 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) /
submiss ion / t ipoCurso != 'AMP' ">102 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="
doc ( ' input :dat− ins tance ' ) / submiss ion/ c o l e c t i v o "/>
103 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc( ' input :dat− ins tance ' ) / submiss ion /f am i l i a "/>
104 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( ' input :dat− ins tance ' ) / submiss ion/ p r a c t i c a s "/>
105 <xs l : v a l u e−o f s e l e c t=" concat ($comun , 'c o l e c t i v o = ' ,$ c o l e c t i v o , '& ; f am i l i a= ' ,$ f ami l i a , '& ; codigo=& ;p r a c t i c a s = ' ,$ p rac t i c a s , '& ;p rov inc i a = ' ,$ prov , ' ) ' ) "/>
106 </xs l :when>107 <x s l : o t h e rw i s e>108 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc
( ' input :dat− ins tance ' ) / submiss ion /codigo "/>
109 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc( ' input :dat− ins tance ' ) / submiss ion /f am i l i a "/>
110 <xs l : v a l u e−o f s e l e c t=" concat ($comun , 'codigo = ' ,$ codigo , '& ; f am i l i a = ' ,$f ami l i a , ' c o l e c t i v o=& ; p r a c t i c a s=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
272 Apéndice B. Ficheros desarrollados para la aplicación
111 </ x s l : o t h e rw i s e>112 </ x s l : c h o o s e>113 </ x s l : a t t r i b u t e>114 </action>115 </menuitem>116 </menu>117 </ x s l : o t h e rw i s e>118 </ x s l : c h o o s e>119 </container>120 </page>121 </ xs l : t emp l a t e>122
123 <xs l : t emp l a t e match="paginas /pagina ">124 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">125 <x s l : a t t r i b u t e name=" s t r "><xs l : v a l u e−o f s e l e c t="@numero"/></
x s l : a t t r i b u t e>126 <x s l : i f t e s t="@actual= '0 ' ">127 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>128 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>129 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion / tipoCursoText "/>130 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / t ipoCurso "/>131 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / i n i c i o "/>132 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion /munic ip io "/>133 <x s l : v a r i a b l e name="pg" s e l e c t="@numero"/>134 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / prov inc i a "/>135 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /cursos_formacion ? t ipoCurso = ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; ' ) "/>
136 <x s l : a t t r i b u t e name="onover ">137 <xs l : c h o o s e>138 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso != 'AMP' ">139 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / c o l e c t i v o "/>140 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / f am i l i a "/>141 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / p r a c t i c a s "/>142 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' c o l e c t i v o = ' ,$
c o l e c t i v o , '& ; f am i l i a = ' ,$ f ami l i a , '& ; codigo=& ; p r a c t i c a s = ' ,$ p rac t i c a s , '& ; p rov inc i a = ' ,$ prov, ' ) ' ) "/>
143 </xs l :when>144 <x s l : o t h e rw i s e>145 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / codigo "/>146 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / f am i l i a "/>147 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' cod igo = ' ,$ codigo
, '& ; f am i l i a = ' ,$ f ami l i a , ' c o l e c t i v o=& ; p r a c t i c a s=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
148 </ x s l : o t h e rw i s e>149 </ x s l : c h o o s e>150 </ x s l : a t t r i b u t e>
B.3. Directorio de gestión del canal de retorno 273
151 </ x s l : i f>152 </menuitem>153 </ xs l : t emp l a t e>154
155 <xs l : t emp l a t e match=" cur so s / curso ">156 <menuitem>157 <x s l : a t t r i b u t e name=" s t r ">158 <xs l : c h o o s e>159 <xsl :when t e s t="@municipio != ' ' ">160 <xs l : v a l u e−o f s e l e c t=" concat (@nombre , ' ( ' , @municipio , ' ) ' ) "
/>161 </xs l :when>162 <x s l : o t h e rw i s e>163 <xs l : v a l u e−o f s e l e c t="@nombre"/>164 </ x s l : o t h e rw i s e>165 </ x s l : c h o o s e>166 </ x s l : a t t r i b u t e>167
168 <action key="OK">169 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>170 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>171 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion / tipoCursoText "/>172 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion / t ipoCurso "/>173 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / i n i c i o "/>174 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( ' input :dat− ins tance ' )
/ submiss ion /munic ip io "/>175 <x s l : v a r i a b l e name="pag" s e l e c t="@pag"/>176 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / prov inc i a "/>177 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / f am i l i a "/>178 <x s l : v a r i a b l e name=" idCurso " s e l e c t="@idCurso"/>179 <x s l : v a r i a b l e name=" l e t r a " s e l e c t="@letra "/>180 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /cu r so s_de ta l l e ? t ipoCurso = ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pag , '& ; f am i l i a = ' ,$ f ami l i a , '& ;idCurso= ' ,$ idCurso , '& ; l e t r a = ' ,$ l e t r a , '& ; ' ) "/>
181 <x s l : v a r i a b l e name="comun2" s e l e c t=" concat ( ' hidepage (∗ ) , showpage( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /cursos_formacion ? t ipoCurso = ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso , '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pag , '& ; f am i l i a = ' ,$ f ami l i a , '& ; ' )"/>
182 <x s l : a t t r i b u t e name=" act ">183 <xs l : c h o o s e>184 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso != 'AMP' ">185 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / c o l e c t i v o "/>186 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / p r a c t i c a s "/>187 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' c o l e c t i v o = ' ,$
c o l e c t i v o , '& ; p r a c t i c a s = ' ,$ p ra c t i c a s , '& ; codigo=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
188 </xs l :when>189 <x s l : o t h e rw i s e>
274 Apéndice B. Ficheros desarrollados para la aplicación
190 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / codigo "/>
191 <xs l : v a l u e−o f s e l e c t=" concat ($comun , ' c o l e c t i v o=& ;p r a c t i c a s=& ; codigo = ' ,$ codigo , '& ; p rov inc i a = ' ,$prov , ' ) ' ) "/>
192 </ x s l : o t h e rw i s e>193 </ x s l : c h o o s e>194 </ x s l : a t t r i b u t e>195 <x s l : a t t r i b u t e name="actback ">196 <xs l : c h o o s e>197 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
t ipoCurso != 'AMP' ">198 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / c o l e c t i v o "/>199 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / p r a c t i c a s "/>200 <xs l : v a l u e−o f s e l e c t=" concat ($comun2 , ' c o l e c t i v o = ' ,$
c o l e c t i v o , '& ; p r a c t i c a s = ' ,$ p ra c t i c a s , '& ; codigo=& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
201 </xs l :when>202 <x s l : o t h e rw i s e>203 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / codigo "/>204 <xs l : v a l u e−o f s e l e c t=" concat ($comun2 , ' c o l e c t i v o=& ;
p r a c t i c a s=& ; codigo = ' ,$ codigo , '& ; p rov inc i a = ' ,$prov , ' ) ' ) "/>
205 </ x s l : o t h e rw i s e>206 </ x s l : c h o o s e>207 </ x s l : a t t r i b u t e>208 </action>209 </menuitem>210 </ xs l : t emp l a t e>211
212 </ x s l : s t y l e s h e e t>
cursos_detalle.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">
B.3. Directorio de gestión del canal de retorno 275
22 <config>23 <method>url−http</method>24 <action>25 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/ formacion /ofertasFPE / ' ,/submiss ion / tipoCursoText , ' / deta l l eCurso ' , /submiss ion / l e t r a , ' . html? s tep=obtenerCurso& ;idCurso= ' ,/ submiss ion / idCurso , '& ; pg= ' ,/submiss ion /pag , '& ; t i c k e t=nocas ' ) "/>
26 </action>27 <cookies>yes</cookies>28 <timeout>40</timeout>29 <content−type>text /html</content−type>30 <encoding>utf−8</encoding>31 </config>32 </ xs l : t emp l a t e>33 </ x s l : s t y l e s h e e t>34 </p: input>35 <p:output name="data" id="metodo_http"/>36 </ p :p r o c e s s o r>37
38 <!−− Método GET (HTTP) −−>39 <p :p r o c e s s o r name="tmg:tm−http ">40 <p: input name=" con f i g " h r e f="#metodo_http"/>41 <p:output name="data" id="page"/>42 </ p :p r o c e s s o r>43
44 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>45 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">46 <p: input name=" con f i g ">47 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
x s l : v e r s i o n=" 2 .0 ">48
49 <t i t u l o>50 <x s l : f o r −each s e l e c t="//h4 [ @class=' t i t−btnBuscarEmpleo des
−btnBuscarEmpleo02 ' ] ">51 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>52 </ x s l : f o r −each>53 </ t i t u l o>54
55 <tex to s>56 <x s l : f o r −each s e l e c t="//∗">57 <xs l : c h o o s e>58 <xsl :when t e s t="name ( )='h4 ' ">59 <x s l : i f t e s t=" . / @class=' t i t−btnBuscarEmpleo ' ">60 <texto>61 <xs l : v a l u e−o f s e l e c t=" concat ( '∗∗∗ ' , t ex t ( )
, '∗∗∗ ' ) "/>62 </ texto>63 </ x s l : i f>64 </xs l :when>65 <xsl :when t e s t="name ( )='td ' or name ( )=' l i ' ">66 <x s l : i f t e s t=" text ( ) != ' ' ">67 <texto>68 <x s l : v a r i a b l e name="cadena" s e l e c t="
normal ize−space ( t ex t ( ) ) "/>69 <xs l : c h o o s e>70 <xsl :when t e s t=" conta in s ($ cadena , '
pinchando ' ) ">71 <xs l : v a l u e−o f s e l e c t=" subst r ing−
be f o r e ($ cadena , ' pinchando ' ) "/>72 <x s l : t e x t>en e l menú de búsqueda .</
x s l : t e x t>
276 Apéndice B. Ficheros desarrollados para la aplicación
73 </xs l :when>74 <x s l : o t h e rw i s e>75 <xs l : v a l u e−o f s e l e c t="$cadena"/>76 </ x s l : o t h e rw i s e>77 </ x s l : c h o o s e>78 </ texto>79 </ x s l : i f>80 </xs l :when>81 </ x s l : c h o o s e>82 </ x s l : f o r −each>83 </ tex to s>84
85 </ items>86 </p: input>87 <p: input name="data" h r e f="#page"/>88 <p:output name="data" id=" r e s u l t "/>89 </ p :p r o c e s s o r>90
91 <!−− Generación de l f i c h e r o XML −−>92 <p :p r o c e s s o r name=" o x f : x s l t ">93 <p: input name=" con f i g " h r e f=" cu r so s_de ta l l e . x s l "/>94 <p: input name="data" h r e f="#r e s u l t "/>95 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>96 <p: input name=" s e r v e r " h r e f="#se rv e r "/>97 <p:output name="data" id=" l i s t "/>98 </ p :p r o c e s s o r>99
100 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>101 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">102 <p: input name=" con f i g ">103 <config>104 <content−type>app l i c a t i on /xml</content−type>105 <encoding>utf−8</encoding>106 <version>1.0</version>107 </config>108 </p: input>109 <p: input name="data" h r e f="#l i s t "/>110 </ p :p r o c e s s o r>111
112 </ p : c o n f i g>
cursos_detalle.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>
B.3. Directorio de gestión del canal de retorno 277
14 <image path=" images / ind_empresas_off . png" posy="56" posx="0"s i z e x="118" s i z e y="28"></image>
15 <image path=" images / ind_formacion_on . png" posy="84" posx="0"s i z e x="118" s i z e y="28"></image>
16 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"s i z e x="118" s i z e y="28"></image>
17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118" s i z e y="28"></image>
18 </container>19
20 <!−− Contenedor de l t exto de in formac ión −−>21 <container id="c_texto" v i s="1" alpha="0" posx="30" posy="214"
s i z e x="520" s i z e y="270">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0"><xs l : v a l u e−o f s e l e c t=" t i t u l o "/></text>23
24 <text s t y l e=" s_bodyDetal le " posx="0" posy="35" s i z e x="520" s i z e y="245" s c r o l l="1">
25 <xs l : f o r− ea ch s e l e c t=" tex to s / texto ">26 <x s l : i f t e s t=" po s i t i o n ( ) > ; 2">27 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>28 <x s l : t e x t>
</ x s l : t e x t>29 </ x s l : i f>30 </ xs l : f o r− ea ch>31 </text>32 </container>33
34 <!−− Contenedor de l menú −−>35 <container id="c_menu" v i s="1" alpha="0" posx="145" posy="490"
s i z e x="290" s i z e y="45">36 <menu type=" ho r i z on t a l " posx="0" posy="0" s i z e x="290" s i z e y="45"
itemx="130" itemy="45" sepx="30" sepy="0" s t y l e="s_menuhor">
37 <menuitem s t r="Volver " >38 <action key="OK">39 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>40 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>41 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / tipoCursoText "/>42 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoCurso "/>43 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / i n i c i o "/>44 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /munic ip io "/>45 <x s l : v a r i a b l e name="pg" s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion /pag"/>46 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>47 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / c o l e c t i v o "/>48 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / f am i l i a "/>49 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / p r a c t i c a s "/>50 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / codigo "/>51 <x s l : v a r i a b l e name=" idCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idCurso "/>
278 Apéndice B. Ficheros desarrollados para la aplicación
52 <x s l : v a r i a b l e name=" l e t r a " s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion / l e t r a "/>
53 <x s l : a t t r i b u t e name=" act ">54 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / cursos_formacion ? t ipoCurso= ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso, '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; f am i l i a = ' ,$f ami l i a , '& ; c o l e c t i v o = ' ,$ c o l e c t i v o , '& ;p r a c t i c a s = ' ,$ p rac t i c a s , '& ; codigo = ' ,$ codigo , '& ; p rov inc i a = ' ,$ prov , ' ) ' ) "/>
55 <xs l : v a l u e−o f s e l e c t="$comun"/>56 </ x s l : a t t r i b u t e>57
58 <x s l : a t t r i b u t e name="actback ">59 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / cu r so s_de ta l l e ? t ipoCurso= ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso, '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; f am i l i a = ' ,$f ami l i a , '& ; c o l e c t i v o = ' ,$ c o l e c t i v o , '& ;p r a c t i c a s = ' ,$ p rac t i c a s , '& ; codigo = ' ,$ codigo , '& ; p rov inc i a = ' ,$ prov , '& ; idCurso= ' ,$ idCurso, '& ; l e t r a = ' ,$ l e t r a , ' ) ' ) "/>
60 <xs l : v a l u e−o f s e l e c t="$comun"/>61 </ x s l : a t t r i b u t e>62 </action>63 </menuitem>64
65 <menuitem s t r="Nueva búsqueda" >66 <action key="OK" act="hidepage (∗ ) , showpage (
formacion_empleo ) ">67 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' )
/ r eque s t /server−name"/>68 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r
' ) / r eque s t / server−port "/>69 <x s l : v a r i a b l e name=" textoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / tipoCursoText "/>70 <x s l : v a r i a b l e name=" tipoCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / t ipoCurso "/>71 <x s l : v a r i a b l e name=" i n i c i o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / i n i c i o "/>72 <x s l : v a r i a b l e name="munic ip io " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /munic ip io "/>73 <x s l : v a r i a b l e name="pg" s e l e c t="doc ( ' input :dat− ins tance
' ) / submiss ion /pag"/>74 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>75 <x s l : v a r i a b l e name=" c o l e c t i v o " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / c o l e c t i v o "/>76 <x s l : v a r i a b l e name=" f am i l i a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / f am i l i a "/>77 <x s l : v a r i a b l e name=" p r a c t i c a s " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / p r a c t i c a s "/>78 <x s l : v a r i a b l e name=" codigo " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / codigo "/>79 <x s l : v a r i a b l e name=" idCurso " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / idCurso "/>80 <x s l : v a r i a b l e name=" l e t r a " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / l e t r a "/>81
82 <x s l : a t t r i b u t e name="actback ">
B.3. Directorio de gestión del canal de retorno 279
83 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc / cu r so s_de ta l l e ? t ipoCurso= ' ,$ tipoCurso , '& ; tipoCursoText= ' ,$ textoCurso, '& ; i n i c i o = ' ,$ i n i c i o , '& ; munic ip io = ' ,$municipio , '& ; pag= ' ,$pg , '& ; f am i l i a = ' ,$f ami l i a , '& ; c o l e c t i v o = ' ,$ c o l e c t i v o , '& ;p r a c t i c a s = ' ,$ p rac t i c a s , '& ; codigo = ' ,$ codigo , '& ; p rov inc i a = ' ,$ prov , '& ; idCurso= ' ,$ idCurso, '& ; l e t r a = ' ,$ l e t r a , ' ) ' ) "/>
84 <xs l : v a l u e−o f s e l e c t="$comun"/>85 </ x s l : a t t r i b u t e>86
87 </action>88 </menuitem>89
90 </menu>91 </container>92 </page>93 </ xs l : t emp l a t e>94
95 </ x s l : s t y l e s h e e t>
B.3.5. Directorio del SAE
directorio_SAE.xpl
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp :
//www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
3
4 <p:param type=" input " name=" in s tance "/>5
6 <p :p r o c e s s o r name=" ox f : r e q u e s t ">7 <p: input name=" con f i g ">8 <config stream−type="xs:anyURI" xmlns :xs=" ht tp : //www.w3 . org /2001/
XMLSchema">9 <inc lude>/ reques t / se rve r−name</ inc lude>
10 <inc lude>/ reques t / se rve r−port</ inc lude>11 </config>12 </p: input>13 <p:output name="data" id=" s e r v e r "/>14 </ p :p r o c e s s o r>15
16 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>17 <p :p r o c e s s o r name=" o x f : x s l t ">18 <p: input name="data" h r e f="#in s tance "/>19 <p: input name=" con f i g ">20 <x s l : s t y l e s h e e t version=" 2 .0 ">21 <xs l : t emp l a t e match="/">22 <config>23 <method>url−http</method>24 <action>25 <xs l : c h o o s e>26 <xsl :when t e s t="/ submiss ion / opcion=' areas ' ">27 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es / i n s t i t u c i o n a l / contac ta r /di rector ioSAE/ate ' , / submiss ion / prov inc ia , ' / ?
280 Apéndice B. Ficheros desarrollados para la aplicación
t i c k e t=nocas ' ) "/>28 </xs l :when>29 <xsl :when t e s t="/ submiss ion / opcion=' d i r e c c i on e s ' ">30 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es / i n s t i t u c i o n a l / contac ta r /di rector ioSAE / ' ,/ submiss ion / prov inc ia , ' / ?t i c k e t=nocas ' ) "/>
31 </xs l :when>32 <x s l : o t h e rw i s e>33 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es / i n s t i t u c i o n a l / contac ta r /di rector ioSAE / ' ,/ submiss ion /opcion , ' / ? t i c k e t=nocas ' ) "/>
34 </ x s l : o t h e rw i s e>35 </ x s l : c h o o s e>36 </action>37 <cookies>yes</cookies>38 <timeout>40</timeout>39 <content−type>text /html</content−type>40 <encoding>utf−8</encoding>41 </config>42 </ xs l : t emp l a t e>43 </ x s l : s t y l e s h e e t>44 </p: input>45 <p:output name="data" id="metodo_http"/>46 </ p :p r o c e s s o r>47
48 <!−− Método GET (HTTP) −−>49 <p :p r o c e s s o r name="tmg:tm−http ">50 <p: input name=" con f i g " h r e f="#metodo_http"/>51 <p:output name="data" id="page"/>52 </ p :p r o c e s s o r>53
54 <!−− Se l e c c i ón de in formac ión de i n t e r é s en e l f i c h e r o HTML r e c i b i d o −−>55 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">56 <p: input name=" con f i g ">57 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">58 <xs l : c h o o s e>59
60 <!−− Áreas t e r r i t o r i a l e s −−>61 <xsl :when t e s t="doc ( ' input :dat−in s tance ' ) / submiss ion / opcion='
areas ' ">62 <nombre>63 <x s l : f o r −each s e l e c t="//h3 [ @class=' b tn In s t i t u c i ona l ' ] /
span">64 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>65 </ x s l : f o r −each>66 </nombre>67 <areas>68 <x s l : f o r −each s e l e c t="//h4 [ @class=' t i t−b tn In s t i t u c i ona l
' ] ">69 <x s l : v a r i a b l e name=" po s i c i on " s e l e c t=" po s i t i o n ( ) "/>70 <area>71 <x s l : a t t r i b u t e name="numero">72 <xs l : v a l u e−o f s e l e c t="$ po s i c i on "/>73 </ x s l : a t t r i b u t e>74 <x s l : a t t r i b u t e name=" ac tua l ">75 <xs l : c h o o s e>76 <xsl :when t e s t="$ po s i c i on=doc ( ' input :dat−
in s tance ' ) / submiss ion /pag">1</xs l :when>77 <x s l : o t h e rw i s e>0</ x s l : o t h e rw i s e>
B.3. Directorio de gestión del canal de retorno 281
78 </ x s l : c h o o s e>79 </ x s l : a t t r i b u t e>80 <x s l : a t t r i b u t e name="nombre">81 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>82 </ x s l : a t t r i b u t e>83 <f i l a s>84 <x s l : f o r −each s e l e c t=" . . / t ab l e [ $ po s i c i on ] /
tbody/ t r ">85 <f i l a>86 <x s l : f o r −each s e l e c t=" . / td">87 <xs l : c h o o s e>88 <xsl :when t e s t=" text ( ) != ' ' ">89 <elemento>90 <xs l : v a l u e−o f s e l e c t=" text ( )
"/>91 </elemento>92 </xs l :when>93 <x s l : o t h e rw i s e>94 <elemento>95 <xs l : v a l u e−o f s e l e c t=" . /
s t rong / text ( ) "/>96 </elemento>97 </ x s l : o t h e rw i s e>98 </ x s l : c h o o s e>99 </ x s l : f o r −each>
100 </ f i l a>101 </ x s l : f o r −each>102 </ f i l a s>103 </area>104 </ x s l : f o r −each>105 </ areas>106 </xs l :when>107
108 <!−− Di r e c c i one s p r o v i n c i a l e s −−>109 <xsl :when t e s t="doc ( ' input :dat−in s tance ' ) / submiss ion / opcion='
d i r e c c i on e s ' ">110 <nombre>111 <x s l : f o r −each s e l e c t="//h3 [ @class=' b tn In s t i t u c i ona l ' ] /
span">112 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>113 </ x s l : f o r −each>114 </nombre>115 <areas>116 <x s l : f o r −each s e l e c t="// tab l e ">117 <x s l : v a r i a b l e name=" po s i c i on " s e l e c t=" po s i t i o n ( ) "/>118 <area>119 <x s l : a t t r i b u t e name="numero">120 <xs l : v a l u e−o f s e l e c t="$ po s i c i on "/>121 </ x s l : a t t r i b u t e>122 <x s l : a t t r i b u t e name=" ac tua l ">123 <xs l : c h o o s e>124 <xsl :when t e s t="$ po s i c i on=doc ( ' input :dat−
in s tance ' ) / submiss ion /pag">1</xs l :when>125 <x s l : o t h e rw i s e>0</ x s l : o t h e rw i s e>126 </ x s l : c h o o s e>127 </ x s l : a t t r i b u t e>128 <x s l : a t t r i b u t e name="nombre">129 <xs l : v a l u e−o f s e l e c t=" concat ( ' Sede ' , $ po s i c i on
) "/>130 </ x s l : a t t r i b u t e>131 <f i l a s>132 <x s l : f o r −each s e l e c t=" . / tbody/ t r ">133 <f i l a>134 <x s l : f o r −each s e l e c t=" . / td">
282 Apéndice B. Ficheros desarrollados para la aplicación
135 <xs l : c h o o s e>136 <xsl :when t e s t=" text ( ) != ' ' ">137 <elemento>138 <xs l : v a l u e−o f s e l e c t=" text ( )
"/>139 </elemento>140 </xs l :when>141 <x s l : o t h e rw i s e>142 <elemento>143 <xs l : v a l u e−o f s e l e c t=" . /
s t rong / text ( ) "/>144 </elemento>145 </ x s l : o t h e rw i s e>146 </ x s l : c h o o s e>147 </ x s l : f o r −each>148 </ f i l a>149 </ x s l : f o r −each>150 </ f i l a s>151 </area>152 </ x s l : f o r −each>153 </ areas>154 </xs l :when>155
156 <!−− S e r v i c i o s c e n t r a l e s −−>157 <x s l : o t h e rw i s e>158 <nombre>159 <x s l : f o r −each s e l e c t="//meta [@name='Descr ipt ion ' ] ">160 <xs l : v a l u e−o f s e l e c t="@content"/>161 </ x s l : f o r −each>162 </nombre>163 <f i l a s>164 <x s l : f o r −each s e l e c t="// tab l e / tbody/ t r ">165 <f i l a>166 <x s l : f o r −each s e l e c t=" . / td">167 <xs l : c h o o s e>168 <xsl :when t e s t=" text ( ) != ' ' ">169 <elemento>170 <xs l : v a l u e−o f s e l e c t=" text ( ) "/>171 </elemento>172 </xs l :when>173 <x s l : o t h e rw i s e>174 <elemento>175 <xs l : v a l u e−o f s e l e c t=" . / b/ text ( ) "/>176 </elemento>177 </ x s l : o t h e rw i s e>178 </ x s l : c h o o s e>179 </ x s l : f o r −each>180 </ f i l a>181 </ x s l : f o r −each>182 </ f i l a s>183 </ x s l : o t h e rw i s e>184
185 </ x s l : c h o o s e>186 </ items>187 </p: input>188 <p: input name="data" h r e f="#page"/>189 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>190 <p:output name="data" id=" r e s u l t "/>191 </ p :p r o c e s s o r>192
193 <!−− Generación de l f i c h e r o XML −−>194 <p :p r o c e s s o r name=" o x f : x s l t ">195 <p: input name=" con f i g " h r e f="directorio_SAE . x s l "/>196 <p: input name="data" h r e f="#r e s u l t "/>
B.3. Directorio de gestión del canal de retorno 283
197 <p: input name="dat−i n s t ance " h r e f="#in s tance "/>198 <p: input name=" s e r v e r " h r e f="#se rv e r "/>199 <p:output name="data" id=" l i s t "/>200 </ p :p r o c e s s o r>201
202 <!−− S e r i a l i z a c i ó n de l f i c h e r o XML −−>203 <p :p r o c e s s o r name="oxf :xml−s e r i a l i z e r ">204 <p: input name=" con f i g ">205 <config>206 <content−type>app l i c a t i on /xml</content−type>207 <encoding>utf−8</encoding>208 <version>1.0</version>209 </config>210 </p: input>211 <p: input name="data" h r e f="#l i s t "/>212 </ p :p r o c e s s o r>213
214 </ p : c o n f i g>
directorio_SAE.xsl
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"
xmlns :xa lan=" ht tp : //xml . apache . org / x s l t " version=" 1 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <xs l : t emp l a t e match=" items ">7 <page>8 <help>c_help</help>9
10 <!−− Contenedor de l í n d i c e l a t e r a l −−>11 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">12 <image path=" images / ind_guia_off . png" posy="0" posx="0" s i z e x="
118" s i z e y="28"></image>13 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"
s i z e x="118" s i z e y="28"></image>14 <image path=" images / ind_empresas_off . png" posy="56" posx="0"
s i z e x="118" s i z e y="28"></image>15 <image path=" images / ind_formacion_off . png" posy="84" posx="0"
s i z e x="118" s i z e y="28"></image>16 <image path=" images / ind_director io_on . png" posy="112" posx="0"
s i z e x="118" s i z e y="28"></image>17 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="
118" s i z e y="28"></image>18 </container>19
20 <!−− Contenedor de l t í t u l o −−>21 <container id=" c_t i tu l o " v i s="1" alpha="0" posx="30" posy="224"
s i z e x="520" s i z e y="25">22 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0">23 <xs l : v a l u e−o f s e l e c t="nombre"/>24 </text>25 </container>26
27 <x s l : i f t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion / opcion=' areas 'or doc ( ' input :dat− ins tance ' ) / submiss ion / opcion=' d i r e c c i on e s ' ">
28 <!−− Contenedor de l menú ho r i z on t a l ( de pag inac ión ) −−>
284 Apéndice B. Ficheros desarrollados para la aplicación
29 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="254" posx="30" v i s="1">
30 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25" itemx="36" itemy="25" sepx="5" sepy="0" s t y l e="s_menuhorCentrado">
31 <x s l : v a r i a b l e name="num_pag" s e l e c t="doc ( 'input :dat− ins tance ' ) / submiss ion /pag"/>
32 <x s l : a t t r i b u t e name=" cursorx "><xs l : v a l u e−o f s e l e c t="number($num_pag − 1) "/></ x s l : a t t r i b u t e>
33 <xs l :app ly− t emplate s s e l e c t=" areas / area " mode=" pag inac ion "/>
34 </menu>35 </container>36
37 <!−− Contenedor de l s ub t í t u l o −−>38 <container id=" c_subt i tu lo " v i s="1" alpha="0" posx="30" posy="
290" s i z e x="520" s i z e y="20">39 <text s t y l e="s_body2" posx="0" posy="0" s i z e x="520" s i z e y="25
" s c r o l l="0">40 <xs l :app ly− t emplate s s e l e c t=" areas / area " mode=" sub t i t u l o "/
>41 </text>42 </container>43 </ x s l : i f>44
45 <!−− Contenedor de l a ( s ) tab la ( s ) −−>46 <container id="c_tabla " v i s="1" alpha="0" posx="40" s i z e x="500"
s i z e y="245">47 <x s l : a t t r i b u t e name="posy">48 <xs l : c h o o s e>49 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
opcion=' areas ' or doc ( ' input :dat− ins tance ' ) / submiss ion/ opcion=' d i r e c c i on e s ' ">315</ xs l :when>
50 <x s l : o t h e rw i s e>254</ x s l : o t h e rw i s e>51 </ x s l : c h o o s e>52 </ x s l : a t t r i b u t e>53 <table s t y l e 1="s_tabla_impares " s t y l e 0=" s_tabla_pares " c e l l x="
100" c e l l y="35" s i z e x="100" s i z e y="245" posx="0" posy="0">54 <xs l : c h o o s e>55 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
opcion=' areas ' or doc ( ' input :dat− ins tance ' ) / submiss ion/ opcion=' d i r e c c i on e s ' ">
56 <xs l :app ly− t emplate s s e l e c t=" areas / area " mode=" tab la1 "/>
57 </xs l :when>58 <x s l : o t h e rw i s e>59 <xs l :app ly− t emplate s s e l e c t=" f i l a s / f i l a " mode=" co l 1 "/>60 </ x s l : o t h e rw i s e>61 </ x s l : c h o o s e>62 </table>63 <table s t y l e 1="s_tabla_impares " s t y l e 0=" s_tabla_pares " c e l l x="
400" c e l l y="35" s i z e x="400" s i z e y="245" posx="100" posy="0">64 <xs l : c h o o s e>65 <xsl :when t e s t="doc ( ' input :dat− ins tance ' ) / submiss ion /
opcion=' areas ' or doc ( ' input :dat− ins tance ' ) / submiss ion/ opcion=' d i r e c c i on e s ' ">
66 <xs l :app ly− t emplate s s e l e c t=" areas / area " mode=" tab la2 "/>
67 </xs l :when>68 <x s l : o t h e rw i s e>69 <xs l :app ly− t emplate s s e l e c t=" f i l a s / f i l a " mode=" co l 2 "/>70 </ x s l : o t h e rw i s e>71 </ x s l : c h o o s e>72 </table>
B.3. Directorio de gestión del canal de retorno 285
73 </container>74
75 <!−− Contenedor de l botón "Volver " −−>76 <container id="c_menu" v i s="1" alpha="0" posx="558" posy="445"
s i z e x="122" s i z e y="79">77 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="122" s i z e y="79"
itemx="122" itemy="79" sepx="0" sepy="0" s t y l e="s_menuSinFondo">
78 <menuitem img=" images / bot_volver_off . png" imgfocus=" images /bot_volver_on . png">
79 <action key="OK" act="hidepage (∗ ) , showpage ( directorio_SAE )">
80 <x s l : a t t r i b u t e name="actback ">81 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t /server−name"/>82 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( '
i npu t : s e r v e r ' ) / r eque s t / server−port "/>83 <x s l : v a r i a b l e name="pag" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion /pag"/>84 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / prov inc i a "/>85 <x s l : v a r i a b l e name="opcion " s e l e c t="doc ( '
input :dat− ins tance ' ) / submiss ion / opcion "/>86 <x s l : v a r i a b l e name=" ruta " s e l e c t=" concat ( ' hidepage
(∗ ) , showpage ( h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' /i t v /apps /16003/800/ rc /directorio_SAE? opcion= ' ,$opcion , '& ; p rov inc i a = ' ,$ prov , '& ; pag= ' ,$pag, ' ) ' ) "/>
87 <xs l : v a l u e−o f s e l e c t="$ ruta "/>88 </ x s l : a t t r i b u t e>89 </action>90 </menuitem>91
92 </menu>93 </container>94 </page>95 </ xs l : t emp l a t e>96
97 <!−− P l a n t i l l a de pag inac ión para cada área −−>98 <xs l : t emp l a t e match=" areas / area " mode=" pag inac ion ">99 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">100 <x s l : a t t r i b u t e name=" s t r "><xs l : v a l u e−o f s e l e c t="@numero"/></
x s l : a t t r i b u t e>101 <x s l : i f t e s t="@actual= '0 ' ">102 <x s l : v a r i a b l e name=" se rv Ip " s e l e c t="doc ( ' i npu t : s e r v e r ' ) / r eque s t /
server−name"/>103 <x s l : v a r i a b l e name=" servPort " s e l e c t="doc ( ' i npu t : s e r v e r ' ) /
r eque s t / server−port "/>104 <x s l : v a r i a b l e name="pag" s e l e c t="@numero"/>105 <x s l : v a r i a b l e name="prov" s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / prov inc i a "/>106 <x s l : v a r i a b l e name="opcion " s e l e c t="doc ( ' input :dat− ins tance ' ) /
submiss ion / opcion "/>107 <x s l : v a r i a b l e name=" ruta " s e l e c t=" concat ( ' hidepage (∗ ) , showpage (
h t tp : // ' ,$ servIp , ' : ' , $ servPort , ' / i t v /apps /16003/800/ rc /directorio_SAE? opcion= ' ,$ opcion , '& ; p rov inc i a = ' ,$ prov , '& ; pag= ' ,$pag , ' ) ' ) "/>
108 <x s l : a t t r i b u t e name="onover ">109 <xs l : v a l u e−o f s e l e c t="$ ruta "/>110 </ x s l : a t t r i b u t e>111 </ x s l : i f>112 </menuitem>113 </ xs l : t emp l a t e>
286 Apéndice B. Ficheros desarrollados para la aplicación
114
115 <!−− P l a n t i l l a de s ub t í t u l o para e l área −−>116 <xs l : t emp l a t e match=" areas / area " mode=" sub t i t u l o ">117 <x s l : i f t e s t="@actual= '1 ' ">118 <xs l : v a l u e−o f s e l e c t="@nombre"/>119 </ x s l : i f>120 </ xs l : t emp l a t e>121
122 <!−− P l a n t i l l a de l a tab la para e l área −−>123 <xs l : t emp l a t e match=" areas / area " mode=" tab la1 ">124 <x s l : i f t e s t="@actual= '1 ' ">125 <xs l :app ly− t emplate s s e l e c t=" f i l a s / f i l a " mode=" co l 1 "/>126 </ x s l : i f>127 </ xs l : t emp l a t e>128 <xs l : t emp l a t e match=" areas / area " mode=" tab la2 ">129 <x s l : i f t e s t="@actual= '1 ' ">130 <xs l :app ly− t emplate s s e l e c t=" f i l a s / f i l a " mode=" co l 2 "/>131 </ x s l : i f>132 </ xs l : t emp l a t e>133
134 <!−− P l a n t i l l a para cada f i l a −−>135 <xs l : t emp l a t e match=" f i l a s / f i l a " mode=" co l 1 ">136 <tr>137 <xs l : f o r− ea ch s e l e c t=" elemento [ 1 ] ">138 <td>139 <xs l : v a l u e−o f s e l e c t=" . "/>140 </td>141 </ xs l : f o r− ea ch>142 </ tr>143 </ xs l : t emp l a t e>144 <xs l : t emp l a t e match=" f i l a s / f i l a " mode=" co l 2 ">145 <tr>146 <xs l : f o r− ea ch s e l e c t=" elemento [ 2 ] ">147 <td>148 <xs l : v a l u e−o f s e l e c t=" . "/>149 </td>150 </ xs l : f o r− ea ch>151 </ tr>152 </ xs l : t emp l a t e>153
154
155 </ x s l : s t y l e s h e e t>
B.4. Directorio de gestión de las actualizaciones auto-máticas
B.4.1. Ficheros generales
con�g.xml
1 <?xml version=" 1 .0 " encoding="utf−8"?>2 <con f i g>3 <http_enabled>f a l s e</http_enabled>4 <http_url>ht tp : //</http_url>5 <http_renew>f a l s e</http_renew>6 <ftp_enabled>f a l s e</ ftp_enabled>7 <ftp_server>f t p : //</ f tp_server>8 <ftp_port>21</ ftp_port>
B.4. Directorio de gestión de las actualizaciones automáticas 287
9 <ftp_username/>10 <ftp_password/>11 <f t p_ f i l e />12 <ftp_renew>f a l s e</ ftp_renew>13 </ con f i g>
main.xpl
1 <p : c on f i g xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns:tmg=" ht tp ://www. tmira . com/ops/ p r o c e s s o r s " xmlns:p=" ht tp : //www. orbeon . com/ oxf /p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s ">
2
3 <!−− Encuentra l a ruta de l d i r e c t o r i o de emis ión −−>4 <p :p r o c e s s o r name=" ox f : d i r e c t o r y−scanner ">5 <p: input name=" con f i g ">6 <config>7 <base−directory>. / . . / emis s ion /</base−directory>8 </config>9 </p: input>
10 <p:output name="data" id="dir_emiss ion "/>11 </ p :p r o c e s s o r>12
13 <!−− Encuentra l a ruta de l d i r e c t o r i o de conten ido −−>14 <p :p r o c e s s o r name=" ox f : d i r e c t o r y−scanner ">15 <p: input name=" con f i g ">16 <config>17 <base−directory>. / . . / content /</base−directory>18 </config>19 </p: input>20 <p:output name="data" id="dir_content "/>21 </ p :p r o c e s s o r>22
23 <!−− Comienzo de l a a c t u a l i z a c i ó n −−>24 <p :p r o c e s s o r name=" o x f : x s l t ">25 <p: input name="data" h r e f="#dir_emiss ion "/>26 <p: input name=" con f i g ">27 <x s l : s t y l e s h e e t version=" 2 .0 ">28 <xs l : t emp l a t e match="/">29 <config>30 <timeout>120</timeout>31 <key><xs l : v a l u e−o f s e l e c t="/ d i r e c t o r y /@path"/></key>32 </config>33 </ xs l : t emp l a t e>34 </ x s l : s t y l e s h e e t>35 </p: input>36 <p:output name="data" id="data−update"/>37 </ p :p r o c e s s o r>38
39 <p :p r o c e s s o r name="tmg:tm−app−update−s t a r t ">40 <p: input name=" con f i g " h r e f="#data−update"/>41 </ p :p r o c e s s o r>42
43 <!−− Recupera l a s opc iones para cada una de l a s páginas de " guía para l abúsqueda" −−>
44 <p :p r o c e s s o r name=" o x f : i d e n t i t y ">45 <p: input name="data" h r e f="datos−guiaBusqueda . xml"/>46 <p:output name="data" id=" opc iones "/>47 </ p :p r o c e s s o r>48
49 <!−− P ip e l i n e s para recupera r l o s datos de " guía para l a búsqueda" deIn t e rn e t −−>
288 Apéndice B. Ficheros desarrollados para la aplicación
50 <p: f o r−each h r e f="#opc iones " s e l e c t="/guiabusqueda/ datos ">51 <p :p r o c e s s o r name=" o x f : p i p e l i n e ">52 <p: input name=" con f i g " h r e f="guiaBusqueda . xpl "/>53 <p: input name="dir_emiss ion " h r e f="#dir_emiss ion "/>54 <p: input name=" opc iones " h r e f=" cur rent ( ) "/>55 </ p :p r o c e s s o r>56 </ p : f o r−each>57
58 <!−− Fin de l a a c t u a l i z a c i ó n −−>59 <p :p r o c e s s o r name="tmg:tm−app−update−end">60 <p: input name=" con f i g " h r e f="#data−update"/>61 </ p :p r o c e s s o r>62
63 </ p : c o n f i g>
B.4.2. Guía para la búsqueda de empleo
datos-guiaBusqueda.xml
1 <?xml version=" 1 .0 " encoding="UTF−8"?>2
3 <guiabusqueda>4 <!−− TU EMPLEO −−>5 <datos>6 <t ipo>tuEmpleo</ t ipo>7 <nombreFichero>_11</nombreFichero>8 <ur l>tuEmpleo/conocerteATiMismo/</ u r l>9 <!−− <imagenId>HombrePensando</ imagenId>
10 <imagen>_11</imagen> −−>11 <imagenId></ imagenId>12 <imagen></imagen>13 </datos>14
15 <datos>16 <t ipo>tuEmpleo</ t ipo>17 <nombreFichero>_12</nombreFichero>18 <ur l>tuEmpleo/ conocerMercadoLaboral /</ u r l>19 <!−− <imagenId>MujerPensando</ imagenId>20 <imagen>_12</imagen> −−>21 <imagenId></ imagenId>22 <imagen></imagen>23 </datos>24
25 <datos>26 <t ipo>tuEmpleo</ t ipo>27 <nombreFichero>_13</nombreFichero>28 <ur l>tuEmpleo/ def in i rPlanBusqueda /</ u r l>29 <!−− <imagenId>HombrePensando</ imagenId>30 <imagen>_13</imagen> −−>31 <imagenId></ imagenId>32 <imagen></imagen>33 </datos>34
35 <!−− CÓMO BUSCAR EMPLEO −−>36 <datos>37 <t ipo>comoBuscar</ t ipo>38 <nombreFichero>_21</nombreFichero>39 <ur l>comoBuscarEmpleo/ in t roducc i on /</ u r l>40 <!−− <imagenId>HombrePensando</ imagenId>41 <imagen>_21</imagen> −−>
B.4. Directorio de gestión de las actualizaciones automáticas 289
42 <imagenId></ imagenId>43 <imagen></imagen>44 </datos>45
46 <datos>47 <t ipo>comoBuscar</ t ipo>48 <nombreFichero>_22</nombreFichero>49 <ur l>comoBuscarEmpleo/ curr i cu lumVitae /</ u r l>50 <imagenId></ imagenId>51 <imagen></imagen>52 </datos>53
54 <datos>55 <t ipo>comoBuscar</ t ipo>56 <nombreFichero>_23</nombreFichero>57 <ur l>comoBuscarEmpleo/ ca r taPre s en tac i on /</ u r l>58 <!−− <imagenId>CartasEncimaMesa</ imagenId>59 <imagen>_23</imagen> −−>60 <imagenId></ imagenId>61 <imagen></imagen>62 </datos>63
64 <datos>65 <t ipo>comoBuscar</ t ipo>66 <nombreFichero>_241</nombreFichero>67 <ur l>comoBuscarEmpleo/comoOfrecerteAEmpresa/comoOfrecertaAEmpresa_1 .
html</ u r l>68 <!−− <imagenId>OfrecerteEmpresa</ imagenId>69 <imagen>_24</imagen> −−>70 <imagenId></ imagenId>71 <imagen></imagen>72 </datos>73
74 <datos>75 <t ipo>comoBuscar</ t ipo>76 <nombreFichero>_242</nombreFichero>77 <ur l>comoBuscarEmpleo/comoOfrecerteAEmpresa/comoOfrecerteAEmpresa_2 .
html</ u r l>78 <imagenId></ imagenId>79 <imagen></imagen>80 </datos>81
82 <datos>83 <t ipo>comoBuscar</ t ipo>84 <nombreFichero>_25</nombreFichero>85 <ur l>comoBuscarEmpleo/busquedaEmpleoInternet /</ u r l>86 <!−− <imagenId>AgendaElectronica</ imagenId>87 <imagen>_25</imagen> −−>88 <imagenId></ imagenId>89 <imagen></imagen>90 </datos>91
92 <datos>93 <t ipo>comoBuscar</ t ipo>94 <nombreFichero>_261</nombreFichero>95 <ur l>comoBuscarEmpleo/ a f r on t a rP ro c e s oS e l e c c i on /
a f rontarProce soSe l e cc i on_1 . html</ u r l>96 <!−− <imagenId>HombrePensando</ imagenId>97 <imagen>_26</imagen> −−>98 <imagenId></ imagenId>99 <imagen></imagen>
100 </datos>101
102 <datos>
290 Apéndice B. Ficheros desarrollados para la aplicación
103 <t ipo>comoBuscar</ t ipo>104 <nombreFichero>_262</nombreFichero>105 <ur l>comoBuscarEmpleo/ a f r on t a rP ro c e s oS e l e c c i on /
a f rontarProce soSe l e cc i on_2 . html</ u r l>106 <imagenId></ imagenId>107 <imagen></imagen>108 </datos>109
110 <!−− AUTOEMPLEO −−>111 <datos>112 <t ipo>autoempleo</ t ipo>113 <nombreFichero>_31</nombreFichero>114 <ur l>autoempleo/ in t roducc i on /</ u r l>115 <!−− <imagenId>MujerSonriendo</ imagenId>116 <imagen>_31</imagen> −−>117 <imagenId></ imagenId>118 <imagen></imagen>119 </datos>120
121 <datos>122 <t ipo>autoempleo</ t ipo>123 <nombreFichero>_32</nombreFichero>124 <ur l>autoempleo/ culturaEmprendedora/</ u r l>125 <!−− <imagenId>HombreMuro</ imagenId>126 <imagen>_32</imagen> −−>127 <imagenId></ imagenId>128 <imagen></imagen>129 </datos>130
131 <datos>132 <t ipo>autoempleo</ t ipo>133 <nombreFichero>_33</nombreFichero>134 <ur l>autoempleo/preguntasEmprender/</ u r l>135 <!−− <imagenId>HombrePensando</ imagenId>136 <imagen>_33</imagen> −−>137 <imagenId></ imagenId>138 <imagen></imagen>139 </datos>140
141 <datos>142 <t ipo>autoempleo</ t ipo>143 <nombreFichero>_34</nombreFichero>144 <ur l>autoempleo/ a n a l i s i s P r e v i o s /</ u r l>145 <imagenId></ imagenId>146 <imagen></imagen>147 </datos>148
149 <datos>150 <t ipo>autoempleo</ t ipo>151 <nombreFichero>_35</nombreFichero>152 <ur l>autoempleo/ t rami t e sAdmin i s t ra t i vo s /</ u r l>153 <imagenId></ imagenId>154 <imagen></imagen>155 </datos>156
157 <datos>158 <t ipo>autoempleo</ t ipo>159 <nombreFichero>_36</nombreFichero>160 <ur l>autoempleo/ f r a n qu i c i a s /</ u r l>161 <!−− <imagenId>Franqu ic ia s</ imagenId>162 <imagen>_36</imagen> −−>163 <imagenId></ imagenId>164 <imagen></imagen>165 </datos>
B.4. Directorio de gestión de las actualizaciones automáticas 291
166
167 <!−− FORMACIÓN −−>168 <datos>169 <t ipo>formacion</ t ipo>170 <nombreFichero>_41</nombreFichero>171 <ur l>formacion / in t roducc i on /</ u r l>172 <!−− <imagenId>MujerTrabajandoPortat i l</ imagenId>173 <imagen>_41</imagen> −−>174 <imagenId></ imagenId>175 <imagen></imagen>176 </datos>177
178 <datos>179 <t ipo>formacion</ t ipo>180 <nombreFichero>_42</nombreFichero>181 <ur l>formacion / formacionAcademica/</ u r l>182 <!−− <imagenId>Sa laAs i entos</ imagenId>183 <imagen>_42</imagen> −−>184 <imagenId></ imagenId>185 <imagen></imagen>186 </datos>187
188 <datos>189 <t ipo>formacion</ t ipo>190 <nombreFichero>_43</nombreFichero>191 <ur l>formacion / formacionOcupacional /</ u r l>192 <!−− <imagenId>ObreroTrabajando</ imagenId>193 <imagen>_43</imagen> −−>194 <imagenId></ imagenId>195 <imagen></imagen>196 </datos>197
198 <datos>199 <t ipo>formacion</ t ipo>200 <nombreFichero>_44</nombreFichero>201 <ur l>formacion / otrasViasFormacion /</ u r l>202 <!−− <imagenId>HombreTrabajandoPortati l</ imagenId>203 <imagen>_44</imagen> −−>204 <imagenId></ imagenId>205 <imagen></imagen>206 </datos>207
208 </guiabusqueda>
guiaBusqueda.xpl
1 <p : c on f i g xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e "2 xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s "3 xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"4 xmlns:tmg=" ht tp : //www. tmira . com/ops/ p r o c e s s o r s ">5
6 <p:param name="dir_emiss ion " type=" input "/>7 <p:param name=" opc iones " type=" input "/>8
9 <!−− Procesador para generar e l config ne c e s a r i o para e l método HTTP −−>10 <p :p r o c e s s o r name=" o x f : x s l t ">11 <p: input name="data" h r e f="#opc iones "/>12 <p: input name=" con f i g ">13 <x s l : s t y l e s h e e t version=" 2 .0 ">14 <xs l : t emp l a t e match="/">15 <config>
292 Apéndice B. Ficheros desarrollados para la aplicación
16 <url>17 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www.
juntadeanda luc ia . e s / se rv i c i oanda luzdeempleo /web/websae/ po r t a l / es /empleo/buscarTrabajo /guiaEmpleo/ ' ,/ datos / ur l , ' ? t i c k e t=nocas ' ) "/>
18 </url>19 <content−type>text /html</content−type>20 </config>21 </ xs l : t emp l a t e>22 </ x s l : s t y l e s h e e t>23 </p: input>24 <p:output name="data" id="metodo_http"/>25 </ p :p r o c e s s o r>26
27 <!−− Procesador para obtener e l f i c h e r o HTML nec e s a r i o −−>28 <p :p r o c e s s o r name="tmg:tm−ur l−genera to r " xmlns:p=" ht tp : //www. orbeon . com/
oxf / p i p e l i n e ">29 <p: input name=" con f i g " h r e f="#metodo_http"/>30 <p:output name="data" id="page"/>31 </ p :p r o c e s s o r>32
33 <!−− Procesador para obtener l a in formac ión ú t i l de l f i c h e r o HTML −−>34 <p :p r o c e s s o r name=" ox f :un sa f e−x s l t ">35 <p: input name=" con f i g ">36 <items xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" x s l : v e r s i o n
=" 2 .0 ">37 <!−− Títu lo de l a página −−>38 <t i t u l o>39 <xs l : v a l u e−o f s e l e c t="normal ize−space (//h3/span/ text ( ) ) "/>40 </ t i t u l o>41
42 <x s l : f o r −each s e l e c t="// div [ @id='dos−columnas−dcha ' ] / ∗ ">43 <x s l : v a r i a b l e name=" texto " s e l e c t=" . "/>44 <xs l : c h o o s e>45 <!−− Títu lo −−>46 <xsl :when t e s t="name ( )='h4 ' and normal ize−space ( t ex t ( ) )
!= ' ' ">47 <texto>48 <xs l : v a l u e−o f s e l e c t=" concat ( '∗∗∗ ' , normal ize−space (
t ex t ( ) ) ) "/>49 <x s l : t e x t>50 </ x s l : t e x t>51 <x s l : t e x t>52 </ x s l : t e x t>53 </ texto>54 </xs l :when>55 <!−− Párra fo de texto −−>56 <xsl :when t e s t="name ( )='p ' ">57 <x s l : i f t e s t=" text ( ) != ' ' or count ( . / / s t rong ) !=0">58 <texto>59 <xs l : v a l u e−o f s e l e c t="normal ize−space ($ texto ) "/>60 <x s l : t e x t>61 </ x s l : t e x t>62 <x s l : t e x t>63 </ x s l : t e x t>64 </ texto>65 </ x s l : i f>66 </xs l :when>67 <!−− Tabla −−>68 <xsl :when t e s t="name ( )=' tab le ' ">69 <texto>70 <x s l : t e x t>[NOTA: Para ver l a tabla , pu l s e l a f l e c h a
de l a derecha e l número de veces que seann e c e s a r i a s . Para vo lve r a e s t e texto , pu l s e l a
B.4. Directorio de gestión de las actualizaciones automáticas 293
f l e c h a de l a i z qu i e rda e l mismo número de veces ]</ x s l : t e x t>
71 <x s l : t e x t>72 </ x s l : t e x t>73 <x s l : t e x t>74 </ x s l : t e x t>75 </ texto>76 <tab la>77 <x s l : f o r −each s e l e c t=" . / tbody/ t r ">78 <f i l a>79 <x s l : f o r −each s e l e c t=" . / th">80 <elementoCab>81 <x s l : v a r i a b l e name=" textoCelda " s e l e c t="
. "/>82 <xs l : v a l u e−o f s e l e c t="normal ize−space ($
textoCelda ) "/>83 </elementoCab>84 </ x s l : f o r −each>85 <x s l : f o r −each s e l e c t=" . / td">86 <elemento>87 <x s l : a t t r i b u t e name="numFilas">88 <xs l : v a l u e−o f s e l e c t="@rowspan"/>89 </ x s l : a t t r i b u t e>90 <x s l : v a r i a b l e name=" textoCelda " s e l e c t="
. "/>91 <xs l : c h o o s e>92 <xsl :when t e s t="$ textoCelda != ' ' ">93 <xs l : v a l u e−o f s e l e c t="normal ize−
space ($ textoCelda ) "/>94 </xs l :when>95 <xsl :when t e s t="count ( . / u l // l i ) !=0">96 <x s l : f o r −each s e l e c t=" . / u l / l i ">97 <x s l : v a r i a b l e name="textoTabLI"
s e l e c t=" . "/>98 <xs l : v a l u e−o f s e l e c t=" concat
( '∗ ' , normal ize−space ($textoTabLI ) , ' ' ) "/>
99 </ x s l : f o r −each>100 </xs l :when>101 <x s l : o t h e rw i s e>102 <xs l : v a l u e−o f s e l e c t=" . / s t rong /
text ( ) "/>103 </ x s l : o t h e rw i s e>104 </ x s l : c h o o s e>105 </elemento>106 </ x s l : f o r −each>107 </ f i l a>108 </ x s l : f o r −each>109 </ tab la>110 </xs l :when>111 <!−− Tabla ( dentro de ' div ' ) −−>112 <xsl :when t e s t="name ( )='div ' and count ( . / / t ab l e ) !=0">113 <texto>114 <x s l : t e x t>[NOTA: Para ver l a tabla , pu l s e l a f l e c h a
de l a derecha e l número de veces que seann e c e s a r i a s . Para vo lve r a e s t e texto , pu l s e l af l e c h a de l a i z qu i e rda e l mismo número de veces ]</ x s l : t e x t>
115 <x s l : t e x t>116 </ x s l : t e x t>117 <x s l : t e x t>118 </ x s l : t e x t>119 </ texto>120 <tab la>
294 Apéndice B. Ficheros desarrollados para la aplicación
121 <x s l : f o r −each s e l e c t=" . / t ab l e / tbody/ t r ">122 <f i l a>123 <x s l : f o r −each s e l e c t=" . / th">124 <elementoCab>125 <x s l : v a r i a b l e name=" textoCelda " s e l e c t="
. "/>126 <xs l : v a l u e−o f s e l e c t="normal ize−space ($
textoCelda ) "/>127 </elementoCab>128 </ x s l : f o r −each>129 <x s l : f o r −each s e l e c t=" . / td">130 <elemento>131 <x s l : a t t r i b u t e name="numFilas">132 <xs l : v a l u e−o f s e l e c t="@rowspan"/>133 </ x s l : a t t r i b u t e>134 <x s l : v a r i a b l e name=" textoCelda " s e l e c t="
. "/>135 <xs l : c h o o s e>136 <xsl :when t e s t="$ textoCelda != ' ' ">137 <xs l : v a l u e−o f s e l e c t="normal ize−
space ($ textoCelda ) "/>138 </xs l :when>139 <xsl :when t e s t="count ( . / u l // l i ) !=0">140 <x s l : f o r −each s e l e c t=" . / u l / l i ">141 <x s l : v a r i a b l e name="textoTabLI"
s e l e c t=" . "/>142 <xs l : v a l u e−o f s e l e c t=" concat
( '∗ ' , normal ize−space ($textoTabLI ) , ' ' ) "/>
143 </ x s l : f o r −each>144 </xs l :when>145 <x s l : o t h e rw i s e>146 <xs l : v a l u e−o f s e l e c t=" . / s t rong /
text ( ) "/>147 </ x s l : o t h e rw i s e>148 </ x s l : c h o o s e>149 </elemento>150 </ x s l : f o r −each>151 </ f i l a>152 </ x s l : f o r −each>153 </ tab la>154 </xs l :when>155 <!−− L i s ta −−>156 <xsl :when t e s t="name ( )='ul ' or name ( )=' ol ' ">157 <x s l : f o r −each s e l e c t=" . / l i ">158 <texto>159 <x s l : t e x t>	−</ x s l : t e x t>160 <xs l : c h o o s e>161 <xsl :when t e s t="count ( . / / a )=0">162 <x s l : v a r i a b l e name=" textoLI " s e l e c t=" . "/>163 <xs l : v a l u e−o f s e l e c t="normal ize−space ($
textoLI ) "/>164 </xs l :when>165 <xsl :when t e s t=" conta in s ( . / a [ 1 ] / @href , ' . g i f ' ) "
>166 <x s l : v a r i a b l e name="nombreLink" s e l e c t=" . / a
[ 1 ] / t ext ( ) "/>167 <xs l : v a l u e−o f s e l e c t="normal ize−space ($
nombreLink ) "/>168 <x s l : t e x t> [NOTA: Para ver l a imagen , pu l s e
l a f l e c h a de l a derecha e l número deveces que sean n e c e s a r i a s . Para vo lve ra e s t e texto , pu l s e l a f l e c h a de l ai z qu i e rda e l mismo número de veces ]</
B.4. Directorio de gestión de las actualizaciones automáticas 295
x s l : t e x t>169 </xs l :when>170 </ x s l : c h o o s e>171 <x s l : t e x t>172 </ x s l : t e x t>173 <x s l : i f t e s t=" po s i t i o n ( )=l a s t ( ) and count ( . / / l i )
=0">174 <x s l : t e x t>175 </ x s l : t e x t>176 </ x s l : i f>177 </ texto>178 <x s l : i f t e s t="count ( . / / a ) !=0 and conta in s ( . / a [ 1 ] /
@href , ' . g i f ' ) ">179 <enl_imagen>180 <x s l : a t t r i b u t e name=" t i t u l o ">181 <x s l : v a r i a b l e name="nombreLink" s e l e c t=" . / a
[ 1 ] / t ext ( ) "/>182 <xs l : v a l u e−o f s e l e c t="normal ize−space ($
nombreLink ) "/>183 </ x s l : a t t r i b u t e>184 <xs l : v a l u e−o f s e l e c t=" . / a [ 1 ] / @href "/>185 </enl_imagen>186 </ x s l : i f>187 </ x s l : f o r −each>188 </xs l :when>189 </ x s l : c h o o s e>190 </ x s l : f o r −each>191 <x s l : i f t e s t="doc ( ' i nput : opc i one s ' ) / datos / imagenId != ' ' ">192 <x s l : v a r i a b l e name=" imagenId" s e l e c t="doc ( ' i nput : opc i one s ' ) /
datos / imagenId"/>193 <x s l : f o r −each s e l e c t="//img [ @id=$imagenId ] ">194 <imagen_url>195 <xs l : v a l u e−o f s e l e c t="@src"/>196 </imagen_url>197 </ x s l : f o r −each>198 </ x s l : i f>199 </ items>200 </p: input>201 <p: input name="data" h r e f="#page"/>202 <p: input name=" opc iones " h r e f="#opc iones "/>203 <p:output name="data" id=" r e s u l t "/>204 </ p :p r o c e s s o r>205
206 <!−− Procesador para ex t r a e r l a s t ab l a s de l a in formac ión recuperada −−>207 <p :p r o c e s s o r name=" o x f : x s l t ">208 <p: input name="data" h r e f="#r e s u l t "/>209 <p: input name=" con f i g ">210 <x s l : s t y l e s h e e t version=" 2 .0 ">211
212 <xs l : t emp l a t e match="/">213 <items>214 <xs l : app ly−templates s e l e c t="/ items / tab la "/>215 </ items>216 </ xs l : t emp l a t e>217
218 <xs l : t emp l a t e match="/ items / tab la ">219 <tab l e>220 <x s l : f o r −each s e l e c t=" f i l a ">221 <x s l : i f t e s t="count ( . / / elementoCab )=0">222 <tr>223 <x s l : f o r −each s e l e c t=" elemento ">224 <td>225 <x s l : i f t e s t="@numFilas != ' ' ">226 <x s l : a t t r i b u t e name="rowspan">
296 Apéndice B. Ficheros desarrollados para la aplicación
227 <xs l : v a l u e−o f s e l e c t="@numFilas"/>228 </ x s l : a t t r i b u t e>229 </ x s l : i f>230 <xs l : v a l u e−o f s e l e c t=" . "/>231 </td>232 </ x s l : f o r −each>233 </ t r>234 </ x s l : i f>235 </ x s l : f o r −each>236 </ tab l e>237 </ xs l : t emp l a t e>238
239 </ x s l : s t y l e s h e e t>240 </p: input>241 <p:output name="data" id=" tab l a s "/>242 </ p :p r o c e s s o r>243
244 <!−− Procesador para normal i zar l a s t ab l a s ( e l im ina r e l a t r i bu to ' rowspan' ) −−>
245 <p :p r o c e s s o r name=" o x f : x s l t ">246 <p: input name=" con f i g " h r e f=" normal izar_tablas . x s l "/>247 <p: input name="data" h r e f="#tab l a s "/>248 <p:output name="data" id="tablas_norm"/>249 </ p :p r o c e s s o r>250
251 <!−− Procesador para dar formato a l f i c h e r o XML de s a l i d a −−>252 <p :p r o c e s s o r name=" o x f : x s l t ">253 <p: input name=" con f i g " h r e f="guiaBusqueda . x s l "/>254 <p: input name="data" h r e f="#r e s u l t "/>255 <p: input name=" tab l a s " h r e f="#tablas_norm"/>256 <p: input name=" opc iones " h r e f="#opc iones "/>257 <p:output name="data" id="guiaBusqueda_xml"/>258 </ p :p r o c e s s o r>259
260 <!−− Procesador para d e f i n i r e l nombre y ruta de l f i c h e r o XML de s a l i d a−−>
261 <p :p r o c e s s o r name=" o x f : x s l t ">262 <p: input name="data" h r e f="#dir_emiss ion "/>263 <p: input name=" opc iones " h r e f="#opc iones "/>264 <p: input name=" con f i g ">265 <x s l : s t y l e s h e e t version=" 2 .0 ">266 <xs l : t emp l a t e match="/">267 <config>268 <x s l : v a r i a b l e name=" d i r e c t o r i o " s e l e c t="/ d i r e c t o r y /@path"/
>269 <x s l : v a r i a b l e name="nombreFich" s e l e c t="doc ( '
i nput : opc i one s ' ) / datos /nombreFichero"/>270 <directory>271 <xs l : v a l u e−o f s e l e c t="$ d i r e c t o r i o "/>272 </directory>273 < f i l e>274 <xs l : v a l u e−o f s e l e c t=" concat ($ nombreFich , ' . xml ' ) "/>275 </ f i l e>276 <content−type>text /xml</content−type>277 </config>278 </ xs l : t emp l a t e>279 </ x s l : s t y l e s h e e t>280 </p: input>281 <p:output name="data" id=" rutaFichero "/>282 </ p :p r o c e s s o r>283
284 <!−− Procesador para d e f i n i r l a s prop iedades y conten ido de l f i c h e r o XMLde s a l i d a −−>
285 <p :p r o c e s s o r name="oxf :xml−conver t e r ">
B.4. Directorio de gestión de las actualizaciones automáticas 297
286 <p: input name=" con f i g ">287 <config>288 <content−type>app l i c a t i on /xml</content−type>289 <encoding>utf−8</encoding>290 <version>1.0</version>291 </config>292 </p: input>293 <p: input name="data" h r e f="#guiaBusqueda_xml"/>294 <p:output name="data" id="guiaBusqueda_fich "/>295 </ p :p r o c e s s o r>296
297 <!−− Procesador para s e r i a l i z a r e l f i c h e r o XML de s a l i d a −−>298 <p :p r o c e s s o r name=" o x f : f i l e −s e r i a l i z e r ">299 <p: input name=" con f i g " h r e f="#rutaFichero "/>300 <p: input name="data" h r e f="#guiaBusqueda_fich "/>301 </ p :p r o c e s s o r>302
303 <!−− Procesadores para recuperar y guardar l a s imágenes de bienvenida −−>304 <p:choose h r e f="#opc iones ">305 <p:when t e s t="/datos / imagenId != ' ' ">306 <p :p r o c e s s o r name=" o x f : p i p e l i n e ">307 <p: input name=" con f i g " h r e f="guiaBusqueda_imagesBienv . xpl "/>308 <p: input name="dir_emiss ion " h r e f="#dir_emiss ion "/>309 <p: input name=" opc iones " h r e f="#opc iones "/>310 <p: input name=" r e s u l t " h r e f="#r e s u l t "/>311 </ p :p r o c e s s o r>312 </p:when>313 <p:o the rw i s e>314 </ p :o the rw i s e>315 </p:choose>316
317 <!−− Procesadores para recuperar y guardar l a s imágenes de in formac ión −−>
318 <p: f o r−each h r e f="#r e s u l t " s e l e c t="/ items /enl_imagen">319 <p :p r o c e s s o r name=" o x f : p i p e l i n e ">320 <p: input name=" con f i g " h r e f="guiaBusqueda_imagesInfo . xpl "/>321 <p: input name="dir_emiss ion " h r e f="#dir_emiss ion "/>322 <p: input name=" opc iones " h r e f="#opc iones "/>323 <p: input name=" r e s u l t " h r e f=" cur rent ( ) "/>324 </ p :p r o c e s s o r>325 </ p : f o r−each>326
327 </ p : c o n f i g>
normalizar_tablas.xsl
1 <?xml version=' 1 .0 ' encoding=' utf−8 ' ?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns :xa lan
=" ht tp : //xml . apache . org / x s l t " version=" 2 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <!−− Este f i c h e r o t i e n e por func ión normal i zar t ab l a s ; e s dec i r , e l im ina rl o s a t r i bu t o s ' rowspan ' y ' co l span '
7 empleados en HTML para d e f i n i r c e l da s múl t ip l e s , y formar una tab laen l a que todas l a s c e l da s tengan e l
8 mismo tamaño −−>9
10 <x s l : v a r i a b l e name="table_with_no_colspans">11 <xs l :app ly− t emplate s mode=" co l span " />12 </ x s l : v a r i a b l e>
298 Apéndice B. Ficheros desarrollados para la aplicación
13
14 <x s l : v a r i a b l e name="table_with_no_rowspans">15 <xs l : f o r− ea ch s e l e c t="$ table_with_no_colspans">16 <xs l :app ly− t emplate s mode="rowspan"/>17 </ xs l : f o r− ea ch>18 </ x s l : v a r i a b l e>19
20 <xs l : t emp l a t e match="/">21 <xs l :app ly− t emplate s s e l e c t="$table_with_no_rowspans" mode=" f i n a l " />22 </ xs l : t emp l a t e>23
24 <xs l : t emp l a t e match="@∗ |∗ " mode="#a l l ">25 <xs l : c opy>26 <xs l :app ly− t emplate s s e l e c t="@∗ |∗ " mode="#current " />27 </ xs l : c opy>28 </ xs l : t emp l a t e>29
30 <xs l : t emp l a t e match="td" mode=" co l span ">31 <xs l : c h o o s e>32 <xsl :when t e s t="@colspan">33 <x s l : v a r i a b l e name=" t h i s " s e l e c t=" . " as=" element ( ) " />34 <xs l : f o r− ea ch s e l e c t="1 to @colspan">35 <td>36 <xs l : copy−o f s e l e c t="$ t h i s /@∗ [ not (name ( ) = ' colspan ' ) ] [ not
(name ( ) = ' width ' ) ] " />37 <xs l : copy−o f s e l e c t="$ t h i s /node ( ) " />38 </td>39 </ xs l : f o r− ea ch>40 </xs l :when>41 <x s l : o t h e rw i s e>42 <xs l : copy−o f s e l e c t=" . " />43 </ x s l : o t h e rw i s e>44 </ x s l : c h o o s e>45 </ xs l : t emp l a t e>46
47 <!−− Debe func ionar tanto para table/ tr como para table/tbody/ tr −−>48 <xs l : t emp l a t e match="tbody | t ab l e [ not ( tbody ) ] " mode="rowspan">49 <xs l : c opy>50 <xs l : copy−o f s e l e c t=" t r [ 1 ] " />51 <xs l :app ly− t emplate s s e l e c t=" t r [ 2 ] " mode="rowspan">52 <xsl:with−param name="previousRow" s e l e c t=" t r [ 1 ] " />53 </ xs l : app ly− t emplate s>54 </ xs l : c opy>55 </ xs l : t emp l a t e>56
57 <xs l : t emp l a t e match=" t r " mode="rowspan">58 <xsl :param name="previousRow" as=" element ( ) " />59
60 <x s l : v a r i a b l e name="currentRow" s e l e c t=" . " />61
62 <x s l : v a r i a b l e name="normalizedTDs">63 <xs l : f o r− ea ch s e l e c t="$previousRow/td">64 <xs l : c h o o s e>65 <xsl :when t e s t="@rowspan > ; 1">66 <xs l : c opy>67 <x s l : a t t r i b u t e name="rowspan">68 <xs l : v a l u e−o f s e l e c t="@rowspan − 1" />69 </ x s l : a t t r i b u t e>70 <xs l : copy−o f s e l e c t="@∗ [ not (name ( ) = ' rowspan ' ) ] " />71 <xs l : copy−o f s e l e c t="node ( ) " />72 </ xs l : c opy>73 </xs l :when>74 <x s l : o t h e rw i s e>
B.4. Directorio de gestión de las actualizaciones automáticas 299
75 <xs l : copy−o f s e l e c t="$currentRow/td [ 1 + count ( cur rent ( ) /p r e c e d i n g− s i b l i n g : : t d [ not (@rowspan ) or (@rowspan = 1)] ) ] " />
76 </ x s l : o t h e rw i s e>77 </ x s l : c h o o s e>78 </ xs l : f o r− ea ch>79 </ x s l : v a r i a b l e>80
81 <x s l : v a r i a b l e name="newRow" as="element ( t r ) ">82 <xs l : c opy>83 <xs l : copy−o f s e l e c t="$currentRow/@∗" />84 <xs l : copy−o f s e l e c t="$normalizedTDs" />85 </ xs l : c opy>86 </ x s l : v a r i a b l e>87
88 <xs l : copy−o f s e l e c t="$newRow" />89
90 <xs l :app ly− t emplate s s e l e c t=" f o l l ow i n g− s i b l i n g : : t r [ 1 ] " mode="rowspan">91 <xsl:with−param name="previousRow" s e l e c t="$newRow" />92 </ xs l : app ly− t emplate s>93 </ xs l : t emp l a t e>94
95 <xs l : t emp l a t e match="td" mode=" f i n a l ">96 <xs l : c h o o s e>97 <xsl :when t e s t="@rowspan">98 <xs l : c opy>99 <xs l : copy−o f s e l e c t="@∗ [ not (name ( ) = ' rowspan ' ) ] " />
100 <xs l : copy−o f s e l e c t="node ( ) " />101 </ xs l : c opy>102 </xs l :when>103 <x s l : o t h e rw i s e>104 <xs l : copy−o f s e l e c t=" . " />105 </ x s l : o t h e rw i s e>106 </ x s l : c h o o s e>107 </ xs l : t emp l a t e>108
109 </ x s l : s t y l e s h e e t>
guiaBusqueda.xsl
1 <?xml version=' 1 .0 ' encoding=' utf−8 ' ?>2 <x s l : s t y l e s h e e t xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform" xmlns :xa lan
=" ht tp : //xml . apache . org / x s l t " version=" 2 .0 ">3
4 <xs l : ou tpu t method="xml" indent="yes " xalan:indent−amount="4"/>5
6 <x s l : v a r i a b l e name="nombreFichero" s e l e c t="doc ( ' i nput : opc i one s ' ) / datos /nombreFichero"/>
7
8 <x s l : v a r i a b l e name=" to ta lTab la s ">9 <xs l : v a l u e−o f s e l e c t="count (// tab la ) "/>
10 </ x s l : v a r i a b l e>11
12 <xs l : t emp l a t e match=" items ">13 <page>14
15 <help>c_help</help>16
17 <!−− Contenedor de l í n d i c e l a t e r a l −−>18 <container id=" c_ind i c e_ la t e ra l " v i s="1" alpha="0" posx="560" posy=
"214" s i z e x="118" s i z e y="168">
300 Apéndice B. Ficheros desarrollados para la aplicación
19 <image path=" images / ind_guia_on . png" posy="0" posx="0" s i z e x="118" s i z e y="28"></image>
20 <image path=" images / ind_anuncios_off . png" posy="28" posx="0"s i z e x="118" s i z e y="28"></image>
21 <image path=" images / ind_empresas_off . png" posy="56" posx="0"s i z e x="118" s i z e y="28"></image>
22 <image path=" images / ind_formacion_off . png" posy="84" posx="0"s i z e x="118" s i z e y="28"></image>
23 <image path=" images / ind_d i r e c to r i o_o f f . png" posy="112" posx="0"s i z e x="118" s i z e y="28"></image>
24 <image path=" images / ind_web_off . png" posy="140" posx="0" s i z e x="118" s i z e y="28"></image>
25 </container>26
27 <!−− Contenedor de l menú ho r i z on t a l ( pag inac ión ) −−>28 <container alpha="0" id="c_menu_hor" s i z e y="35" s i z e x="530" posy="
215" posx="30" v i s="1">29 <menu type=" ho r i z on t a l " posx="10" posy="0" s i z e x="530" s i z e y="25
" itemx="36" itemy="25" sepx="5" sepy="0" s t y l e="s_menuhorCentrado" cursorx="0">
30 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /bot_matrix_on . png" s t r="1">
31 <x s l : a t t r i b u t e name="onover ">32 <xs l : v a l u e−o f s e l e c t=" concat ( ' showcont ( ' , $ nombreFichero
, ' . c_bienv ) ' ) "/>33 </ x s l : a t t r i b u t e>34 </menuitem>35
36 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /bot_matrix_on . png" s t r="2">
37 <x s l : a t t r i b u t e name="onover ">38 <xs l : v a l u e−o f s e l e c t=" concat ( ' showcont ( ' , $ nombreFichero
, ' . c_texto ) ' ) "/>39 </ x s l : a t t r i b u t e>40 </menuitem>41
42 <xs l :app ly− t emplate s s e l e c t=" tab la " mode=" pag inac ion "/>43 <xs l :app ly− t emplate s s e l e c t="enl_imagen" mode=" pag inac ion "/>44 </menu>45 </container>46
47 <!−− Contenedor de l t í t u l o de l a página −−>48 <container id=" c_t i tu l o " v i s="1" posx="30" posy="250" s i z e x="520"
s i z e y="25" alpha="0">49 <x s l : v a r i a b l e name=" t i t u l o 2 " s e l e c t=" t i t u l o "/>50 <x s l : v a r i a b l e name=" t i t u l o ">51 <xs l : c h o o s e>52 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos / t ipo='tuEmpleo
' ">53 <xs l : v a l u e−o f s e l e c t=" concat ( 'Tu empleo: ' , $ t i t u l o 2 ) "/>54 </xs l :when>55 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos / t ipo='
comoBuscar ' ">56 <xs l : v a l u e−o f s e l e c t=" concat ( 'Cómo buscar empleo: ' , $
t i t u l o 2 ) "/>57 </xs l :when>58 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos / t ipo='
autoempleo ' ">59 <xs l : v a l u e−o f s e l e c t=" concat ( ' Autoempleo: ' , $ t i t u l o 2 ) "/
>60 </xs l :when>61 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos / t ipo='
formacion ' ">62 <xs l : v a l u e−o f s e l e c t=" concat ( ' Formación: ' , $ t i t u l o 2 ) "/>
B.4. Directorio de gestión de las actualizaciones automáticas 301
63 </xs l :when>64 </ x s l : c h o o s e>65 </ x s l : v a r i a b l e>66 <text s t y l e="s_body" posx="0" posy="0" s i z e x="520" s i z e y="25"
s c r o l l="0">67 <xs l : v a l u e−o f s e l e c t="$ t i t u l o "/>68 </text>69 </container>70
71 <!−− Contenedor de l t exto ( e imagen , en su caso ) de b ienvenida −−>72 <container id="c_bienv" v i s="0" posx="30" posy="275" s i z e x="520"
s i z e y="255" alpha="0">73 <x s l : v a r i a b l e name=" textoEntrada " s e l e c t=" ' Para con su l t a r l a
información , pu l s e l a f l e c h a de l a derecha una s o l a vez yluego desp lace e l t exto con l a s f l e c h a s de a r r i ba / abajo .Para vo lve r a l menú ante r i o r , puede pu l sa r "OK" encua l qu i e r momento . ' "/>
74 <text s t y l e="s_body2" posy="0" s i z e x="320" s i z e y="255" s c r o l l="0">
75 <x s l : a t t r i b u t e name="posx">76 <xs l : c h o o s e>77 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos / imagenId
!= ' ' ">190</ xs l :when>78 <x s l : o t h e rw i s e>10</ x s l : o t h e rw i s e>79 </ x s l : c h o o s e>80 </ x s l : a t t r i b u t e>81 <xs l : v a l u e−o f s e l e c t="$ textoEntrada "/>82 </text>83 <x s l : i f t e s t="doc ( ' i nput : opc i one s ' ) / datos / imagenId != ' ' ">84 <image posx="0" posy="10">85 <x s l : v a r i a b l e name="nombre_fich1" s e l e c t="doc ( '
i nput : opc i one s ' ) / datos / imagen"/>86 <x s l : v a r i a b l e name="nombre_fich2" s e l e c t="doc ( '
i nput : opc i one s ' ) / datos / imagenId"/>87 <x s l : a t t r i b u t e name="path">88 <xs l : v a l u e−o f s e l e c t=" concat ( ' images / ' ,$ nombre_fich1 , $
nombre_fich2 , ' . jpg ' ) "/>89 </ x s l : a t t r i b u t e>90 </image>91 </ x s l : i f>92 </container>93
94 <!−− Contenedor de l botón "Volver " −−>95 <container id="c_menu" v i s="1" alpha="0" posx="558" posy="445"
s i z e x="122" s i z e y="79">96 <menu type=" v e r t i c a l " posx="0" posy="0" s i z e x="122" s i z e y="79"
itemx="122" itemy="79" sepx="0" sepy="0" s t y l e="s_menuSinFondo">
97 <menuitem img=" images /bot_grande_off . png" imgfocus=" images /bot_grande_on . png" s t r="
 Volver ">
98 <action key="OK">99 <x s l : a t t r i b u t e name=" act ">
100 <x s l : v a r i a b l e name="comun" s e l e c t=" concat ( ' hidepage( ' , $ nombreFichero , ' ) ' ) "/>
101 <x s l : v a r i a b l e name="comun2">102 <xs l : c h o o s e>103 <xsl :when t e s t=" conta in s ($ nombreFichero , ' 2 4 ' ) "
>104 <xs l : v a l u e−o f s e l e c t=" ' , showpage (24) ' "/>105 </xs l :when>106 <xsl :when t e s t=" conta in s ($ nombreFichero , ' 2 6 ' ) "
>107 <xs l : v a l u e−o f s e l e c t=" ' , showpage (26) ' "/>108 </xs l :when>
302 Apéndice B. Ficheros desarrollados para la aplicación
109 <x s l : o t h e rw i s e>110 <xs l : v a l u e−o f s e l e c t=" concat ( ' , showpage (
guia_busqueda ' , s ub s t r i ng ($ nombreFichero, 2 , 1 ) , ' ) ' ) "/>
111 </ x s l : o t h e rw i s e>112 </ x s l : c h o o s e>113 </ x s l : v a r i a b l e>114 <xs l : v a l u e−o f s e l e c t=" concat ($comun , $ comun2) "/>115 </ x s l : a t t r i b u t e>116 <x s l : a t t r i b u t e name="actback ">117 <xs l : c h o o s e>118 <xsl :when t e s t=" conta in s ($ nombreFichero , ' 2 4 ' ) ">119 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (24) ,
showpage ( ' , $ nombreFichero , ' ) ' ) "/>120 </xs l :when>121 <xsl :when t e s t=" conta in s ($ nombreFichero , ' 2 6 ' ) ">122 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (26) ,
showpage ( ' , $ nombreFichero , ' ) ' ) "/>123 </xs l :when>124 <x s l : o t h e rw i s e>125 <xs l : v a l u e−o f s e l e c t=" concat ( ' hidepage (
guia_busqueda ' , s ub s t r i ng ($ nombreFichero, 2 , 1 ) , ' ) , showpage ( ' , $ nombreFichero , ' ) ' ) "/>
126 </ x s l : o t h e rw i s e>127 </ x s l : c h o o s e>128 </ x s l : a t t r i b u t e>129 </action>130 </menuitem>131 </menu>132 </container>133
134 <!−− Contenedor de l t exto de in formac ión −−>135 <container id="c_texto" v i s="0" alpha="0" posx="30" posy="275"
s i z e x="520" s i z e y="255">136 <text s t y l e=" s_bodyDetal le " posx="0" posy="7" s i z e x="520" s i z e y=
"245" s c r o l l="1">137 <xs l :app ly− t emplate s s e l e c t=" texto "/>138 </text>139 </container>140
141 <xs l :app ly− t emplate s s e l e c t=" tab la " mode=" contenedores "/>142
143 <xs l :app ly− t emplate s s e l e c t="enl_imagen" mode=" contenedores "/>144
145 </page>146 </ xs l : t emp l a t e>147
148 <!−− P l a n t i l l a para e l t exto de in formac ión −−>149 <xs l : t emp l a t e match=" texto ">150 <x s l : i f t e s t="not ( conta in s ( t ex t ( ) , ' Descargar ' ) ) and not ( conta in s ( t ex t
( ) , ' haz c l i c k en ' ) ) ">151 <xs l : c h o o s e>152 <xsl :when t e s t="doc ( ' i nput : opc i one s ' ) / datos /nombreFichero != '_43 '
">153 <xs l : v a l u e−o f s e l e c t=" . "/>154 </xs l :when>155 <x s l : o t h e rw i s e>156 <x s l : v a r i a b l e name=" po s i c i on " s e l e c t=" po s i t i o n ( ) "/>157 <x s l : i f t e s t="$ po s i c i on &l t ; 5">158 <xs l : v a l u e−o f s e l e c t=" . "/>159 </ x s l : i f>160 </ x s l : o t h e rw i s e>161 </ x s l : c h o o s e>162 </ x s l : i f>
B.4. Directorio de gestión de las actualizaciones automáticas 303
163 </ xs l : t emp l a t e>164
165 <!−− P l a n t i l l a para l o s contenedores de l a s t ab l a s −−>166 <xs l : t emp l a t e match=" tab la " mode=" contenedores ">167 <x s l : v a r i a b l e name=" po s i c i on ">168 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>169 </ x s l : v a r i a b l e>170 <x s l : v a r i a b l e name="hayCabecera">171 <xs l : c h o o s e>172 <xsl :when t e s t="count ( . / f i l a [ 1 ] / / elementoCab ) !=0">1</xs l :when>173 <x s l : o t h e rw i s e>0</ x s l : o t h e rw i s e>174 </ x s l : c h o o s e>175 </ x s l : v a r i a b l e>176
177 <container v i s="0" alpha="0" posx="30" posy="275" s i z e x="530" s i z e y="265">
178 <x s l : a t t r i b u t e name=" id ">179 <xs l : v a l u e−o f s e l e c t=" concat ( ' c_tabla_ ' , $ po s i c i on ) "/>180 </ x s l : a t t r i b u t e>181
182 <xs l : c h o o s e>183 <!−− Caso de que sea l a página 262 (Cómo buscar empleo −
Afrontar e l proc . de s e l e c c i ó n − Pág . 2) −−>184 <xsl :when t e s t="$nombreFichero='_262 ' ">185 <text s t y l e=" s_bodyDetal le " posx="0" posy="7" s i z e x="520"
s i z e y="245" s c r o l l="1">186 <xs l : c h o o s e>187 <xsl :when t e s t="$hayCabecera= '1 '">188 <xs l : f o r− ea ch s e l e c t=" . / f i l a [ 1 ] / elementoCab [ 1 ] ">189 <xs l : v a l u e−o f s e l e c t=" concat ( '∗∗∗ ' , t ex t ( ) , ' :

;
 ' ) "/>190 </ xs l : f o r− ea ch>191 <xs l : f o r− ea ch s e l e c t=" . / f i l a ">192 <x s l : v a r i a b l e name=" posF i l a ">193 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>194 </ x s l : v a r i a b l e>195 <x s l : i f t e s t="$ posF i l a > ; 1">196 <x s l : v a r i a b l e name=" texto " s e l e c t="doc ( '
i npu t : t ab l a s ' ) / items / tab l e [ number ($po s i c i on ) ] / t r [ number ($ posF i l a − $hayCabecera ) ] / td [ 1 ] "/>
197 <xs l : v a l u e−o f s e l e c t=" concat ( '− ' ,$ texto ,'

 ' ) "/>
198 </ x s l : i f>199 </ xs l : f o r− ea ch>200 <xs l : f o r− ea ch s e l e c t=" . / f i l a [ 1 ] / elementoCab [ 2 ] ">201 <xs l : v a l u e−o f s e l e c t=" concat ('

∗∗∗ ' , t ex t
( ) , ' :

 ' ) "/>202 </ xs l : f o r− ea ch>203 <xs l : f o r− ea ch s e l e c t=" . / f i l a ">204 <x s l : v a r i a b l e name=" posF i l a ">205 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>206 </ x s l : v a r i a b l e>207 <x s l : i f t e s t="$ posF i l a > ; 1">208 <x s l : v a r i a b l e name=" texto " s e l e c t="doc ( '
i npu t : t ab l a s ' ) / items / tab l e [ number ($po s i c i on ) ] / t r [ number ($ posF i l a − $hayCabecera ) ] / td [ 2 ] "/>
209 <xs l : v a l u e−o f s e l e c t=" concat ( '− ' ,$ texto ,'

 ' ) "/>
210 </ x s l : i f>211 </ xs l : f o r− ea ch>212 </xs l :when>213 <x s l : o t h e rw i s e>
304 Apéndice B. Ficheros desarrollados para la aplicación
214 <xs l : f o r− ea ch s e l e c t=" . / f i l a ">215 <x s l : v a r i a b l e name=" posF i l a ">216 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>217 </ x s l : v a r i a b l e>218 <xs l : v a l u e−o f s e l e c t=" concat ( '∗∗∗ ' , doc ( '
i npu t : t ab l a s ' ) / items / tab l e [ number ($ po s i c i on )] / t r [ number ($ posF i l a − $hayCabecera ) ] / td[1] , '

 ' ) "/>
219 <xs l : v a l u e−o f s e l e c t=" concat ( doc ( ' i npu t : t ab l a s ' ) /items / tab l e [ number ($ po s i c i on ) ] / t r [ number ($posF i l a − $hayCabecera ) ] / td [2] , '


 ' ) "/>
220 </ xs l : f o r− ea ch>221 </ x s l : o t h e rw i s e>222 </ x s l : c h o o s e>223 </text>224
225 </xs l :when>226
227 <!−− Caso e s t ánda r : se c rea l a tab la de forma normal −−>228 <x s l : o t h e rw i s e>229 <table s t y l e 1="s_tabla_impares " s t y l e 0=" s_tabla_pares " s i z e x=
"525" s i z e y="260" posx="0" posy="0">230 <x s l : i f t e s t="$hayCabecera= '1 '">231 <x s l : a t t r i b u t e name=" s ty l eh eade r ">s_tabla_cabecera</
x s l : a t t r i b u t e>232 </ x s l : i f>233
234 <x s l : v a r i a b l e name="numCol">235 <xs l : c h o o s e>236 <xsl :when t e s t="count ( . / f i l a [ 1 ] / / elementoCab ) !=0">237 <xs l : v a l u e−o f s e l e c t="count ( . / f i l a [ 1 ] / /
elementoCab ) "/>238 </xs l :when>239 <x s l : o t h e rw i s e>240 <xs l : v a l u e−o f s e l e c t="count ( . / f i l a [ 1 ] / / elemento ) "
/>241 </ x s l : o t h e rw i s e>242 </ x s l : c h o o s e>243 </ x s l : v a r i a b l e>244 <x s l : v a r i a b l e name="numFil" s e l e c t="count ( . / / f i l a ) "/>245
246 <x s l : a t t r i b u t e name=" c e l l x ">247 <xs l : v a l u e−o f s e l e c t="number ( f l o o r (520 div $numCol ) ) "/>248 </ x s l : a t t r i b u t e>249 <x s l : a t t r i b u t e name=" c e l l y ">250 <xs l : v a l u e−o f s e l e c t="number ( f l o o r (255 div $numFil ) ) "/>251 </ x s l : a t t r i b u t e>252
253 <xs l : f o r− ea ch s e l e c t=" f i l a ">254 <x s l : v a r i a b l e name=" posF i l a ">255 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>256 </ x s l : v a r i a b l e>257 <tr>258 <xs l : c h o o s e>259 <xsl :when t e s t="count ( . / / elementoCab ) !=0">260 <xs l : f o r− ea ch s e l e c t="elementoCab">261 <th>262 <xs l : v a l u e−o f s e l e c t=" . "/>263 </th>264 </ xs l : f o r− ea ch>265 </xs l :when>266 <x s l : o t h e rw i s e>
B.4. Directorio de gestión de las actualizaciones automáticas 305
267 <xs l : f o r− ea ch s e l e c t="doc ( ' i npu t : t ab l a s ' ) /items / tab l e [ number ($ po s i c i on ) ] / t r [ number ($posF i l a − $hayCabecera ) ] / td">
268 <td>269 <xs l : c h o o s e>270 <xsl :when t e s t=" po s i t i o n ( )=4 and $
nombreFichero='_13 ' ">271 <x s l : i f t e s t="$ posF i l a != '5 ' ">272 <x s l : v a r i a b l e name=" texto "
s e l e c t=" subs t r ing−be fo re (subs t r i ng−a f t e r ( t ex t ( ) ,concat (number ($ posF i l a − $hayCabecera ) , ' . ' ) ) , concat (number ($ posF i l a − $hayCabecera + 1) , ' . ' ) ) "/>
273 <xs l : v a l u e−o f s e l e c t=" concat (number ($ posF i l a − $hayCabecera ) , ' . ' , $ t exto ) "/>
274 </ x s l : i f>275 <x s l : i f t e s t="$ posF i l a = '5 '">276 <x s l : v a r i a b l e name=" texto "
s e l e c t=" subs t r i ng−a f t e r (t ex t ( ) , concat (number ($posF i l a − $hayCabecera ) , ' .' ) ) "/>
277 <xs l : v a l u e−o f s e l e c t=" concat (number ($ posF i l a − $hayCabecera ) , ' . ' , $ t exto ) "/>
278 </ x s l : i f>279 </xs l :when>280 <x s l : o t h e rw i s e>281 <xs l : v a l u e−o f s e l e c t=" . "/>282 </ x s l : o t h e rw i s e>283 </ x s l : c h o o s e>284 </td>285 </ xs l : f o r− ea ch>286 </ x s l : o t h e rw i s e>287 </ x s l : c h o o s e>288 </ tr>289 </ xs l : f o r− ea ch>290
291 </table>292 </ x s l : o t h e rw i s e>293
294 </ x s l : c h o o s e>295
296 </container>297 </ xs l : t emp l a t e>298
299 <!−− P l a n t i l l a de pag inac ión para l a s t ab l a s −−>300 <xs l : t emp l a t e match=" tab la " mode=" pag inac ion ">301 <x s l : v a r i a b l e name=" po s i c i on ">302 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>303 </ x s l : v a r i a b l e>304 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">305 <x s l : a t t r i b u t e name=" s t r ">306 <xs l : v a l u e−o f s e l e c t="number ($ po s i c i on + 2) "/>307 </ x s l : a t t r i b u t e>308 <x s l : a t t r i b u t e name="onover ">309 <xs l : c h o o s e>310 <xsl :when t e s t="$nombreFichero='_262 ' ">
306 Apéndice B. Ficheros desarrollados para la aplicación
311 <xs l : v a l u e−o f s e l e c t=" concat ( ' showcont ( ' , $ nombreFichero , ' .c_tabla_ ' , $ pos i c i on , ' ) ' ) "/>
312 </xs l :when>313 <x s l : o t h e rw i s e>314 <xs l : v a l u e−o f s e l e c t=" concat ( ' showcont ( ' , $ nombreFichero , ' .
c_tabla_ ' , $ pos i c i on , ' ) , l o ckcont ( ' , $ nombreFichero , ' .c_tabla_ ' , $ pos i c i on , ' ) ' ) "/>
315 </ x s l : o t h e rw i s e>316 </ x s l : c h o o s e>317 </ x s l : a t t r i b u t e>318 </menuitem>319 </ xs l : t emp l a t e>320
321 <!−− P l a n t i l l a para l o s contenedores de l a s imágenes de in formac ión −−>322 <xs l : t emp l a t e match="enl_imagen" mode=" contenedores ">323 <x s l : v a r i a b l e name=" po s i c i on ">324 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>325 </ x s l : v a r i a b l e>326 <container v i s="0" alpha="0" posx="30" posy="275" s i z e x="520" s i z e y="
255">327 <x s l : a t t r i b u t e name=" id ">328 <xs l : v a l u e−o f s e l e c t=" concat ( ' c_imag_info_ ' , $ po s i c i on ) "/>329 </ x s l : a t t r i b u t e>330 <image posx="10" posy="0">331 <x s l : v a r i a b l e name="nombre_fich1" s e l e c t="doc ( ' i nput : opc i one s ' ) /
datos /nombreFichero"/>332 <x s l : v a r i a b l e name="nombre_fich2" s e l e c t=" subs t r i ng−a f t e r ( t ex t ( )
, ' ga l e r i a Imagenes / ' ) "/>333 <x s l : a t t r i b u t e name="path">334 <xs l : v a l u e−o f s e l e c t=" concat ( ' images / ' ,$ nombre_fich1 , $
nombre_fich2 ) "/>335 </ x s l : a t t r i b u t e>336 </image>337 </container>338 </ xs l : t emp l a t e>339
340 <!−− P l a n t i l l a de pag inac ión para l a s imágenes de in formac ión −−>341 <xs l : t emp l a t e match="enl_imagen" mode=" pag inac ion ">342 <x s l : v a r i a b l e name=" po s i c i on ">343 <xs l : v a l u e−o f s e l e c t=" po s i t i o n ( ) "/>344 </ x s l : v a r i a b l e>345 <menuitem img=" images /bot_matrix_off . png" imgfocus=" images /
bot_matrix_on . png">346 <x s l : a t t r i b u t e name=" s t r ">347 <xs l : v a l u e−o f s e l e c t="number ($ po s i c i on + $ to ta lTab la s + 2) "/>348 </ x s l : a t t r i b u t e>349 <x s l : a t t r i b u t e name="onover ">350 <xs l : v a l u e−o f s e l e c t=" concat ( ' showcont ( ' , $ nombreFichero , ' .
c_imag_info_ ' , $ pos i c i on , ' ) ' ) "/>351 </ x s l : a t t r i b u t e>352 </menuitem>353 </ xs l : t emp l a t e>354
355 </ x s l : s t y l e s h e e t>
guiaBusqueda_imagesBienv.xpl
1 <p : c on f i g xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s " xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform">
2
B.4. Directorio de gestión de las actualizaciones automáticas 307
3 <p:param name="dir_emiss ion " type=" input "/>4 <p:param name=" opc iones " type=" input "/>5 <p:param name=" r e s u l t " type=" input "/>6
7 <!−− Procesador para d e f i n i r l a URL en l a que se encuentra l a imagen −−>8 <p :p r o c e s s o r name=" o x f : x s l t ">9 <p: input name=" con f i g ">
10 <config xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"x s l : v e r s i o n=" 2 .0 ">
11 <url>12 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www. juntadeanda luc ia . es
' , / i tems / imagen_url ) "/>13 </url>14 <content−type>image/ jpeg</content−type>15 <validating>true</validating>16 </config>17 </p: input>18 <p: input name="data" h r e f="#r e s u l t "/>19 <p:output name="data" id=" con f ig−u r l "/>20 </ p :p r o c e s s o r>21
22 <!−− Procesador para d e f i n i r e l nombre y d i r e c t o r i o de l f i c h e r o de s a l i d a−−>
23 <p :p r o c e s s o r name=" o x f : x s l t ">24 <p: input name="data" h r e f="#r e s u l t "/>25 <p: input name="dir_emiss ion " h r e f="#dir_emiss ion "/>26 <p: input name=" opc iones " h r e f="#opc iones "/>27 <p: input name=" con f i g ">28 <x s l : s t y l e s h e e t version=" 2 .0 ">29 <xs l : t emp l a t e match="/">30 <config>31 <x s l : v a r i a b l e name=" sa lvar_di r " s e l e c t="doc ( '
input :d i r_emis s ion ' ) / d i r e c t o r y /@path"/>32 <x s l : v a r i a b l e name=" sa lva r_f i ch1 " s e l e c t="doc ( '
i nput : opc i one s ' ) / datos / imagen"/>33 <x s l : v a r i a b l e name=" sa lva r_f i ch2 " s e l e c t="doc ( '
i nput : opc i one s ' ) / datos / imagenId"/>34 <directory>35 <xs l : v a l u e−o f s e l e c t=" concat ($ sa lvar_dir , ' / images ' ) "/>36 </directory>37 < f i l e>38 <xs l : v a l u e−o f s e l e c t=" concat ($ sa lvar_f i ch1 , $
sa lvar_f i ch2 , ' . jpg ' ) "/>39 </ f i l e>40 <content−type>image/ jpeg</content−type>41 </config>42 </ xs l : t emp l a t e>43 </ x s l : s t y l e s h e e t>44 </p: input>45 <p:output name="data" id=" con f ig−f i ch−s a l "/>46 </ p :p r o c e s s o r>47
48 <!−− Procesador para recuperar l a imagen −−>49 <p :p r o c e s s o r name=" ox f : u r l−genera to r ">50 <p: input name=" con f i g " h r e f="#conf ig−u r l "/>51 <p:output name="data" id="imagen"/>52 </ p :p r o c e s s o r>53
54 <!−− Procesador para s e r i a l i z a r l a imagen −−>55 <p :p r o c e s s o r name=" o x f : f i l e −s e r i a l i z e r ">56 <p: input name=" con f i g " h r e f="#conf ig−f i ch−s a l "/>57 <p: input name="data" h r e f="#imagen"/>58 </ p :p r o c e s s o r>59
308 Apéndice B. Ficheros desarrollados para la aplicación
60 </ p : c o n f i g>
guiaBusqueda_imagesInfo.xpl
1 <p : c on f i g xmlns:p=" ht tp : //www. orbeon . com/ oxf / p i p e l i n e " xmlns :ox f=" ht tp : //www. orbeon . com/ oxf / p r o c e s s o r s " xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform">
2
3 <p:param name="dir_emiss ion " type=" input "/>4 <p:param name=" opc iones " type=" input "/>5 <p:param name=" r e s u l t " type=" input "/>6
7 <!−− Procesador para d e f i n i r l a URL en l a que se encuentra l a imagen −−>8 <p :p r o c e s s o r name=" o x f : x s l t ">9 <p: input name=" con f i g ">
10 <config xmlns :x s l=" ht tp : //www.w3 . org /1999/XSL/Transform"x s l : v e r s i o n=" 2 .0 ">
11 <url>12 <xs l : v a l u e−o f s e l e c t=" concat ( ' h t tp : //www. juntadeanda luc ia . es
' , / enl_imagen ) "/>13 </url>14 <content−type>image/ g i f</content−type>15 <validating>true</validating>16 </config>17 </p: input>18 <p: input name="data" h r e f="#r e s u l t "/>19 <p:output name="data" id=" con f ig−u r l "/>20 </ p :p r o c e s s o r>21
22 <!−− Procesador para d e f i n i r e l nombre y d i r e c t o r i o de l f i c h e r o de s a l i d a−−>
23 <p :p r o c e s s o r name=" o x f : x s l t ">24 <p: input name="data" h r e f="#r e s u l t "/>25 <p: input name="dir_emiss ion " h r e f="#dir_emiss ion "/>26 <p: input name=" opc iones " h r e f="#opc iones "/>27 <p: input name=" con f i g ">28 <x s l : s t y l e s h e e t version=" 2 .0 ">29 <xs l : t emp l a t e match="/">30 <config>31 <x s l : v a r i a b l e name=" sa lvar_di r " s e l e c t="doc ( '
input :d i r_emis s ion ' ) / d i r e c t o r y /@path"/>32 <x s l : v a r i a b l e name=" sa lva r_f i ch1 " s e l e c t="doc ( '
i nput : opc i one s ' ) / datos /nombreFichero"/>33 <x s l : v a r i a b l e name=" sa lva r_f i ch2 " s e l e c t=" subst r ing−a f t e r
(/ enl_imagen , ' ga l e r i a Imagenes / ' ) "/>34 <directory>35 <xs l : v a l u e−o f s e l e c t=" concat ($ sa lvar_dir , ' / images ' ) "/>36 </directory>37 < f i l e>38 <xs l : v a l u e−o f s e l e c t=" concat ($ sa lvar_f i ch1 , $
sa l va r_f i ch2 ) "/>39 </ f i l e>40 <content−type>image/ g i f</content−type>41 </config>42 </ xs l : t emp l a t e>43 </ x s l : s t y l e s h e e t>44 </p: input>45 <p:output name="data" id=" con f ig−f i ch−s a l "/>46 </ p :p r o c e s s o r>47
48 <!−− Procesador para recuperar l a imagen −−>
B.5. Relación de �cheros adicionales 309
49 <p :p r o c e s s o r name=" ox f : u r l−genera to r ">50 <p: input name=" con f i g " h r e f="#conf ig−u r l "/>51 <p:output name="data" id="imagen"/>52 </ p :p r o c e s s o r>53
54 <!−− Procesador para s e r i a l i z a r l a imagen −−>55 <p :p r o c e s s o r name=" o x f : f i l e −s e r i a l i z e r ">56 <p: input name=" con f i g " h r e f="#conf ig−f i ch−s a l "/>57 <p: input name="data" h r e f="#imagen"/>58 </ p :p r o c e s s o r>59
60 </ p : c o n f i g>
B.5. Relación de �cheros adicionales
Además de todos los anteriormente enumerados, en el directorio de emisión hayuna serie de �cheros adicionales necesarios para la ejecución de la aplicación. Salvopor el �chero background.mpg, el resto corresponden a imágenes que se muestranpor pantalla.
A continuación se listarán todos estos �cheros:
Fondo de la aplicación: Fichero background.mpg.
Imágenes del menú de ayuda: Todos estos �cheros están contenidos dentrodel subdirectorio help:
• help.png
• help_ok.png
• help_flechas.png
• help_amarillo.png
• help_azul.png
• help_rojo.png
• help_verde.png
Botones de los menús: Todas estas imágenes se encuentran dentro delsubdirectorio images:
• bot_grande_on.png
• bot_grande_off.png
• bot_buscar_on.png
• bot_buscar_off.png
• bot_volver_on.png
• bot_volver_off.png
• bot_nuevaBusqueda_on.png
• bot_nuevaBusqueda_off.png
310 Apéndice B. Ficheros desarrollados para la aplicación
Imágenes del índice lateral: Todas estas imágenes también se encuentranen el subdirectorio images:
• ind_guia_on.png
• ind_guia_off.png
• ind_anuncios_on.png
• ind_anuncios_off.png
• ind_empresas_on.png
• ind_empresas_off.png
• ind_formacion_on.png
• ind_formacion_off.png
• ind_directorio_on.png
• ind_directorio_off.png
• ind_web_on.png
• ind_web_off.png
Imágenes de paginación: Al igual que los anteriores, estos dos �cheros sehallan en el subdirectorio images:
• bot_matrix_on.png
• bot_matrix_off.png
Cuadro del índice principal: Esta imagen, de nombre mp_ayuda.png, tam-bién se encuentra en el subdirectorio images.
Imágenes del mapa: Por último, las imágenes correspondientes a la creacióndel mapa de Andalucía también se encuentran en el subdirectorio images:
• mapa_almeria_on.png
• mapa_almeria_off.png
• mapa_cadiz_on.png
• mapa_cadiz_off.png
• mapa_cordoba_on.png
• mapa_cordoba_off.png
• mapa_granada_on.png
• mapa_granada_off.png
• mapa_huelva_on.png
• mapa_huelva_off.png
• mapa_jaen_on.png
• mapa_jaen_off.png
B.5. Relación de �cheros adicionales 311
• mapa_malaga_on.png
• mapa_malaga_off.png
• mapa_sevilla_on.png
• mapa_sevilla_off.png
• mapa_todas_on.png
• mapa_todas_off.png