Logo Studenta

DidaktosOnLine_uma_Ferramenta_para_a_Construcao_So

¡Este material tiene más páginas!

Vista previa del material en texto

Una publicación de la Sociedad de la Educación del IEEE 
Uma publicação da Sociedade de Educação do IEEE 
A publication of the IEEE Education Society 
 
 
AGO. 2009 VOL. 4 #ÚMERO/#UMBER 3 (ISS# 1932-8540) 
(Continúa en la Contraportada...) 
Revista Iberoamericana de 
Tecnologías del/da 
Aprendizaje/Aprendizagem 
 
(Latin-American Learning Technologies Journal) 
 
Editorial (en español) …...….………………………………............. Martín Llamas y Manuel Castro 
Editorial (en português)…….…………………................................. Martín Llamas y Manuel Castro 
i 
ii 
 
 
ARTÍCULOS SELECCIO#ADOS /ARTIGOS SELECIO#ADOS SIIE2008 
Editores Invitados: J. Ángel Velázquez Iturbide y Francisco José García Peñalvo 
 
 
Presentación…………………………………..……………..……………............................................ 
………………...……………………...J. Ángel Velázquez Iturbide y Francisco José García Peñalvo 
 
171 
 
Procesamiento de Documentos XML Dirigido por Lenguajes en Entornos de E-Learning................... 
…............... Antonio Sarasa-Cabezuelo, José-Luis Sierra-Rodríguez, y Alfredo Fernández-Valmayor 
 
175 
 
DidaktosOnLine: uma ferramenta para a construção social do conhecimento ……………………….. 
………………..……………............................................ Francislê .eri de Souza e António Moreira 
 
184 
 
Diseño de videojuegos colaborativos y educativos centrado en la Jugabilidad...................................... 
.........................................................................….....atalia Padilla Zea, José Luís González Sánchez, 
Francisco L. Gutiérrez, Marcelino J. Cabrera, Patricia Paderewski 
 
 
191 
 
Generador Sc@ut: Sistema de Creación de Comunicadores Personalizados para la Integración…….. 
.………………………...............................................Álvaro Fernández, José Luís González Sánchez, 
Luz Mª Roldán, Mª José Rodríguez-Fórtiz, Mª Visitación Hurtado-Torres, .uria Medina-Medina 
 
 
199 
 
Formação de Licenciados em Computação no Brasil - Desenvolvimento e Utilização do ROBOKIT.. 
…………...…………… Marcia Elena Jochims Kniphoff da Cruz, Werner Haetinger, Fabiano Horn 
 
206 
 
Asistentes Interactivos para el Aprendizaje de Algoritmos Voraces …………..................................... 
........................ J. Ángel Velázquez Iturbide, Carlos A. Lázaro Carrascosa, e Isidoro Hernán Losada 
 
213 
 
 
 
 
 
