Modificar atributo de elp mediante utilidad eXe_do

Inicio Forums Desarrolladores / Desenvolupadors / Garatzaileak / Desenvolvedores / Developers Modificar atributo de elp mediante utilidad eXe_do

This topic contains 14 respuestas, has 5 voices, and was last updated by  Anónimo Hace 10 años, 7 meses.

  • Author
    Entradas
  • #18472

    Buenos días!, quería platear una duda en base al uso de la utilidad eXe_do, utilidad muy importante para nosotros ya que permite al Departamento Técnico de IEDA que sube el material a Agrega automatizar gran parte del proceso y gracias a la que podemos también hacer cambios masivos en elps, tipo licencias, por ejemplo.Desde el punto de vista de las licencias no tenemos problemas ya que modificamos con eXe_do el valor de la propiedad licence y va ok.El problema se nos plantea cuando intentamos modificar otro parámetro:  el campo de LOM-ES “Palabra clave”, que para nosotros se ha vuelto importante, ya que no se va a incluir en la pestaña Paquete del nuevo eXe2, y nos interesa modificarlo entonces masivamente.Lo he intentado modificando la propiedad valueOf_  (tomada del contentv3.xml), mediante el comando exe_do -s valueOf_=”palabra” -w TC2_U5_Tarea_Individual_1314_02_v01.elp, pero no funciona.Me indica José Miguel Andonegui que la clave está en encontrar el árbol completo de la propiedad, aunque puede ser que los datos LOMES no dependan del objeto package (exe.engine.lom.lomsubs.LangStringSub).¿Dónde se encontraría entonces esta propiedad?¡Saludos!

  • #18474

    pedro.pena
    Member

    Hola,

    Creo que la utilidad no está preparada para acceder al tipo de datos complejo que es el objeto LOM-ES. Aunque cuelga de package y se puede acceder a estructuras complejas usando . (por ejemplo root.title=”prueba” que cambiaría el título de un nodo) el objeto LOM-ES contiene diccionarios según veo en el contentv3.xml.

    A bote pronto creo que habría que implementar el operador [] además del operador . en el parseador de exe_do.

    Un  saludo.

  • #18475

    Anónimo

    Hola

    Hace tiempo le hice a tu compañero Rafa una utilidad en python que servía para lanzar cambios masivos en proyectos, aunque ahora mismo no recuerdo exactamente lo que hacía :-). Coméntale si lo que pretendéis es algo similar y/o pídele aquel script para echarle un ojo.

    Si no das con Rafa pásanos un ejemplo de elp sin modificar y el modificado.

    un saludo

  • #18476

    Anónimo

    Otra posible vía sería (requiere desarrollo):

    1) Exportar los metadatos LOM-ES

    2) Modificar el archivo .xml

    3) Importar los metadatos

  • #18481

    Buenos días, trabajo coordinadamente con el equipo técnico del ieda (Ana, Rafa, Gema y José Luis) para las pruebas de catalogación de eXe (hasta el año pasado yo misma estaba allí). Utilizamos el exe_do para automatizar muchas de las labores diarias de exportación, creación de imprimibles, etc… para la subida de materiales.El tema que se nos plantea ahora para los cambios masivos es la nueva capacidad de eXe de catalogación LOM-ES, que es una nueva funcionalidad no existente antes, ni recogida por script previo, y que estamos planeando utilizar para la catalogación de los materiales directamente en eXe.Concretamente, el campo de LOM-ES “Palabra clave”, para nosotros se ha vuelto muy importante, ya que no se incluirá en la pestaña Paquete porque considera que es para catalogadores avanzados, y a nosotros nos interesaría que los profesores, con eXe2, y desde sólo la pestaña Paquete puedan hacer una catalogación básica del material. Por eso es por lo que nos planteamos la posibilidad de modificación masiva de este campo.Viendo el hilo, creo que, como indica Joxemi, requeriría entonces de un desarrollo extra para acceder a los metadatos creados al introducir LOM-ES.Adjunto como indicas un elp ejemplo del ieda, con palabra clave en LOM-ES = “mda”, y el modificado en el que el campo palabra clave se modifica a “mda, TIC”.

    ¡Saludos!

    Belén

    Archivos adjuntos:
    You must be logged in to view attached files.
  • #18484

    Anónimo

    No me acabo de aclarar de si serviría lo siguiente:

    un script desde consola que lanzado sobre una carpeta con ficheros elp los abra uno a uno, edite sus contentv3.xml y, dentro de la sección dictionary,  sustituya la línea:

    <string value=”mda”></string>

    por:

    <string value=”texto_a_escribir_por_el:usuario “></string>

    o sobre elps por separado…

    (estoy hablando de la opción  2 de Josemi)

    un saludo

  • #18491

    Anónimo

    Hola Antonio:

    El procedimiento que describes debería funcionar, pero es importante saber que, modificar el archivo contentv3.xml desde un script de sustitución de textos tiene sus riesgos y sus limitaciones. Por ejemplo, puede que ese texto se encuentre en otras partes del archivo, por lo que modificaríamos más cosas de las deseadas, o puede que ya hubiera otras palabras clave, por lo que el script no encontraría la cadena <string value=”mda”></string>. Además, el formato del archivo contentv3.xml es muy flexible para poder albergar los datos de los diferentes apartados de eXe pero a la vez, bastante complejo para ser interpretado a simple vista.

    La solución ideal viene por la vía propuesta por Pedro. Lo que yo he propuesto, sólo sería posible si existe una exportación/importación de metadatos LOM accesible desde exe_do. Tendríamos los mismos posibles problemas descritos antes, pero el formato LOM-ES es más legible y el riesgo de modificar algo indebido estaría acotado a los metadatos.

  • #18498

    Rafael Vidal
    Member

    Hola:

    ¿Se ha valorado la posibilidad de tener los metadatos LOM-ES en un fichero aparte?

    Saludos.

  • #18499

    Anónimo

    Hola Rafa,

    ya lo están: SCORM permite incluirlos textualmente en el manifiesto o referenciar a un fichero que los incluya: esto es lo que hacemos: actualmente lo denominamos imslrm.xml (adjunto uno de ejemplo), ese es el fichero que se rastrearía.

    • This reply was modified Hace 10 años, 7 meses by  .
    Archivos adjuntos:
    You must be logged in to view attached files.
  • #18502

    Buenas tardes, por lo que dice Antonio, supongo que entonces eXe al igual que permite importar los metadatos LOM-ES, podría implementar fácilmente el exportarlos exportando este fichero imslrm.xml, ¿es así o es más complicado?

    Creo que esto es además lo que indica Joxemi que necesitaría exe_do para tratar los metadatos, si no he entendido mal…

    ¿Sería entonces posible, Antonio?

    Un saludo!

  • #18503

    Anónimo

    Vaya, me explico mal, mejor empiezo por el final 🙂 y perdón si digo cosas obvias:

    Haz esto: exporta un elp cualquiera como paquete SCORM1.2 ó 2004 -o IMSCP y observa el fichero ZIP que se genera, ahí aparecerán, entre otras cosas, un fichero imsmanifest.xml  y un imslrm.xml. El primero, el llamado manifiesto, incluye información necesaria del proyecto para su correcto tratamiento desde gestores de contenidos tipo moodle etc. Si editas el manifiesto verás que entre etiquetas <metadata>….</metadata> tiene la referencia al fichero imslrm.xml, generado también en la exportación. Quiero decir que el fichero que incluye los metadatos YA se está generando en el momento en que generas el empaquetado del proyecto.

    Por eso reeditar ese fichero no es complejo, implementar un modo de generarlo ajeno al proceso de exportación tampoco lo es; el tema es que realmente entiendo que imslrm.xml no nos sirve para nada más que para que los gestores de contenidos se entiendan con el paquete, pero modificar ese fichero NO modifica los metadatos en el el elp EN SÍ. Por tanto nuestro gozo en un pozo salvo que el objetivo último de vuestros proyectos modificados fuera siempre un gestor de contenidos…

    Poco a poco…

  • #18504

    Anónimo

    Hola Antonio:

    Muy interesante la vía que propones con el archivo imslrm.xml. Tal y como cuentas, ese archivo es referenciado desde el imsmanifest.xml para que los repositorios clasifiquen el paquete. Si se modifica el archivo, luego se puede importar desde el menú de exe (nueva opción de eXe20). He hecho esta prueba:

    1) En un paquete existía la palabra clave AAAA

    2) Exportar a SCORM

    3) Descomprimir

    4) Abrir con un editor de texto el archivo imslrm.xml

    5) Buscar lo siguiente: <keyword><string language=”es”>AAAA</string></keyword>

    6) Si queremos añadir la palabra clave BBBB, hay que sustituirlo por <keyword><string language=”es”>AAAA</string></keyword><keyword><string language=”es”>BBBB</string></keyword>

    7) Importar el archivo de metadatos desde el menú de eXe (nueva opción de eXe20)

    Este último paso es el que no creo que está disponible desde exe_do

    ¡Un saludo!

  • #18506

    Hola Joxemi: estaba realizando la misma prueba que explicas, pero pensaba que la opción de importar un xml sí la realizaba exe_do con la opción -i (o –import=xml), ya que leía que importa al paquete elp en formato xml o xliff. Entonces entiendo que el error que obtengo no es de mi comando, como creía :S ¿Qué archivos xml son los que puede importar la utilidad a los paquetes elp?

    El comando que utilicé es: exe_do –import=xml imslrm.xml -w TC2_U5_Tarea_Individual_1314_02_v01.elp

    Si esto funcionase para nosotros sería fantástico con vistas a importar masivamente palabras clave  en los elp que se suben a Agrega en el ieda utilizando el nuevo eXe2.

    ¡Muchas gracias!

  • #18507

    Ok, yo misma me respondo: –import incluye el fichero en el paquete, no lo integra en los metadatos del elp, creo.

  • #18509

    Anónimo

    Hola Belén:

    Tal y como has comprobado, la opción de exportación/importación a xml existente en exe_do exporta/importa el achivo contentv3.xml, es decir, el archivo que contiene TODA la información del paquete. Sobre ese archivo puedes hacer las modificaciones que consideres oportunas, pero debes tener especial cuidado con lo que haces, ya que el tamaño y formato del mismo hace que sea posible cometer errores.

    A modo de resumen del hilo, tenemos 3 opciones:

    1) Exportar a xml, modificar el archivo contentv3.xml e importar: esta vía es viable desde eXe o desde exe_do. Hay que tener especial cuidado con el script de manipulación del archivo contentv3.xml

    2) Exportar a SCORM, modificar el archivo imslrm.xml e importar metadatos: esta vía es viable desde exe pero no desde exe_do (a día de hoy no tiene la importación de metadatos). El desarrollo del script de sustitución de cadenas en imslrm.xml es más sencillo y los posibles errores son menos peligrosos.

    3) La vía propuesta por Pedro: mejorar las rutinas de gestión de propiedades para poder hacer los cambios desde exe_do y no con un editor de texto. Es la vía ideal ya que manipulamos las propiedades con garantías, pero requiere más desarrollo.

    ¡Un saludo!

You must be logged in to reply to this topic.

Skip to content