4.4.4. Posicionamiento en la estructura de carpetas del paquete
Los atributos xml:base permiten definir rutas relativas dentro de la estructura de carpetas que permiten abreviar la referencias a nivel de los elementos file. Este mecanismo sigue la especificación XML Base descrita en XML Base (2001). En la Figura 4.4.4.a se muestra un ejemplo de uso de esta característica. Mediante xml:base se especifica que todos los archivos del recurso se encuentran en la capeta tutorial. Esto permite abreviar las referencias a dichos archivos. Dicha carpeta puede haberse, así mismo, posicionado utilizando atributos xml:base en los elementos resources y manifest antecesores. El punto de partida inicial es la raíz del paquete.
Figura 4.4.4.a . Ejemplo de uso del atributo xml:base
4.4.5. Descripción de organizaciones
La descripción de las organizaciones de un paquete se encierra en el interior de un elemento de tipo organizations. Este es un elemento obligatorio, aún para aquellos paquetes que no incluyen ninguna organización (en este caso, deberá incluirse un elemento vacío: <organizations/>). Tal y como se ha indicado, IMS CP incluye un mecanismo por defecto de descripción de organizaciones. Cada organización que sigue dicho mecanismo se describe, a su vez, mediante un elemento organization. La Figura 4.4.5.a. esboza la estructura gramatical de estos elementos.
El elemento organizations puede incluir un atributo opcional default, que refiere a la organización por defecto. Así mismo, puede incluir una secuencia opcional de elementos organization, así como una secuencia de otros elementos, no prefijados a priori en la especificación IMS CP, que proporcionan otras formas de describir organizaciones. Por su parte, cada elemento organization puede tener asociados los siguientes atributos:
- Obligatoriamente, un atributo identifier que identifica unívocamente la organización en el contexto del paquete.
- Opcionalmente, un atributo structure que identifica el tipo de estructura utilizada para expresar la organización. Su valor por defecto es hierarchical, que se corresponde con la visión arborescente de los recursos y subpaquetes contemplada en la presentación conceptual de la especificación
Figura 4.4.5.a. Estructura gramatical de los elementos organizations y organization
Así mismo, los elementos organization contienen:
- Opcionalmente, un elemento title, que proporciona un título descriptivo de la organización.
- Una secuencia de cero o más elementos item.
- Opcionalmente, un elemento metadata con los metadatos de la organización.
La Figura 4.4.5.b. muestra la estructura gramatical de los elementos item, que permiten describir los distintos ítems en una organización. Dichos elementos tienen asociados los siguientes atributos:
- Un identificador obligatorio: identifier.
- Una referencia opcional a un recurso o a un subpaquete: identifierref
Figura 4.4.5.b . Estructura gramatical de item
Figura 4.4.5.c .Organizaciones globales del manifiesto de la Figura 4.4.1.b
Por su parte, item puede contener los siguientes elementos:
- Un título opcional: title.
- Una secuencia (posiblemente vacía) de ítems. Esto permite representar ítems compuestos.
- Un elemento opcional describiendo los metadatos asociados.
- Opcionalmente, un atributo booleano isvisible, que determina si el ítem es o no visible. Sus posibles valores son true y false. Su valor por defecto es true (es decir, por defecto es visible)
- Opcionalmente, los parámetros requeridos para ejecutar el recurso referido: parameters. Este atributo tiene sentido, por ejemplo, cuando el recurso es un programa ejecutable, que necesita ciertos parámetros para ser lanzado
La Figura 4.4.5.c muestra las organizaciones globales del manifiesto de ejemplo. Al igual que en los ejemplos anteriores, por simplicidad no se incluyen metadatos.
4.4.6. Extensibilidad
El lenguaje de marcado para manifiestos de IMS CP posee diversos puntos de extensibilidad, que permiten introducir marcado para perfiles de aplicación específicos. Tal y como ya se ha indicado anteriormente, es posible utilizar distintos esquemas de metadatos, así como añadir otros mecanismos de descripción de organizaciones. Igualmente, también es posible añadir nuevos elementos hijos de manifest. Cada nueva extensión tendrá asociada un espacio de nombres, así como un esquema XML que regulará la estructura de dicho espacio de nombres. |