IEEE-RITA (http://webs.uvigo.es/cesei/RITA) 
DOI (Digital Object Identifier) Pendiente 
 
 
 
CO�SEJO/CO�SELHO EDITORIAL 
 
Presidente (Editor Jefe): 
Martín Llamas Nistal, 
Universidad de Vigo, España 
Vicepresidente (Coeditor): 
Manuel Castro Gil, UNED, España 
 
 
Miembros: 
Melany M. Ciampi, COPEC, Brasil 
Javier Quezada Andrade, 
ITESM, México 
Carlos Vaz do Carvalho, 
INESP, Portugal 
 
Edmundo Tovar, UPM, España 
 
Secretaría: 
Pedro Pimenta, Universidade do 
Minho, Portugal 
Francisco Mur, UNED, España
 
 
 
COMITÉ CIE�TÍFICO 
 
Alfredo Fernández Valmayor, 
Universidad Complutense de 
Madrid, España 
Antonio J. López Martín, 
Universidad Estatal de Nuevo 
Méjico, USA 
Antonio J. Méndez, 
Universidad de Coimbra, 
Portugal 
António Vieira de Castro, 
ISEP, Oporto, Portugal 
Arturo Molina, ITESM, 
México 
Baltasar Fernández, 
Universidad Complutense de 
Madrid, España 
Carlos Delgado, Universidad 
Carlos III de Madrid, España 
Carlos M. Tobar Toledo, 
PUC-Campinas, Brasil 
Claudio da Rocha Brito, 
COPEC, Brasil 
Daniel Burgos, Universidad 
Abierta de Holanda, Holanda 
Fernando Pescador, UPM, 
España 
Francisco Arcega, 
Universidad de Zaragoza, 
España 
Francisco Azcondo, 
Universidad de Cantabria, 
España 
Francisco Jurado, 
Universidad de Jaen, España 
Gustavo Rossi, Universidad 
Nacional de la Plata, 
Argentina 
Héctor Morelos, ITESM, 
México 
Hugo E. Hernández Figueroa, 
Universidad de Campinas, 
Brasil 
Ignacio Aedo, Universidad 
Carlos III de Madrid, España 
Inmaculada Plaza, 
Universidad de Zaragoza, 
España 
Jaime Muñoz Arteaga, 
Universidad Autónoma de 
Aguascalientes, México 
Jaime Sánchez, Universidad 
de Chile, Chile 
Javier Pulido, ITESM, 
México 
J. Ángel Velázquez Iturbide, 
Universidad Rey Juan Carlos, 
Madrid, España 
José Bravo, Universidad de 
Castilla La Mancha, España 
José Carpio, UNED, España 
José Palazzo M. De Oliveira, 
UFGRS, Brasil 
José Valdeni de Lima, 
UFGRS, Brasil 
Juan Quemada, UPM, España 
Juan Carlos Burguillo Rial, 
Universidad de Vigo, España 
J. Fernando Naveda 
Villanueva, 
Universidad de Minnesota, 
USA 
Juan M. Santos Gago, 
Universidad de Vigo, España 
Luca Botturi, Universidad de 
Lugano, Suiza 
Luis Anido, Universidad de 
Vigo, España 
Luis Jaime Neri Vitela, 
ITESM, México 
Manuel Caeiro Rodríguez, 
Universidad de Vigo, España 
Manuel Fernández Iglesias, 
Universidad de Vigo, España 
Manuel Lama Penín, 
Universidad de Santiago de 
Compostela, España 
Manuel Ortega, Universidad 
de Castilla La Mancha, 
España 
M. Felisa Verdejo, UNED, 
España 
Maria José Patrício 
Marcelino, Universidad de 
Coimbra, Portugal 
Mateo Aboy, Instituto de 
Tecnología de Oregón, USA 
Miguel Angel Sicilia Urbán, 
Universidad de Alcalá, 
España 
Miguel Rodríguez Artacho, 
UNED, España 
Óscar Martínez Bonastre, 
Universidad Miguel 
Hernández de Elche, España 
Paloma Díaz, Universidad 
Carlos III de Madrid, España 
Paulo Días, Universidade do 
Minho, Portugal 
Rocael Hernández, 
Universidad Galileo, 
Guatema 
Rosa M. Vicari, UFGRS, 
Brasil 
Regina Motz, Universidad de 
La República, Uruguay 
Samuel Cruz-Lara, Université 
Nancy 2, Francia 
Víctor H. Casanova, 
Universidad de Brasilia, 
Brasil 
Vitor Duarte Teodoro, 
Universidade Nova de Lisboa, 
Portugal 
Vladimir Zakharov, 
Universidade Estatal Técnica 
MADI, Moscú, Rusia 
Xabiel García pañeda, 
Universidad de Oviedo, 
España 
Yannis Dimitriadis, 
Universidad de Valladolid, 
España 
 Editorial 
 
Martín Llamas, Senior member, IEEE, y Manuel Castro, Fellow, IEEE 
 
Como ya comentamos en el anterior 
número de Febrero de 2009, hemos 
cambiado la frecuencia de aparición de 
nuestra revista IEEE-RITA de la inicial 
semestral a la definitiva trimestral, 
reservando en principio los números de 
Febrero y Agosto para números especiales, 
y Mayo y Noviembre para números 
normales. ¡Y cómo no!: aunque esta sea la 
regla general, puede haber excepciones, y 
así en el pasado número de Mayo de 2009, 
tuvimos la primera al tener la selección de 
los mejores artículos del ICALT2008 en 
lengua española y portuguesa. 
En el presente número vamos a 
presentar una selección de los mejores 
artículos de los congresos SIIE2008 y 
CITA2009. El alcance de cada congreso así 
como los artículos seleccionados están 
descritos en las respectivas presentaciones 
hechas por los editores invitados: José 
Ángel Velázquez Iturbide y Francisco José 
García Peñalvo para la selección del 
SIIE2008, y Xabiel García Pañeda y Álvaro 
Rendón Gallón para la selección de 
CITA2009. 
Así mismo queremos comunicar que 
hemos empezado los trámites para la 
inclusión de IEEE-RITA en el IEEE Xplorer, 
la obtención del DOI (Digital Object 
Identifier) y que, una vez conseguidos, 
empezaremos los trámites para la inclusión 
de IEEE-RITA en el JCR (Journal Citation 
Report). 
Creemos que con la inclusión en este 
prestigioso Índice, culminaríamos la tarea 
de conseguir que IEEE-RITA sea la 
herramienta de difusión de la investigación y 
experiencias dentro del ámbito de la 
Sociedad de la Educación en Iberoamérica 
que nos planteamos al principio. A partir de 
ahí sólo resta seguir animando a la 
comunidad científica a hacer uso de ella, 
para que realmente sea el vehículo de 
difusión científico que todos queremos que 
sea. 
 
Martín Llamas Nistal es Ingeniero de 
Telecomunicación (1986) y Doctor Ingeniero de 
Telecomunicación (1994), ambos títulos por la 
Universidad Politécnica de Madrid. Desde 1987 es 
profesor en la ETSI de Telecomunicación de Vigo (de 
la que fue subdirector en el período 1994-1997); 
actualmente es profesor titular en el Departamentode Ingeniería Telemática de esa misma Universidad. 
Ha dirigido varios proyectos de investigación en el 
área de Telemática y es autor o co-autor de más de 
200 publicaciones en revistas, capítulos de libros y 
congresos nacionales e internacionales. Desde 
Diciembre de 1998 a Septiembre de 2003 fue 
Director del Área de Tecnologías de la Información y 
las Comunicaciones de la Universidad de Vigo. 
Miembro de ATI, de ACM, Senior Member del IEEE y 
miembro del Comité de Administración de la 
Sociedad de Educación del IEEE. Desde Abril de 
2008 es Chairman del Capítulo Español de la 
Sociedad de Educación del IEEE. 
 
Manuel Castro Gil es Doctor Ingeniero Industrial y 
Catedrático de Universidad. Ha sido Vicerrector de 
Nuevas Tecnologías de la UNED, así como 
Subdirector de Ordenación Académica y de 
Investigación en la Escuela de Ingenieros 
Industriales de la UNED, y Director del Centro de 
Servicios Informáticos de la UNED, siendo 
actualmente Director de Departamento. Ha 
participado en numerosos proyectos de investigación 
como investigador, coordinador y director y ha 
publicado artículos técnicos en revistas y congresos, 
tanto nacionales e internacionales. Ha publicado 
igualmente diversos libros y material multimedia 
dentro de sus líneas de investigación y docencia, 
tanto en temas de innovación educativa, docencia e 
investigación. Es Fellow del IEEE así como miembro 
del Comité de Administración de la Sociedad de 
Educación del IEEE y Fundador y Pasado-Presidente 
del Capítulo Español de la Sociedad de Educación 
del IEEE. 
 
 
 
IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 i
ISSN 1932-8540 © IEEE
 Editorial 
 
Martín Llamas, Senior member, IEEE, e Manuel Castro, Fellow, IEEE 
(Traduzido por Carlos Vaz de Carvalho) 
 
Como já comentamos no número 
anterior de Fevereiro de 2009, alteramos a 
frequência da nossa revista IEEE-RITA 
passando de um modelo semestral ao 
definitivo trimestral, reservando em princípio 
os números de Fevereiro e Agosto para 
números especiais e Maio e Novembro para 
números normais. No entanto, embora esta 
seja a regra geral, pode haver excepções, e 
assim no número de Maio de 2009, tivemos 
a primeira ao ter a selecção dos melhores 
artigos do ICALT2008 em língua espanhola 
e portuguesa. 
Neste número vamos apresentar uma 
selecção dos melhores artigos dos 
congressos SIIE2008 e CITA2009. O 
alcance de cada congresso assim como os 
artigos seleccionados estão descritos nas 
respectivas apresentações feitas pelos 
editores convidados: José Ángel Velázquez 
Iturbide e Francisco José García Peñalvo 
para a selecção do SIIE2008 e Xabiel 
García Pañeda e Álvaro Rendón Gallón 
para a selecção de CITA2009. 
Queremos ainda comunicar que 
iniciamos os trámites para a inclusão de 
IEEE-RITA no IEEE Xplorer, a obtenção do 
DOI (Digital Object Identifier). Uma vez 
conseguidos, iniciaremos os trámites para a 
inclusão de IEEE-RITA no JCR (Journal 
Citation Report). 
Cremos que com a inclusão neste 
prestigioso Índice, culminaríamos a tarefa 
de conseguir que IEEE-RITA seja a 
ferramenta de difusão da investigação e de 
experiências no âmbito da Sociedade da 
Educação em Iberoamerica a que nos 
propusemos no início. A partir daí só resta 
seguir animando a comunidade científica a 
fazer uso dela, para que realmente seja o 
veículo de difusão científico que todos 
queremos que seja. 
 
Martín Llamas Nistal é Engenheiro de 
Telecomunicações (1986) e Doutor Engenheiro de 
Telecomunicações (1994), pela Universidad 
Politécnica de Madrid. Desde 1987 é professor na 
ETSI de Telecomunicación de Vigo (da que foi 
subdirector no período 1994-1997); actualmente é 
professor titular no Departamento de Engenharia 
Telemática dessa mesma Universidade. Dirigiu 
vários projectos de investigação na área da 
Telemática e é autor ou co-autor de mais de 200 
publicações em revistas, capítulos de livros e 
congressos nacionais e internacionais. Desde 
Dezembro de 1998 a Setembro de 2003 foi Director 
da Área de Tecnologias da Informação e 
Comunicação da Universidad de Vigo. Membro de 
ATI, de ACM, Senior Member do IEEE e membro do 
Comité de Administração da Sociedade de Educação 
do IEEE. Desde Abril de 2008 é Chairman do 
Capítulo Espanhol da Sociedade de Educação do 
IEEE. 
 
Manuel Castro Gil é Doutor Engenheiro Industrial e 
Catedrático de Universidade. Foi Vice-reitor de 
Novas Tecnologias da UNED, assim como 
Subdirector de Ordenação Académica e de 
Investigação na Escuela de Ingenieros Industriales 
da UNED, e Director do Centro de Serviços 
Informáticos da UNED, sendo actualmente Director 
de Departamento. Participou em numerosos 
projectos de investigação como investigador, 
coordenador e director e publicou em revistas e 
congressos, tanto nacionais como internacionais. 
Publicou igualmente diversos livros e material 
multimédia dentro das suas linhas de investigação e 
docência. É Fellow do IEEE e membro do Comité de 
Administração da Sociedade de Educação do IEEE. 
 
 
 
 
IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 ii
ISSN 1932-8540 © IEEE
 
 
Title— Computing in Education and Computing Education 
 
Abstract— This invited editorial is an introduction to the 
special issue of selected papers of SIIE’08, the X International 
Symposium on Computers in Education, held in Salamanca, 
Spain, in October 2008. The articles selected deal with a number 
of issues on Computers and Education. This editorial consists of 
two parts. First, it gives an overview of the history of the SIIE 
symposium. Second, it introduces the six articles, classified into 
two groups: Computers in Education, and Education in 
Computing. 
 
Index Terms— Educational technology, computers & 
education. 
I. INTRODUCCIÓN 
STE número especial contiene una selección de seis 
comunicaciones presentadas en SIIE’08, el X Simposio 
Internacional de Informática Educativa (http://siie08.usal.es/). 
Las comunicaciones seleccionadas tienen un perfil conforme 
con IEEE-RITA, orientado a la educación en ingeniería o al 
uso de la ingeniería para la educación, en este caso con el 
papel destacado de una ingeniería concreta, la Informática. 
SIIE es un foro internacional para la presentación y debate 
de los últimos avances en el uso de las Tecnologías de la 
Información y las Comunicaciones en la educación. También 
pretende ser un punto de encuentro destacado entre 
investigadores, técnicos, representantes institucionales o 
empresariales y profesores que desean compartir sus puntos de 
vista, su conocimiento y su experiencia. 
El Simposio goza de una larga tradición y reconocido 
prestigio en Iberoamérica, y es actualmente una obligada 
referencia en el área de la Informática Educativa. La primera 
edición del SIIE se celebró en 1999 en Aveiro, Portugal. 
Desde entonces, se celebra alternativamente en España y 
Portugal. Las ediciones celebradas en España fueron 
 
J. Ángel Velázquez Iturbide pertenece al Departamento de Lenguajes y 
Sistemas Informáticos I, Universidad Rey Juan Carlos, C/ Tulipán s/n, 
Móstoles 28933, Madrid, España (autor de contacto, Tel.: +34 91 664 74 54; 
Fax: +34 91 488 85 30; e-mail: angel.velazquez@urjc.es). 
Francisco José García Peñalvo pertenece al Departamento de Informática y 
Automática, Universidad de Salamanca, Facultad de Ciencias, Plaza de los 
Caídos s/n, 37008 Salamanca, España (e-mail: fgarcia@usal.es). 
DOI (Digital Object Identifier) Pendiente. 
organizadas por la Asociación para el Desarrollo de la 
Informática Educativa, ADIE, http://www.adie.es/) y una 
universidad local. Desde esta última edición, SIIE incorpora 
como organizador al Capítulo Español de la Sociedad de la 
Educación del IEEE (http://www.ieec.uned.es/ES/). 
A. X Simposio Internacional de Informática Educativa, 
SIIE’08 
SIIE’08 (http://siie08.usal.es/) se celebró en Salamanca, 
España, los días 1-3 de Octubre de 2008. El organizador local 
fue la Universidad de Salamanca. En esta edición se recibieron 
165 propuestas, que se sometieron a un proceso de revisión 
pordos miembros del Comité de Programa (a veces, tres o 
cuatro) o por revisores adicionales propuestos por aquéllos. Se 
aceptó un total de 69 envíos como comunicaciones y 20 como 
pósters [1]. Por tanto, ha quedado garantizado un alto nivel de 
calidad en las propuestas aceptadas, similar al de otros 
congresos prestigiosos. La tasa de aceptación fue del 42% para 
las comunicaciones, y del 54% si también contamos los 
pósters. Las contribuciones aceptadas cubrieron una gran 
variedad de temas, repartidas en 21 sesiones de 
comunicaciones y 2 sesiones de pósters. Los autores de las 
contribuciones aceptadas han procedido de 12 países: España, 
Portugal, Brasil, Colombia, Chile, Méjico, Alemania, 
Argentina, Costa Rica, Cuba, Italia, Uruguay y Venezuela. 
Estamos especialmente satisfechos de destacar la 
consolidación de la investigación en Informática Educativa en 
varios países iberoamericanos, con más de una contribución en 
el programa del Simposio. 
Como en las ediciones anteriores del Simposio, se 
organizaron sesiones plenarias con conferenciantes invitados 
de renombre internacional. Queremos agradecer a los 
profesores Claudio Dondi (de Scienter y Presidente de 
EFQUEL) y a Gorka Palacio (de la Universidad del País 
Vasco, España) por haber aceptado nuestra invitación para 
compartir su conocimiento y experiencia en las áreas en las 
que son conocidos expertos. 
La tarea de difusión de las novedades presentadas no acabó 
con el cierre del Simposio. Se han realizado varias selecciones 
de las mejores comunicaciones para ser publicadas en números 
monográficos de revistas. Aquí presentamos una selección de 
seis comunicaciones que comparten un interés en la educación 
en ingeniería o en el uso de la ingeniería para la educación. La 
Informática Educativa y Educación en 
Informática 
J. Ángel Velázquez Iturbide, Member, IEEE, y Francisco José García Peñalvo 
Editores Invitados 
E
IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 171
ISSN 1932-8540 © IEEE
 
selección se hizo a partir de las puntuaciones obtenidas en el 
proceso de revisión y de su adecuación a la temática de la 
revista IEEE-RITA. 
II. LOS ARTÍCULOS 
Presentamos en esta sección los seis artículos seleccionados, 
agrupados en dos categorías complementarias de la 
Informática Educativa y educación de la (Ingeniería) 
Informática. La catalogación de un artículo en una de estas 
categorías depende del énfasis dado en el propio artículo. Los 
de la categoría primera inciden en la tecnología, que puede 
aplicarse a cualquier disciplina, mientras que los segundos 
usan tecnología informática, pero para la formación específica 
en Ingeniería Informática. 
A. Informática Educativa 
El término Informática Educativa es muy amplio, ya que 
cubre cualquier técnica hardware o software aplicada a la 
educación. No es, por tanto, de extrañar que el espectro de 
tecnologías presentadas sea muy dispar. 
Sarasa Cabezuelo, Sierra Rodríguez y Fernández-Valmayor 
son los autores de “Procesamiento de documentos XML 
dirigido por lenguajes en entornos de e-learning”. Su artículo 
describe un entorno de procesamiento de XML, llamado 
XLOP y basado en gramáticas de atributos. Su objetivo es 
sistematizar el procesamiento de documentos XML en 
entornos de e-learning. Los autores describen el lenguaje de 
especificación y el flujo de trabajo de XLOP. Dada una 
especificación de un lenguaje, XLOP genera un procesador de 
XML en Java con dos capas diferenciadas: sintáctica y de 
lógica específica de la aplicación. En el artículo también se 
muestra su aplicación a dos casos concretos. 
El artículo “DidaktosOnLine: uma ferramenta para a 
construção social do conhecimento” tiene como autores a Néri 
de Souza y Moreira. El trabajo se enmarca en 
DidaktosOnLine, que es un sistema hipermedia con funciones 
propios de la Web 2.0 y diseñado según la llamada “teoría de 
flexibilidad cognitiva” para el aprendizaje de materias 
complejas. En el artículo se presenta una evaluación de su uso 
con estudiantes reales. Se describen las características de la 
evaluación y se presentan los resultados, centrados 
principalmente en las dificultades encontradas por los 
estudiantes. 
El artículo de Padilla Zea y otros autores “Diseño de 
videojuegos colaborativos y educativos centrados en la 
usabilidad” presenta pautas de diseño de videojuegos 
educativos y colaborativos. En el artículo se presenta el 
concepto de jugabilidad, los atributos que la caracterizan y las 
facetas o puntos de vista desde los que puede estudiarse. 
También incluye una guía que ayuda al diseñador a alcanzar 
varios componentes del aprendizaje colaborativo mediante 
videojuegos. Las aportaciones anteriores se ilustran mediante 
extractos del videojuego infantil “Leoncio y sus amigos”, que 
tiene como objetivo el aprendizaje de las vocales. 
Fernández y otros autores presentan el artículo “Generador 
Sc@ut: sistema de generación de comunicadores 
personalizados para la integración”. El trabajo se centra en la 
Plataforma Sc@out, un sistema cuyo objetivo es ayudar a 
niños con problemas de comunicación en el centro escolar. La 
plataforma consta de un generador y de comunicadores. Un 
generador es un sistema de creación de comunicadores. Un 
comunicador es un sistema de ayuda a la comunicación, que 
puede implementarse en varios dispositivos. El artículo 
describe los distintos elementos del generador y el modelo 
hipermedia resultante, definido como una jerarquía de varios 
niveles de naturaleza distinta. Por último, los autores resumen 
la experiencia de uso de Sc@ut. 
B. Educación en la Informática 
La Informática Educativa puede aplicarse a cualquier 
disciplina y por tanto también a la propia Ingeniería 
Informática. Los dos artículos incluidos se centran en la 
enseñanza de robótica y de algoritmos. 
Los autores de “Formação de licenciados em computação no 
Brasil – desenvolvimento e utilização do ROBOKIT” son 
Jochims Kniphoff da Cruz, Haetinger y Horn. En el marco de 
la enseñanza universitaria de Ingeniería Informática, describen 
el proyecto ROBOKIT, concebido para que sus estudiantes 
puedan realizar prácticas en colegios de familiarización con la 
Informática. El artículo presenta el proceso de desarrollo de 
ROBOKIT, lo describe desde un punto de vista técnico y 
expone varias experiencias de uso. 
El artículo de Velázquez Iturbide, Lázaro Carrascosa y 
Hernán Losada “Asistentes interactivos para el aprendizaje de 
algoritmos voraces” presenta varios ayudantes interactivos 
para que los estudiantes de Ingeniería Informática 
experimenten durante el aprendizaje de la técnica de 
algoritmos voraces. El artículo comienza identificando los 
objetivos educativos de los ayudantes educativos para después 
describirlos. Se dedica especial atención a los aspectos de 
análisis, evaluación y visualización de resultados de los 
algoritmos, así como a su uso para experimentación 
interactiva. También se presentan los resultados de sesiones de 
evaluación en los que se ha medido su usabilidad y eficacia 
educativa. En concreto, los resultados de las evaluaciones de 
usabilidad han sido muy útiles para mejorar los ayudantes y 
conseguir herramientas robustas y usables de software. 
AGRADECIMIENTOS 
Queremos agradecer al editor de la revista, Martín Llamas 
Nistal, la oportunidad de difundir una parte destacada de las 
contribuciones de SIIE’08 entre la comunidad ingenieril 
iberoamericana. Este trabajo se ha financiado en parte con los 
proyectos TIN2008-02670-E/TSI y TIN2008-04103/TSI del 
Ministerio de Ciencia e Innovación de España. 
REFERENCIAS 
[1] J. Á. Velázquez-Iturbide, F. J. García-Peñalvo, y A. B. Gil-González 
(eds.), X Simposio Internacional de Informática Educativa. Salamanca, 
España: Ediciones Universidad de Salamanca, 2008. 
 
 
 
172 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009
ISSN 1932-8540 © IEEE
 
J. Ángel Velázquez Iturbide es Licenciado en 
Informática (1985) y Doctor en Informática (1990) por 
la Universidad Politécnica de Madrid, España. 
Ha sido profesor desde1985 en la Facultad de 
Informática de la Universidad Politécnica de Madrid. 
En 1997 se incorporó a la Universidad Rey Juan 
Carlos, donde actualmente es Catedrático de 
Universidad y director del Laboratorio de Tecnologías 
de la Información en la Educación (LITE). Sus áreas 
de investigación son innovación docente y software 
educativo para la enseñanza de la programación, visualización del software, 
visualización de la información, e interacción persona-ordenador. 
 El Dr. Velázquez es miembro de IEEE Computer Society, ACM y ACM 
SIGCSE. También es secretario de la Asociación para el Desarrollo de la 
Informática Educativa (ADIE) y vocal de la Junta Directiva de la Asociación 
Interacción Persona-Ordenador (AIPO). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Francisco José García Peñalvo es Licenciado en 
Informática (1994) por la Universidad de Valladolid y 
Doctor en Informática (2000) por la Universidad de 
Salamanca, España, universidad en la que actualmente 
es Profesor Titular y Vicerrector de Innovación 
Tecnológica. Es director del GRupo de investigación en 
InterAcción y eLearning (GRIAL), donde confluyen 
líneas de investigación interdisciplinares en las áreas 
del eLearning, la Interacción Persona-Ordenador y la 
Ingeniería del Software. Es miembro de la Asociación para el Desarrollo de la 
Informática Educativa (ADIE) y de la Asociación Interacción Persona-
Ordenador (AIPO). 
 
VELÁZQUEZ ITÚRBIDE Y GARCÍA PEÑALVO: INFORMÁTICA EDUCATIVA Y EDUCACIÓN EN ... 173
ISSN 1932-8540 © IEEE
 
 
 
Title— Language-Oriented Processing of XML Documents in 
e-Learning Environments 
 
Abstract— This paper proposes the use of attribute grammars 
in order to systematize the processing of XML documents in 
e-Learning environments. For this purpose, it presents XLOP 
(XML Language-Oriented Processing), an XML processing 
environment based on this technique. It also illustrates how 
XLOP is used in two different e-Learning contexts: language-
driven production of educational applications, and processing of 
metadata documents for reusable learning objects. 
 
Index Terms— XML processing, Socratic Tutorial, Learning 
Objects, Metadata, Attribute Grammar 
I. INTRODUCTION 
ML es el formato de representación e intercambio básico 
utilizado en la práctica totalidad de los escenarios de 
e-Learning. Como ejemplo representativo de la importancia 
que cobra XML en el dominio de e-Learning puede 
examinarse cualquiera de los actuales esfuerzos 
estandarizadores, donde, aparte de proponerse modelos de 
información para representar aspectos relevantes de los 
sistemas e-Learning (e.g., evaluaciones, diseños educativos, o 
perfiles de estudiante), también se proponen vinculaciones de 
dichos modelos con vocabularios XML específicos [5]. Por lo 
tanto, la implantación práctica de cualquier solución 
e-Learning implicará, desde el punto de vista tecnológico, una 
fuerte componente de procesamiento de documentación XML. 
De esta forma, el disponer de mecanismos que faciliten el 
desarrollo de dicha componente de procesamiento se convierte 
en un factor clave de dicha implantación. 
XLOP (XML Language-Oriented Processing) es un entorno 
que utiliza gramáticas de atributos para describir cómo 
procesar documentos XML marcados con un determinado 
vocabulario. Las gramáticas de atributos son un formalismo 
declarativo ampliamente utilizado en la descripción de la 
sintaxis, las restricciones contextuales (semántica estática), y 
 
A.Sarasa es miembro del Departamento de Sistemas Informáticos 
y Computación de la Universidad Complutense de Madrid. Email: 
asarasa@fdi.ucm.es. J.L.Sierra y A.Fernández-Valmayor son 
miembros del Departamento de Ingeniería del Software e Inteligencia 
Artificial de la Universidad Complutense de Madrid. Email: 
{jlsierra,Alfredo}@fdi.ucm.es 
DOI (Digital Object Identifier) Pendiente 
 
 
la traducción de los lenguajes informáticos [8][9]. De esta 
forma, XLOP sigue un paradigma dirigido por lenguajes en el 
desarrollo de los programas de procesamiento de documentos 
XML [3]. De acuerdo con este paradigma, dichos programas 
se entienden como procesadores de lenguaje, y el proceso de 
desarrollo en sí se entiende como el proceso de construcción y 
mantenimiento de dichos procesadores. De hecho, utilizando 
XLOP es posible generar automáticamente tales procesadores 
a partir de especificaciones de alto nivel expresadas como 
gramáticas de atributos. 
XLOP se ha diseñado para ser integrado con Java. 
Efectivamente, las funciones semánticas que se utilizan en las 
gramáticas de atributos XLOP se implementan como métodos 
en Java. De esta forma, XLOP ofrece una flexibilidad 
comparable a la de los marcos de procesamiento genéricos 
para XML (e.g., SAX, DOM, StAX, etc.) [3], y, al mismo 
tiempo, un nivel de usabilidad comparable al de enfoques 
específicos (e.g., los ofrecidos por lenguajes de transformación 
como XSLT) [3]. De hecho, XLOP permite estructurar las 
aplicaciones de proceso de XML en dos capas perfectamente 
diferenciadas: 
- Una capa de lógica específica de la aplicación, que 
incluye la maquinaria necesaria para soportar la 
funcionalidad de dicha aplicación (e.g., un marco de 
aplicación para la representación interna de un tutor 
inteligente, o un conjunto de clases para el procesamiento 
de metadatos). 
- Una capa lingüística de procesamiento XML dirigido por 
la sintaxis. Esta capa se especifica como una gramática de 
atributos, especificación que se traduce automáticamente a 
una implementación ejecutable mediante un generador 
XLOP. 
La conexión entre ambas capas se realiza mediante una 
clase semántica, que implementa en Java las funciones 
semánticas utilizadas en la gramática de atributos XLOP, y 
que media entre las dos capas anteriores. De esta forma, el 
modelo de desarrollo dirigido por lenguajes de XLOP 
propugna la separación explícita de estas dos capas, así como 
facilita el desarrollo y el mantenimiento de la capa lingüística, 
ya que ésta se especifica a un nivel mucho más alto que el 
conseguido con una implementación directa en Java o en 
cualquier otro lenguaje de programación. De hecho, el 
formalismo de las gramáticas de atributos es también de más 
Procesamiento de Documentos XML Dirigido 
por Lenguajes en Entornos de E-Learning 
Antonio Sarasa-Cabezuelo, José-Luis Sierra-Rodríguez, y Alfredo Fernández-Valmayor 
X
IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 175
ISSN 1932-8540 © IEEE
 
alto nivel que una descripción basada en esquemas de 
traducción [1], del tipo de los soportados por otros enfoques al 
procesamiento de XML dirigido por lenguajes (e.g., ANTXR 
[19], un entorno construido sobre la herramienta ANTLR, y 
RelaxNGCC [7], una extensión del lenguaje de esquema 
documental RelaxNG utilizada para especificar esquemas de 
traducción y que permite la generación automática de 
traductores recursivos descendentes [1]). 
En este artículo se describe el entorno XLOP, haciendo 
énfasis en su lenguaje de especificación, así como en su 
aplicación al procesamiento de XML en entornos de 
e-Learning. Para ello, en la sección II se comienza 
describiendo el entorno en sí. En la sección III se ejemplifica 
el uso del entorno en el desarrollo de un traductor para 
<e-Tutor>, un sistema para la producción de tutoriales 
socráticos. En la sección IV se ejemplifica su uso en la 
comprobación de restricciones sobre documentos de metadatos 
en Chasqui, un sistema para la creación de repositorios de 
objetos de aprendizaje en dominios especializados. Por último, 
en la sección V se resumen las conclusiones obtenidas, así 
como se esbozan algunas líneas de trabajo futuro. Este trabajo 
es una versión extendida de [11]. 
II. EL ENTORNO XLOP 
A. Gramáticas de Atributos 
XLOP se basa en el formalismo de las gramáticas de 
atributos. Este formalismo fue propuesto por Donald E. Knuth 
a finales de los sesenta como un mecanismo para añadir 
semántica a los lenguajesincontextuales [8][9]. Una gramática 
de atributos consta de: 
- Una gramática incontextual que caracteriza la sintaxis 
estructural del lenguaje mediante un conjunto de reglas 
sintácticas o producciones. 
- Un conjunto de atributos semánticos añadidos a los 
símbolos de la citada gramática. Estos atributos pueden 
ser de dos tipos: atributos sintetizados y atributos 
heredados. Los atributos toman valores en los nodos de 
los árboles sintácticos impuestos por la gramática 
incontextual sobre las sentencias. Los valores de los 
atributos sintetizados representan la semántica de los 
fragmentos de sentencia que penden de los nodos, 
mientras que los de los atributos heredados representan 
información de contexto. Los atributos sintetizados en un 
nodo se computan a partir de los sintetizados de sus hijos 
y de los propios atributos heredados del nodo. Por su 
parte, los atributos heredados se computan a partir de los 
sintetizados de los hermanos y de los heredados del padre. 
- Un conjunto de ecuaciones semánticas para cada 
producción. Estas ecuaciones indican cómo computar los 
valores de los atributos sintetizados de la cabeza y de los 
atributos heredados de los símbolos del cuerpo. Para ello 
aplican funciones semánticas sobre los atributos utilizados 
en dicho cómputo. 
El axioma de la gramática también puede tener atributos 
heredados. Así mismo, los terminales también pueden tener 
atributos sintetizados, que se denominan atributos léxicos. Los 
valores de estos atributos se fijarán externamente (e.g., los 
atributos léxicos se fijarán durante el análisis léxico). 
Durante la preparación de una gramática de atributos no es 
necesario especificar explícitamente en qué orden tienen que 
aplicarse las ecuaciones semánticas para encontrar los valores 
de los atributos en los árboles sintácticos (es decir, para 
evaluar dichos atributos). De esta forma, las gramáticas de 
atributos son mecanismos descriptivos de más alto nivel que 
los esquemas de traducción soportados por las herramientas 
típicas de construcción de procesadores de lenguaje (e.g., 
JavaCC, ANTLR, YACC, o CUP), en los que sí es necesario 
explicitar el orden de ejecución de las acciones semánticas. 
Por el contrario, en una gramática de atributos el orden de 
evaluación se deriva de las dependencias entre los atributos 
introducidas por las ecuaciones semánticas. El método de 
evaluación en sí puede ser estático o dinámico. Los métodos 
estáticos analizan la gramática durante la generación del 
evaluador para encontrar un orden de evaluación que funciona 
para cualquier sentencia. Por su parte, los métodos dinámicos 
deciden el orden de evaluación para cada sentencia particular. 
En XLOP se adopta un método de evaluación dinámica, ya 
que los métodos dinámicos aceptan una clase más amplia de 
gramáticas de atributos que los estáticos, aún a consta de una 
ligera pérdida de eficiencia. 
B. El Lenguaje de Especificación de XLOP 
 
El lenguaje de especificación de XLOP es un metalenguaje 
para describir gramáticas de atributos para lenguajes de 
marcado definidos mediante XML. La Figura 1 muestra la 
sintaxis de este lenguaje. 
La gramática incontextual subyacente a una especificación 
XLOP representa la estructura lógica de un tipo de 
documentos XML (los detalles de más bajo nivel relativos a la 
estructura física del documento se ignoran, ya que estos serán 
tratados por entornos de análisis de XML convencionales [3]). 
 SpecXLOP::= {Regla}+ 
Regla ::= +oTerminal ‘::=’ { ElementoSintactico }* '{' { Ecuacion }* '}' 
ElementoSintactico ::= +oTerminal | #pcdata | ElementoXML 
ElementoXML ::= EtiquetaApertura { ElementoSintactico }* EtiquetaCierre | EtiquetaElmVacio 
Ecuacion ::= ReferenciaAtributo '=' ExpresionSemantica 
ExpresionSemantica ::= Funcion '(' (ExpresionSemantica { , ExpresionSemantica }*)? ')' | 
 ReferenciaAtributo 
ReferenciaAtributo ::= Atributo of ( +oTerminal | #pcdata | EtiquetaApertura) ( '(' +umeroOcurrencia ')' )? 
 
Figura 1. Sintaxis del lenguaje de especificación de XLOP. 
176 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009
ISSN 1932-8540 © IEEE
 
Como puede observarse en la Figura 1, las gramáticas XLOP 
pueden incluir los siguientes tipos de símbolos terminales: 
- El símbolo #pcdata . Este símbolo denota un fragmento 
de contenido textual en el documento procesado. 
- Etiquetas de apertura (e.g., <Tutorial> ) y de cierre 
(e.g., </Tutorial> ). Estas etiquetas dependerán del 
lenguaje particular que se está procesando, y deberán, así 
mismo, ser convenientemente anidadas. 
Así mismo, las gramáticas XLOP pueden contener los 
símbolos no terminales que se consideren necesarios para 
representar de manera apropiada el resto de la estructura 
lógica del lenguaje de marcado a procesar. 
En lo que se refiere a los atributos léxicos, el símbolo 
#pcdata soporta únicamente un atributo léxico: text . El 
valor de este atributo será el contenido textual particular 
representado por el símbolo. Las etiquetas de apertura pueden 
tener también atributos léxicos, que se denominarán atributos 
de elemento, y que se corresponderán con los atributos que se 
especifican explícitamente en los elementos del documento. 
Por último, los símbolos no terminales pueden tener atributos 
sintetizados y heredados arbitrarios. En XLOP no es preciso 
distinguir explícitamente qué atributos son los sintetizados y 
cuáles los heredados, sino que este hecho se infiere del uso de 
los mismos en las ecuaciones. Por último, obsérvese que en la 
referencia a los atributos, que se lleva a cabo utilizando una 
notación del tipo atributo of refSímbolo, es posible utilizar un 
número de orden a fin de desambiguar el símbolo concreto al 
que pertenece el atributo, cuando éste aparezca más de una vez 
en la producción. 
Finalmente, es importante notar que el lenguaje XLOP no 
proporciona mecanismos para definir las funciones semánticas 
utilizadas en las ecuaciones. Dichas funciones deberán ser 
definidas externamente, como métodos de la clase semántica. 
C. El Generador en XLOP 
XLOP incluye un generador que, tomando como entrada 
una gramática descrita en el lenguaje de especificación de 
XLOP, produce una implementación del procesador asociado 
escrita en CUP [2]. CUP es un sistema de generación de 
traductores para Java que soporta gramáticas LALR(1), la 
clase de gramáticas más expresiva para la que es posible 
generar analizadores sintácticos compactos y eficientes. En la 
implementación CUP generada, la evaluación de atributos se 
embebe en el proceso de análisis sintáctico mediante un 
mecanismo de ejecución retardada, según el cuál la 
evaluación de las ecuaciones semánticas se hace depender de 
la disponibilidad de valores para los atributos que intervienen 
en las expresiones semánticas correspondientes (véase [12] 
para más detalles del mecanismo). 
La ejecución de los procesadores generados requiere, 
además, la clase semántica que implementa las funciones 
semánticas, los componentes que conforman la lógica 
específica de la aplicación, y también una serie de clases de 
conveniencia que configuran el entorno de ejecución XLOP. 
Entre éstas últimas destaca la implementación de un 
analizador léxico genérico que transforma el recorrido de la 
estructura lógica de los documentos (en orden documental) en 
la secuencia de componentes léxicos esperada por el 
procesador generado. Este componente conecta con un marco 
estándar de análisis de documentos XML basado en SAX (un 
API para el procesamiento al vuelo de documentos XML) [3]. 
El componente en sí y la estrategia de interconexión con el 
parser SAX son análogos a los descritos en [10]. La Figura 2 
resume la cadena de generación implementada en XLOP. 
III. PRODUCCIÓN DIRIGIDA POR LENGUAJES DE APLICACIONES 
EDUCATIVAS: <E-TUTOR> 
A. Generación de tutoriales con <e-Tutor> 
En esta sección se ejemplifica el uso de XLOP en el 
desarrollo de una versión simplificada de <e-Tutor> 
[13][14][16][17], un sistema para eldesarrollo de tutores 
socráticos basado en los trabajos seminales de Alfred Bork y 
su equipo durante los ochenta [4]. Este tipo de sistemas fue 
muy popular durante las dos últimas décadas del siglo pasado, 
y, a pesar de las críticas recibidas acerca de su idoneidad 
pedagógica y de la dificultad de su producción y 
mantenimiento, aún hoy existe una comunidad muy activa 
trabajando en estos temas, así como iniciativas tan interesantes 
como las descritas en [20]. Así mismo, el funcionamiento de 
este tipo de sistemas está en la base de los mecanismos de 
adaptación de las últimas versiones de especificaciones 
e-Learning tan relevantes como QTI [6]. En cualquier caso, el 
papel jugado por <e-Tutor> no es tanto pedagógico como 
tecnológico, a fin de permitir experimentar con distintos 
métodos, técnicas y herramientas de producción y 
mantenimiento de aplicaciones e-Learning (e.g., desarrollo 
 
Generador 
XLOP 
Especificación 
XLOP 
Implementación 
en CUP 
Generador 
CUP 
Implementación 
en Java 
javac 
Implementación 
en JVM 
Clase 
semántica y 
entorno de 
ejecución 
XLOP 
java 
Procesador 
Documento 
XML a 
Procesar 
 
Figura 2. Cadena de generación en XLOP 
 
 
Brasilia 
Río de 
Janeiro 
¿Cuál es la capital 
de Brasil? 
 
Otra 
¡Eso es! Vamos 
con otra pregunta 
 ¡No! Esa es dónde 
los carnavales ;) 
 
Piensa en el nombre 
del país … 
 
¡No! La respuesta 
correcta es Brasilia 
 
Prueba con otra… 
 
¡No! Piensa en el 
nombre del país… 
 
(1) 
(2) 
(1) 
(1) (2) 
 
Figura 3. Fragmento de un tutorial socrático 
 
SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 177
ISSN 1932-8540 © IEEE
 
documental, siguiendo un enfoque precursor de XLOP [17], 
desarrollo de aplicaciones web educativas dirigido por 
lenguajes [13][14], o prototipado rápido de lenguajes de 
modelado educativo [16]). 
<e-Tutor> interpreta descripciones de tutoriales en los 
cuáles el estudiante se somete a problemas, para los cuáles 
construye soluciones a través de un diálogo socrático 
(maestro – discípulo). El sistema analiza las respuestas del 
estudiante a las preguntas planteadas, proporciona al mismo 
una realimentación apropiada, y decide el próximo paso a 
llevar a cabo en el proceso de aprendizaje. La realimentación 
dada se puede adaptar a distintos itinerarios de aprendizaje. En 
el caso más general el proceso de adaptación podría depender 
de la historia completa de la interacción del estudiante con el 
sistema, aunque en <e-Tutor> se adopta un mecanismo simple 
basado en contadores, al estilo de los trabajos de Bork. El 
sistema asocia contadores a cada posible respuesta de cada 
pregunta. Cada vez que el estudiante da una respuesta, 
incrementa el contador asociado. De esta forma, la 
realimentación y el siguiente paso a dar pueden depender del 
valor de dichos contadores. La Figura 3 muestra 
esquemáticamente un ejemplo de este tipo de tutorial. Las 
cajas con esquinas redondeadas representan puntos de 
respuesta, donde el alumno debe proporcionar una respuesta a 
la pregunta realizada. Dichos puntos de respuesta están 
conectados con potenciales respuestas, que se encierran en una 
caja compartimentada. Las cajas sombreadas representan las 
realimentaciones. El flujo de aprendizaje se representa 
mediante flechas. Las etiquetas numéricas en las flechas que 
unen compartimentos de respuestas con realimentaciones 
indican los valores que deben tomar los contadores para que 
las flechas sean aplicables. 
<e-Tutor> incluye un lenguaje de marcado basado en XML 
para describir tutoriales como documentos XML, que, 
debidamente procesados, permiten ejecutar dichos tutoriales. 
La DTD de la Figura 4 muestra una versión simplificada de 
dicho lenguaje XML (la simplificación omite detalles 
estructurales y presentacionales irrelevantes; véase [17] para 
una versión más detallada). La Figura 5 muestra una 
representación XML del fragmento de tutorial de la Figura 3. 
A continuación se describe brevemente la refactorización de 
<e-Tutor> utilizando XLOP. 
B. La Capa de Lógica Específica de la Aplicación 
La Figura 6 muestra las principales componentes (clases e 
interfaces) que configuran esta capa, así como sus 
interrelaciones. Estos componentes constituyen un marco de 
aplicación para la representación de tutoriales. Dado que en 
este artículo se está presentando una versión simplificada de 
 <!ELEMENT Tutorial 
 (Start,(Speech|Question|Answer|Feedback)+, 
 End)> 
<!ELEMENT Start EMPTY> 
<!ATTLIST Start next IDREF #REQUIRED> 
<!ELEMENT Speech ( #PCDATA)> 
<!ATTLIST Speech id ID #IMPLIED 
 next IDREF #REQUIRED> 
<!ELEMENT Question ( #PCDATA)> 
<!ATTLIST Question id ID #REQUIRED> 
<!ELEMENT Answer ( #PCDATA)> 
<!ATTLIST Answer id ID #REQUIRED 
 forQuestion IDREF #REQUIRED 
 default (yes|no) "yes"> 
<!ELEMENT Feedback EMPTY> 
<!ATTLIST Feedback counter NMTOKEN #REQUIRED 
 forAnswer IDREF #REQUIRED 
 speech IDREF #REQUIRED> 
<!ELEMENT End EMPTY> 
<!ATTLIST End id ID #REQUIRED> 
 
 
Figura 4. DTD para el lenguaje de <e-Tutor>. 
 <Tutorial> 
 <Start next="..."/> 
 ... 
 <Question id="q1"> 
 ¿Cuál es la capital de Brasil </Question> 
 <Answer id="a11" forQuestion="q1"> 
 Brasilia </Answer> 
 <Answer id="a12" forQuestion="q1"> 
 Río de Janeiro </Answer> 
 <Answer id="a13" forQuestion="q1" 
 default="yes"/> 
 <Feedback counter="1" 
 forAnswer="a11" speech="s1"/> 
 <Feedback counter="1" 
 forAnswer="a12" speech="s2"/> 
 <Feedback counter="2" 
 forAnswer="a12" speech="s4"/> 
 <Feedback counter="1" 
 forAnswer="a13" speech="s5"/> 
 <Feedback counter="2" 
 forAnswer="a13" speech="s4"/> 
 <Speech id="s1" next="..."> 
 ¡Eso es! Vamos con otra pregunta </Speech> 
 <Speech id="s2" next="s3"> 
 ¡No! Esa es dónde los carnavales ;) </Speech> 
 <Speech id="s3" next="q1"> 
 Piensa en el nombre del país... </Speech> 
 <Speech id="s4" next="s5"> 
 ¡No! La respuesta correcta es 
 Brasilia </Speech> 
 <Speech id="s5" next="..."> 
 Prueba con otra... </Speech> 
 <Speech id="s6" next="q1"> 
 ¡No! Piensa en el 
 nombre del país... </Speech> 
 ... 
 <End id="..."/> 
</Tutorial> 
 
Figura 5. Codificación XML del fragmento de tutorial de la Figura 3 
 
TElement
<<interface>>
Speech Question
feedback
Answer
for
*
speech
End
for
*
Tutorial
*
start
next
0..1
 
Figura 6. Esbozo de la capa de lógica específica de la aplicación en <e-Tutor> 
 
178 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009
ISSN 1932-8540 © IEEE
 
<e-Tutor>, este marco es una versión simplificada del más 
detallado descrito en [17]. 
C. La Capa Lingüística 
La capa lingüística queda definida por la especificación 
XLOP que se muestra en la Figura 7. Dicha capa lingüística 
traduce descripciones XML de tutoriales en instanciaciones 
del marco de aplicación de la Figura 6. 
La gramática incontextual subyacente representa el mismo 
lenguaje de marcas expresado por la DTD de la Figura 4. La 
diferencia es que esta gramática incontextual impone una 
estructura bien definida sobre los contenidos de los elementos 
(más concretamente, especifica la secuencia de elementos del 
tutorial mediante un no terminal TElements , y utiliza 
recursión a izquierdas en las producciones que definen dicho 
no terminal, ya que este tipo de recursión es tratada de forma 
muy eficiente por los analizadores LR subyacentes a la 
implementación de XLOP). Mientras que dicha estructura no 
es relevante a nivel de la validación genérica de un documento 
XML con respecto a su DTD o su esquema, la estructura en sí 
es fundamental para añadir significado al lenguaje. 
Por su parte, la traducción se concibe en dos etapas: una 
etapa de creación de los componentes del tutorial, y otra etapa 
de enlace de dichos componentes.De esta forma: 
- La etapa de creación se lleva a cabo asociando un atributo 
sintetizado unlinkedTutorial con TElements (la 
secuencia de elementos del tutorial). Este atributo se 
utiliza para construir un tutorial en el que los elementos 
aún no están conectados. Cada elemento en sí se sintetiza 
mediante un atributo element en TElement (categoría 
sintáctica que representa cada elemento individual). 
- La etapa de conexión supone propagar el tutorial no 
conectado a lo largo de la secuencia de elementos. Esto se 
consigue asociando un atributo heredado 
finalUnlinkedTutorialh con TElements . Así 
mismo, esta etapa supone también sintetizar el tutorial 
final, conectando cada elemento al resto. Esto se consigue 
asociando un atributo sintetizado tutorial con 
TElements , así como con Tutorial (éste 
representará el tutorial finalmente construido). 
D. La Clase Semántica 
Por último, es necesario proporcionar la clase Java que 
implementa las funciones semánticas utilizadas en la 
especificación XLOP. En el caso de <e-Tutor>, dichas 
funciones instanciarán clases del marco de aplicación, e 
invocarán a métodos sobre los objetos resultantes para 
conectar los mismos. La Figura 8 esboza un fragmento de 
dicha clase, en el que se detalla la implementación de la 
función semántica link . Nótese que, aunque desde un punto 
de vista estrictamente formal las funciones semánticas 
deberían estar libres de efectos laterales, en esta especificación 
particular los valores de los atributos de entrada a las 
funciones destructivas, como link , no volverán a utilizarse, 
lo que permite modificar destructivamente los valores (objetos 
Java) a los que se refieren. 
IV. PROCESAMIENTO DIRIGIDO POR LENGUAJES DE 
DOCUMENTOS DE METADATOS: CHASQUI 
A. Restricciones sobre metadatos en Chasqui 
En esta sección se ilustra el uso de XLOP para soportar un 
procesamiento no trivial de documentos de metadatos de 
objetos de aprendizaje en Chasqui. Chasqui es una plataforma 
 Tutorial ::= <Tutorial> <Start/> TElements <End/> </Tutorial> { 
 finalUnlinkedTutorialh of TElements = addStartAnd End(next of <Start>, id of <End>, 
 unlinkedTutorial of TElements) 
 tutorial of Tutorial = tutorial of TElements } 
TElements ::= TElements TElement { 
 unlinkedTutorial of TElements(0) = addElement(ele ment of TElement, unlinkedTutorial of TElements(1)) 
 finalUnlinkedTutorialh of TElements(1) = finalUnl inkedTutorialh of TElements(0) 
 tutorial of TElements(0) = link(element of TEleme nt,tutorial of TElements(1)) } 
TElements ::= TElement { 
 unlinkedTutorial of TElements = addElement(elemen t of TElement,newTutorial()) 
 tutorial of TElements(0) = link(element of TEleme nt,finalUnlinkedTutorialh of TElements) } 
TElement ::= <Speech> #pcdata </Speech> { 
 element of TElement = newSpeech(id of <Speech>,ne xt of <Speech>,text of #pcdata) } 
TElement ::= <Question> #pcdata </Question> { 
 element of TElement = newQuestion(id of <Question >,next of <Question>,text of #pcdata) } 
TElement ::= <Answer> #pcdata </Answer> { 
 element of TElement = newAnswer(id of <Answer>,f orQuestion of <Answer>,default of <Answer>, 
 text of #pcdata) } 
TElement ::= <Feedback/> { 
 element of TElement = newFeedback(counter of <Fe edback>,forAnswer of <Feedback>, 
 speech of <Fee dback>) } 
Figura 7. Especificación XLOP de la capa lingüística de <e-Tutor>. 
 
 public class TSemClass { 
 ... 
 public Tutorial link(TElement e,Tutorial t) { 
 String idnext = e.idNext(); 
 if (idnext != null) 
 e.setNext(t.get(idnext)); 
 return t; 
 } 
 ... 
} 
 
Figura 8. Fragmento de la clase semántica para <e-Tutor> que muestra la 
implementación de la función semántica link . 
 
SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 179
ISSN 1932-8540 © IEEE
 
e-Learning que ha evolucionado a partir de varios sistemas 
web utilizados en la virtualización de dos museos 
universitarios con fines educativos en la Universidad 
Complutense (Museo de Historia de la Informática García 
Santesmases y Museo de Arqueología y Etnología Antonio 
Ballesteros) [18]. Actualmente es un sistema independiente de 
dominios concretos y reutilizable en toda experiencia 
e-Learning que involucre la creación y uso educativo de 
repositorios de objetos de aprendizaje. 
Los objetos de aprendizaje en Chasqui tienen asociados 
documentos XML de metadatos que describen la asignación de 
valores a ítems de metadatos1 organizados jerárquicamente. 
Tales ítems no están predeterminados a priori, sino que se 
crean de manera colaborativa, conforme se añaden nuevos 
objetos al repositorio, en un enfoque próximo a las tendencias 
emergentes en etiquetado colaborativo en el contexto de los 
escenarios Web X.0 (véase [15] para más detalles). 
A fin de evitar detalles que nos aparten del principal 
propósito de este trabajo, en la discusión que sigue omitiremos 
la naturaleza jerárquica de los ítems de metadatos en Chasqui. 
De esta forma, la DTD que se muestra en la Figura 9 describe 
(una versión simplificada de) el lenguaje de marcado utilizado 
en Chasqui para estructurar los documentos de metadatos. De 
acuerdo con este lenguaje, cada ítem de metadatos posee un 
nombre (Name) y un valor (Value ). Los documentos en sí 
son secuencias de estos ítems. La Figura 10 muestra un 
ejemplo de documento de metadatos. 
El carácter abierto y evolutivo de los metadatos en Chasqui 
hace necesario introducir algunos mecanismos de control a fin 
 
1
En Chasqui los ítems de metadatos se denominan atributos. No obstante, en 
este trabajo evitaremos tal denominación para evitar confusiones. 
 
de garantizar la calidad y consistencia de los documentos de 
metadatos. Para tal fin, los instructores que lideran la 
construcción del repositorio de objetos de aprendizaje pueden 
imponer restricciones sobre los documentos asociados con los 
objetos que se añaden al repositorio. De esta forma, cuando los 
alumnos añadan nuevos objetos, el sistema podrá chequear 
dichas restricciones, así como avisar a dichos alumnos de las 
potenciales violaciones de las mismas. 
En Chasqui las restricciones que pueden formularse 
involucran un repertorio completo de asertos básicos, que 
pueden combinarse utilizando los operadores booleanos 
habituales (and, or y not). Por motivos de simplicidad, 
restringiremos nuestra discusión a asertos de tipo Contiene. Un 
aserto de tipo Contiene obliga a que cada ocurrencia de un 
ítem de metadatos dado contenga cierta cadena especificada en 
el aserto. 
En Chasqui las restricciones también se representan 
internamente utilizando un lenguaje de marcado basado en 
XML. La Figura 11 muestra la DTD de dicho lenguaje. La 
<! ELEMENT Items (Item+)> 
<! ELEMENT Item (Name,Value)> 
<! ELEMENT Name ( #PCDATA)> 
<! ELEMENT Value ( #PCDATA)> 
 
 
Figura 9. Lenguaje de marcado (simplificado) para los documentos de 
metadatos Chasqui. 
<Items> 
 <Item> 
 <Name>Descripción </Name> 
 <Value>Informe sobre gramáticas 
 l-atribuidas </Value> 
 </Item> 
 <Item> 
 <Name>Aspecto especificado </Name> 
 <Value>semántica </Value> 
 </Item> 
 <Item> 
 <Name>Formalismo </Name> 
 <Value>gramáticas de atributos </Value> 
 </Item> 
 <Item> 
 <Name>tipo de objeto</ Name> 
 <Value>informe </Value> 
 </Item> 
</Items> 
Figura 10. Un documento de metadatos. 
<!ENTITY % Constraint "(And|Or|Not|Contains)"> 
<!ELEMENT And (%Constraint;,%Constraint;)> 
<!ELEMENT Or (%Constraint;,%Constraint;)> 
<!ELEMENT Not (%Constraint;)> 
<!ELEMENT Contains (It,Val)> 
<!ELEMENT It ( #PCDATA)> 
<!ELEMENT Val ( #PCDATA)> 
Figura 11. Lenguaje de marcado (simplificado) para las restricciones sobre 
metadatos. 
<Or> 
 <Contains> 
 <It>Descripción </It> 
 <Val>gramática </Val> 
 </Contains> 
 <Contains> 
 <It>Formalismo </It> 
 <Val>gramática </Val></Contains> 
</Or> 
Figura 12. Un ejemplo de restricción 
<Check> 
 <Constraint> 
 ... 
 </Constraint> 
 <Items> 
 ... 
 </Items> 
</Check> 
Figura 13. Esquema de la entrada al proceso de comprobación de 
restricciones. 
AssertionStore
+addAssertion(String i, String v)
+boolean checkAssertion(String i, String v)
+boolean yields(String i, String v)
EResul
+boolean valueOf()
+SIterator newIterator()
+int supportSize()
SIterator
+next()
+String item()
+String value() produces
Figura 14. Lógica específica de la aplicación para la comprobación de 
restricciones en documentos de metadatos Chasqui. 
180 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009
ISSN 1932-8540 © IEEE
 
Figura 12, por su parte, muestra un ejemplo de restricción que 
fuerza a que el término gramática ocurra en todos los valores 
del ítem Descripción , o en todos los valores del ítem 
Formalismo . La Figura 13 muestra el tipo de entrada que 
recibe el servicio Chasqui que chequea las restricciones (un 
documento XML que agrupa bajo el elemento Check una 
restricción y un documento de metadatos Chasqui). 
B. La Capa de Lógica Específica de la Aplicación 
La Figura 14 esquematiza la lógica específica de la 
aplicación utilizada en la comprobación de restricciones sobre 
documentos de metadatos Chasqui. Dicha lógica específica 
incluye una clase para almacenar la información necesaria 
sobre los asertos básicos (AssertionStore ), una segunda 
clase para contener los resultados de evaluación de las 
restricciones (EResul ), y una tercera clase para iterar sobre 
tales resultados (SIterator ). 
C. La Capa Lingüística 
La Figura 15 muestra la gramática de atributos XLOP que 
caracteriza el proceso de comprobación de restricciones sobre 
documentos de metadatos en Chasqui. La gramática 
incontextual subyacente representa la estructura del 
documento de tipo Check descrito anteriormente. De nuevo, y 
por los motivos a los que se ha hecho ya alusión en la sección 
III, se utiliza recursión a izquierdas para representar la 
secuencia de ítems en el documento de metadatos. En lo que 
respecta al procesamiento, éste se concibe en tres etapas 
diferentes: una primera etapa de recolección en la que se 
recolectan todos los asertos básicos, una segunda etapa de 
chequeo en la que se comprueba si dichos asertos básicos se 
satisfacen o se violan, y una última etapa de evaluación, en la 
que se comprueba la satisfacción o violación de la restricción 
en su totalidad. De esta forma: 
- La etapa de recolección se lleva a cabo sintetizando un 
atributo basicAssertions que referirá al almacén de 
asertos (instancia de AssertionStore ) utilizado para 
almacenar los asertos básicos referidos en la restricción. 
Este almacén se propaga por las estructuras asociadas al 
documento de metadatos utilizando un atributo heredado 
basicAssertionsh . 
- La etapa de chequeo se lleva a cabo sintetizando un 
atributo checkedBasicAssertion que hará 
referencia al almacén de asertos una vez que cada ítem de 
metadatos haya sido comprobado con respecto a los 
asertos básicos. El almacén resultante es realimentado de 
nuevo sobre la estructura de la restricción utilizando un 
atributo heredado checkedBasicAssertionh . 
- En la etapa de evaluación se sintetiza un atributo val 
para la restricción. Este atributo contiene un valor de 
verdad asociado a la restricción y un conjunto de asertos 
básicos que justifican dicho valor denominado soporte 
(esta información se almacena en instancias de EResul ). 
Para asertos básicos, el valor de verdad se obtiene 
consultando el almacén de asertos. En condiciones 
afectadas por el operador +ot se complementa el valor de 
verdad de la condición y se mantiene el conjunto soporte 
de la condición. El valor de una condición And depende 
de los valores de sus argumentos: si ambos valores son 
 CheckDoc ::= <Check><Constraint>C</Constraint> Is</ Check> { 
 basicAssertionsh of Is = basicAssertions of C 
 checkedBasicAssertionsh of C = checkedBasicAsser tions of Is 
 val of CheckDoc = val of C 
 basicAssertions of CheckDoc = checkedBasicAssert ions of Is} 
C ::= <And> C C </And> { 
 basicAssertions of C(0) = comb(basicAssertions of C(1),basicAssertions of C(2)) 
 checkedBasicAssertionsh of C(1) = checkedBasicA ssertionsh of C(0) 
 checkedBasicAssertionsh of C(2) = checkedBasicA ssertionsh of C(0) 
 val of C(0)= valOfAnd(val of C(1),val of C(2),c heckedBasicAssertionsh of C(0))} 
C ::= <Or> C C </Or> { 
 basicAssertions of C(0) = comb(basicAssertions of C(1),basicAssertions of C(2)) 
 checkedBasicAssertionsh of C(1) = checkedBasicA ssertionsh of C(0) 
 checkedBasicAssertionsh of C(2) = checkedBasicA ssertionsh of C(0) 
 val of C(0)= valOfOr(val of C(1),val of C(2),ch eckedBasicAssertionsh of C(0))} 
C ::= <Not> C </Not> { 
 basicAssertions of C(0) = basicAssertions of C (1) 
 checkedBasicAssertionsh of C(1) = checkedBasic Assertionsh of C(0) 
 val of C(0) = valOfNot(val of C(1))} 
C ::= <Contains> <Attr>#pcdata</Attr> <Val>#pcdata< /Val> </Contains> { 
 basicAssertions of C = newCons(text of #pcdata (0),text of #pcdata(1)) 
 val of C = valOfC(text of #pcdata(0),text of # pcdata(1), checkedBasicAssertionsh of C)} 
Is ::= <Items> IList</Items> { 
 basicAssertionsh of IList = basicAssertionsh o f Is 
 checkedBasicAssertions of Is = checkedBasicAss ertions of IList } 
IList ::= IList I { 
 basicAssertionsh of IList(1) = basicAssertions h of IList(0) 
 checkedBasicAssertions of IList(0) = check(che ckedBasicAssertions of IList(1),item of I,val of I) } 
IList ::= I { 
 checkedBasicAssertions of IList = check(basicA ssertionsh of IList, item of I,val of I) } 
I ::= <Item> <Name>#pcdata</Name> <Value>#pcdata</V alue> </Item> { 
 item of I = text of #pcdata(0) 
 val of I = text of #pcdata(1) } 
 
Figura 15. Especificación XLOP de la capa lingüística para la comprobación de restricciones sobre metadatos en Chasqui. 
 
SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 181
ISSN 1932-8540 © IEEE
 
verdad, el valor final es verdad y el soporte es la unión de 
los soportes de los argumentos, y en caso contrario el 
valor de verdad es falso y el conjunto soporte es el 
conjunto más simple que justifica dicho valor. Por último 
el valor de una condición Or es el dual de una condición 
And. 
D. La Clase Semántica 
La Figura 16 muestra un fragmento de la clase semántica 
para el procesamiento descrito en esta sección. Obsérvese que 
la clase maneja internamente estado con el fin de mejorar la 
eficiencia del procesador finalmente generado. Efectivamente, 
la clase permite reutilizar el mismo almacén de asertos en 
todas las operaciones. Esta optimización no compromete, sin 
embargo, el carácter declarativo de dicha especificación. 
V. CONCLUSIONES Y TRABAJO FUTURO 
XLOP proporciona una abstracción dirigida por lenguajes 
que introduce dos capas bien diferenciadas en la construcción 
de componentes y/o aplicaciones e-Learning que hacen un uso 
intensivo de documentación XML: una capa con la lógica 
específica de la aplicación, y una capa lingüística. La capa 
lingüística se especifica a alto nivel, como una gramática de 
atributos, y se conecta con la capa de la lógica específica 
mediante una clase semántica, que implementa las funciones 
semánticas utilizadas en la gramática. XLOP facilita el 
desarrollo y mantenimiento de las capas lingüísticas, ya que 
éstas se especifican a un grado muy alto de abstracción. 
Actualmente se están realizando distintas extensiones del 
lenguaje de especificación de XLOP (e.g., operadores 
definidos por el usuario, funciones semánticas no estrictas, 
capacidades de modularización, o tipado estático de las 
especificaciones). Como trabajo futuro se buscará la 
integración de XLOP con lenguajes para gramáticas 
documentales XML. Así mismo se desarrollará un entorno 
gráfico de depuración. Por último, se aplicará XLOP a 
experiencias e-Learning adicionales. 
AGRADECIMIENTOSEl grupo de investigación UCM 921340 y los proyectos 
TIN2005-08788-C04-01, TIN2007-68125-C02-01, y 
Santander/UCM PR34/07-15865 han financiado este trabajo. 
REFERENCIAS 
[1] Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D. 2007. Compilers: 
principles, techniques and tools (second edition). Addison-Wesley 
[2] Appel, A.W. 1997. Modern Compiler Implementation in Java. 
Cambridge Univ. Press 
[3] Birbeck, M et al. 2001. Professional XML 2nd Edition. WROX Press, 
Birminghan,UK 
[4] Bork, A. 1985. Personal Computers for Education. Harper & Rows 
[5] Fernández-Manjón, B., Sierra, J.L., Moreno-Ger, P., Martínez-Ortiz, I. 
Uso de Estándares Aplicados a TIC en Educación. Informe Técnico 16, 
Centro Nacional de Información y Comunicación Educativa (CNICE), 
ares.cnice.mec.es/informes/16/ 
[6] IMS. IMS Question and Test Interoperability 2.1. 
www.imsglobal.org/question/ 
[7] Kawaguchi, K. 2002. Flexible Data-Biding with RelaxNGCC. Extreme 
Markup Languages 2002, 4-9 Agosto, Montreal, Canada 
[8] Knuth, D. E. 1968. Semantics of Context-free Languages. Math. Syst. 
Theory 2(2), 127–145. Ver también Math. Syst. Theory 5(1), 95–96 
[9] Paaki, J. 1995. Attribute Grammar Paradigms – A High-Level 
Methodology in Language Implementation. ACM Comp. Surveys, 
27(2), 196-255. 
[10] Sarasa, A., Navarro, I., Sierra, J.L, Fernández-Valmayor, A. 2008. 
Building a Syntax Directed Processing Environment for XML 
Documents by Combining SAX and JavaCC. 3rd Int. Workshop on 
XML Data Management Tools & Techniques. DEXA’08. 1-5 Sept., 
Turin, Italia 
[11] Sarasa, A., Sierra, J.L., Fernández-Valmayor, A. 2008. Procesamiento 
de documentos XML dirigido por lenguajes en entornos de e-Learning. 
SIIE’08, 1-3 Oct., Salamanca, España. 
[12] Sarasa, A., Temprado, B., Sierra, J.L., Fernández-Valmayor, A. 2008. 
XML Language-Oriented Processing with XLOP. 5th Int. Symp. on Web 
and Mobile Information Services. AINA’09. 26-29 Mayo, Bradford, UK 
[13] Sierra, J.L., Fernández-Manjón, B., Fernández-Valmayor, A. 2007. 
Language-Driven Development of Web-Based Learning Applications. 
Advances in Web Based Learning - ICWL 2007, LNCS 4823, 520-531 
[14] Sierra, J.L., Fernández-Manjón, B., Fernández-Valmayor, A. 2008. A 
Language-Driven Approach for the Design of Interactive Applications. 
Interacting with Computers 20(1), 112-127 
[15] Sierra, J.L., Fernández-Valmayor, A. 2008. Tagging Learning Objects 
with Evolving Metadata Schema. ICALT’08. 1-5 Julio, Santander, 
España. 
[16] Sierra, J.L., Fernández-Valmayor, A., Fernández-Manjón, B. 2007. How 
to Prototype an Educational Modeling Language. SIIE’07, 14-16 Nov., 
Porto, Portugal. 
[17] Sierra, J.L., Fernández-Valmayor, A., Fernández-Manjón, B. 2008. 
From Documents to Applications Using Markup Languages. IEEE 
Software 25(2), 68-76 
[18] Sierra, J.L., Fernández-Valmayor, A., Guinea, M., Hernánz, H. 2006. 
From Research Resources to Virtual Objects: Process model and 
Virtualization Experiences. J. of Ed. Tech. & Society, 9(3), 56-68. 
[19] Stanchfield, S., ANTXR: Easy XML Parsing based on The ANLR 
Parser Generator. Java Due.com, Hillcrest Comm. & FGM, Inc. 
javadude.com/tools/antxr/index.html 
[20] XTutor web site. 2007. icampus.mit.edu/xtutor. Vis. 21 Abril 2008 
 
 
Antonio Sarasa-Cabezuelo es Licenciado en Ciencias 
Matemáticas por la Universidad Complutense de 
Madrid (España), dónde actualmente ejerce como 
Profesor Colaborador. Coautor de más de 50 artículos 
publicados en actas de conferencias y revistas, 
colabora también con RED.ES y el Ministerio de 
Industria, Turismo y Comercio de España en diversas 
iniciativas e-Learning (especificación LOM-ES y 
proyecto AGREGA). Sus intereses investigadores 
incluyen la creación y despliegue de objetos educativos 
estandarizados, y el procesamiento de documentos 
XML dirigido por lenguajes, campo este último en el 
que está realizando su Tesis Doctoral. 
 
public class CheckingSemanticClass { 
 private AssertionStore astore; 
 public CheckingSemanticClass() { 
 astore = new AssertionStore(); 
 } 
 public AssertionStore newCons(String i, 
 String v) { 
 astore.addAssertion(i,v); 
 return astore; 
 } 
 public AssertionStore comb(AssertionStore a1, 
 AssertionStore a2) { 
 return astore; } ... } 
 
Figura 16. Fragmento de la clase semántica para la comprobación de 
restricciones sobre metadatos en Chasqui. 
182 IEEE-RITA Vol. 4, Núm. 3, Ago. 2009
ISSN 1932-8540 © IEEE
 
 
José-Luis Sierra-Rodríguez es Doctor en Informática 
por la Universidad Complutense de Madrid (España), 
dónde actualmente ocupa una plaza de Profesor 
Titular de Universidad. El Dr. Sierra es coautor de más 
de 70 artículos de investigación publicados en revistas 
y actas de conferencias internacionales. Sus intereses 
investigadores incluyen la Ingeniería del Software 
orientada a lenguajes, los lenguajes de marcado y el 
desarrollo dirigido por lenguajes de Sistemas e-
Learning. 
 
 
Alfredo Fernández-Valmayor es Doctor en Ciencias 
Físicas por la Universidad Complutense de Madrid 
(España), y Profesor Titular de Universidad en dicha 
universidad, dónde también dirige el Campus Virtual 
de la institución. El Dr. Fernández-Valmayor es 
coautor de más de 70 artículos científicos publicados 
en revistas y actas de conferencias internacionales. Sus 
intereses investigadores se centran en los usos 
educativos de los lenguajes de marcado y en el 
desarrollo y autoría de materiales para sistemas de 
educación basados en web. 
 
 
 
 
SARASA-CABEZUELO et al.: PROCESAMIENTO DE DOCS. XML DIRIGIDO POR LENGUAJES 183
ISSN 1932-8540 © IEEE
 
 
Title— DidaktosOnLine: a tool for the social construction of 
knowledge 
 
Abstract—This paper proposes a reflection around the 
instruments and strategies developed within Educational 
Technology (ET) practical classes, with two groups of students at 
the University of Aveiro, Portugal. Students were asked to 
collaboratively develop educational materials based on Cognitive 
Flexibility Theory (CFT). DidaktosOnLine (DOL), which has 
Social Web characteristics (http://didaktos.ua.pt) and was 
developed by University of Aveiro researchers, offers an 
environment for social construction and interaction, rich in 
context dependent information, discussion and critical 
questioning. Results show that students in both groups adhered to 
DOL, working collaboratively, evidencing some difficulties in 
diverse domains, reported in this paper. 
 
Index Terms — Web 2.0, eLearning, DidaktosOnLine, 
Cognitive Flexibility Theory (CFT). 
 
I. INTRODUÇÃO 
PIRO e colaboradores propuseram uma teoria de 
aprendizagem e de ensino que enfatiza a necessidade de 
trabalhar conhecimentos complexos e pouco-estruturados em 
contraste a conhecimentos simples e de domínios bem-
estruturados. A aprendizagem é encarada como um processo 
de reconstrução a partir da experiência e do ambiente onde se 
contextualiza, devendo este proporcionar ao aluno múltiplas 
interpretações [1, 2]. 
A Teoria da Flexibilidade Cognitiva (TFC) preocupa-se 
com a aquisição de nível avançado de conhecimento complexo 
e pouco-estruturado, como o comprovam vários estudos (por 
exemplo, [3-5] e sugere que se apresente a complexidade em 
pequenas unidades, sendo estas analisadas através de múltiplas 
perspectivas, que vão facultar uma melhor compreensão do 
assunto em análise. Caracteriza-se pela interacção de vários 
conceitos que são pertinentes na aplicação a um caso, sendo a 
combinação desses conceitos inconsistente em casos do 
mesmo tipo. Este domínio é tratado por Moreira et al. [6, 7] 
 
F. Neri de Souza, Departamento de Didáctica e Tecnologia Educativa, 
CIDTFF, Campus de Santiago, Universidade de Aveiro, 3810-193 Aveiro, 
Portugal (e-mail fns@ua.pt). 
A. Moreira, Departamento de Didáctica e Tecnologia Educativa, CIDTFF, 
Campus de Santiago, Universidade de Aveiro, 3810-193 Aveiro, Portugal (e-
mail moreira@ua.pt). 
DOI (Digital Object Identifier)Pendiente 
como um domínio holístico-integrativo do conhecimento. Este 
facto não é uma limitação da teoria, mas uma especificidade 
que até então nunca tinha sido proposta. 
 Se pretendemos que os alunos usem de modo flexível o 
conhecimento, ele deve ser ensinado de uma forma flexível. 
Spiro et al. [8] consideram os sistemas hipertexto e hipermédia 
adequados e convenientes para implementar a teoria, uma vez 
que estes sistemas podem proporcionar múltiplas travessias de 
uma dada paisagem cognitiva e sua integração em múltiplos 
casos e mini-casos. De forma resumida, os pressupostos de 
base da TFC assentam nos princípios de que para se aprender 
num domínio de estruturação holístico-integrativa, isto é, num 
domínio pouco estruturado de nível avançado, detentor de 
complexidade, é necessário cruzar esse domínio (ou paisagem 
conceptual) a partir de pontos de vista diferenciados. Esse 
domínio, pelas suas características, deve ser representado por 
casos ilustrativos do mesmo, e estes, por sua vez, decompostos 
em unidades menores, cognitivamente manejáveis (mini-
casos), que tornem salientes as especificidades do domínio. 
Tal decomposição promoverá o desenvolvimento da 
flexibilidade cognitiva necessária à sua compreensão, 
evitando os enviesamentos redutores próprios da rigidez 
cognitiva, com especial relevo para a utilização de analogias 
múltiplas capazes de compreender toda a complexidade de um 
dado fenómeno. Isto é conseguido por recurso a Hipertextos 
de Flexibilidade Cognitiva que, por fomentarem um ensino-
aprendizagem de acesso aleatório, permitem cruzamentos de 
uma dada paisagem conceptual mediante preceitos de 
revisitação dos mesmos conceitos a partir de um ponto de vista 
fundamentado na repetição não replicada do conhecimento. 
Quer isto dizer que, num dado momento, o mesmo conceito é 
visitado no âmbito de elementos contextuais diversos dos que 
o contextualizarão numa outra visita. 
 Embora a TFC possa ser implementada em ambientes 
multimédia do tipo Web 1.0, mesmo que numa filosofia open 
source [9], é certamente em contextos Web 2.0 que as 
características de trabalho colaborativo flexível e distribuído 
poderão ser melhor aplicadas. 
 Os sites considerados Web 2.0 ou Web Social permitem aos 
utilizadores fazer muito mais do que apenas aceder a 
informações em diferentes formatos ou em diferentes 
sequências; permitem desconstruir e construir socialmente os 
conteúdos desejados. Os utilizadores podem construir 
conhecimento de forma interactiva numa plataforma na rede de 
computadores, podem executar aplicações de software através 
de um browser vulgar, colocar os próprios dados em rede e 
exercer controlo sobre estes dados. Os sites Web 2.0 são 
DidaktosOnLine: uma ferramenta para a 
construção social do conhecimento 
Francislê Neri de Souza e António Moreira 
S
IEEE-RITA Vol. 4, Núm. 3, Ago. 2009 184
ISSN 1932-8540 © IEEE
 
considerados por O’Reilly [10] como aqueles que 
proporcionam um efeito de rede através de uma "arquitectura 
de participação", que encoraja o envolvimento activo dos seus 
utentes, em vez de os transformar em utilizadores passivos. O 
conceito de Web como plataforma de participação e interacção 
tem muitas das características que necessitamos para 
promover, em contexto educacional, a aprendizagem activa, 
colaborativa e rica em casos, mini-casos e travessias 
conceptuais. 
De acordo com diversos autores [10, 11] as características 
da Web 2.0 são as seguintes: participação activa do utilizador, 
rica em experiência, conteúdo dinâmico, meta dados, padrão 
Web, escalabilidade, abertura, liberdade e inteligência 
colectiva por meio de participação do utente. 
II. OBJECTIVOS E FERRAMENTAS WEB 2.0 DO ESTUDO 
Um ambiente distribuído é aquele em que os alunos podem 
desenvolver colaborativamente a desconstrução e a construção 
do conhecimento, e onde todos podem ter acesso ao trabalho. 
O factor portabilidade é crítico, pois a aprendizagem 
colaborativa exige não somente um ambiente distribuído, mas 
também multi-plataforma. Tal portabilidade é possível com a 
plataforma DidaktosOnLine (DOL) - http://didaktos.ua.pt [6, 
7]. Os objectivos deste trabalho foram introduzir os conceitos 
subjacentes à TFC e incentivar o desenvolvimento de 
projectos através da utilização do DOL. Também procurámos 
compreender quais as principais dificuldades sentidas pelos 
estudantes nas vertentes teórica, prática e de trabalho de grupo. 
Considerando que Web 2.0, como reconhece O’Reilly [10], 
não tem fronteiras rígidas, mas antes, um núcleo gravitacional 
onde os conceitos de Web Social são caracterizados, o DOL é 
uma plataforma Web 2.0 pelas razões que passamos a 
descrever. DIDAKTOS é um acrónimo para “Didactic 
Instructional Design for the Acquisition of Knowledge and 
Transfer to Other Situations”, desenvolvido por Moreira e 
colaboradores [6, 7], para utilização local. O DidaktosOnLine 
é um sistema de hipertexto de flexibilidade cognitiva inspirado 
nos pressupostos da Teoria da Flexibilidade Cognitiva e que 
dele derivou, em formato distribuído. Pode ser usado na 
desconstrução e construção de conteúdos de qualquer área 
disciplinar numa perspectiva holístico-integrativa. 
 O DidaktosOnLine é uma open shell que permite aos 
utilizadores (professores e alunos), mediante a escolha prévia 
de um número específico de conteúdos (casos), dividi-los em 
pequenas unidades (mini-casos) que minimizem a sobrecarga 
cognitiva para o utilizador final (alunos). No entanto, os mini-
casos são conceptualmente ricos e detentores de 
complexidade. Outra funcionalidade do DidaktosOnLine é a 
possibilidade de inclusão de actividades no decorrer do estudo 
dos casos e dos mini-casos, tais como a formulação de 
perguntas ou a elaboração de uma explicação sobre 
determinado aspecto ou travessia conceptual. Na figura 1, 
apresentamos o aspecto geral do DidaktosOnLine e exemplos 
de mini-casos. 
A seguir apresentamos um Caso de um projecto 
desenvolvido no Centro Competência Nónio – Século XXI da 
Fig. 1. Aspecto geral de um caso no DidaktosOnLine. 
NERI DE SOUZA Y MOREIRA: DIDAKTOSONLINE: FERRAMENTA PARA CONSTRUÇÃO DO ... 185
ISSN 1932-8540 © IEEE
 
Universidade de Aveiro, desenvolvido por Leonel Rocha, para 
alunos de Ciências do 8º ano de escolaridade (13-14 anos). 
“Caso: O Dióxido de Carbono - O mau da fita. 
Descrição do caso: Devido ao Aquecimento Global, o Dióxido de Carbono 
é apelidado do "mau da fita". Será que é mesmo? O desenvolvimento deste 
caso é baseado no texto de Tomás de Montemor publicado no Notícias 
Magazine de 08.Set.2002 com o titulo "O Gás Indeciso" 
Mini-casos 
 - O papel do Dióxido de Carbono... 
 - Os irmãos Carbono feitos prisioneiros! 
 - O plano de fuga do irmão "Carbono 1" 
 - O "Carbono 2" torrando ao Sol... 
 - Na paisagem queimada ainda restava como prisioneiro o "Carbono 3" 
 - O "Carbono 1" levou um tiro e ...” 
Na Figura 2 apresentamos o Mini-caso “Os irmãos Carbono 
feitos prisioneiros!” 
Para uma descrição mais detalhada do sistema ver [7, 12]. 
III. DESCRIÇÃO DO ESTUDO 
 Antes do início do semestre lectivo foi discutida com o 
professor da disciplina de Tecnologia Educativa a 
implementação de algumas estratégias para a utilização do 
DOL. A inovação na disciplina teve em conta um trabalho que 
procurava analisar os desafios de inserir a TFC em duas 
turmas de formação de professores (inicial e em serviço) do 
ano anterior [5]. 
“Results show that the in-service group is more pro-active 
and committed to discussion of the theory and its 
application, showing higher levels of interaction between 
its members. Future implementations of the ET course 
under the same format will have to pay special attention 
to CFT jargon and associated concepts, offering 
strategies that may overcome these comprehension 
problems, and also the provision of a variety of good 
commented examples of the application of CFT, 
rendering it clearer for the students. A set of guidelines 
and a glossary are also instruments under construction,

Continuar navegando

Materiales relacionados

217 pag.
TGT-1268

User badge image

Estudia Aquí

50 pag.
EGEL-COMPUTACION

UV

User badge image

Mucho Conocimiento

82 pag.
T-TI-LozanoLuisDavid-2018

SIN SIGLA

User badge image

Materiales y Contenidos