En Todo lo que siempre quiso saber sobre el formato ePUB (Cap. 01) empezabamos a analizar en detalle el contenido de un archivo ePUB. Veamos la estructura en detalle:
ePUB File:.
│ mimetype
│
├───META-INF
│ container.xml
│
└───OEBPS
│ content.opf
│ toc.ncx
│
├───Images
│ img0001.jpeg
│ img0002.jpeg
│ …...
│ img0007.png
│
├───Styles
│ style001.css
│
└───Text
content001.xhtml
content002.xhtml
content003.xhtml
...
content026.xhtml
content027.xhtml
content028.xhtml
He cogido un libro cualquiera y lo he destripado. Y Coco nos va a ir contando que es cada cosa:
Por cierto, los nombres de los archivos distinguen entre mayusculas y minusculas, asi que ojito.
el archivo mimetype
Es un archivo de texto que como su propio nombre indica declara explicitamente que el archivo es un ePUB y no otra cosa. Dentro contiene SIEMPRE una única frase:
"application/epub+zip"
que sirve para que el sistema operativo no se confunda y crea que es otra cosa en lugar de un archivo ePUB (por ejemplo un archivo ZIP). Para que funcione, este archivo tiene que estar situado el primero de la lista (físicamente, dentro del contenedor) y además sin comprimir, para que pueda ser leído por el sistema operativo o la aplicación de lectura sin dificultades.
el directorio META-INF
Este directorio contiene el archivo “container.xml” que indica a la aplicación de lectura dónde se encuentra el texto del libro, indicando la ubicación del archivo “content.opf”. Este directorio es identico para cualquier libro ePUB.
directorio OEBPS
Como podeis ver es LA UBICACIÓN RECOMENDADA (no deja de ser curiosa esta relajación del estándar; las especificaciones de IDPF no obligan a que el libro esté aquí dentro pero hay lectores que no funcionan si no lo encuentran en este directorio) para el contenido del libro, incluyendo las imágenes en su directorio correspondiente.
Puedes ubicar el contenido del libro en otro sitio, siempre y cuando indiques en el archivo “container.xml” donde queda situado “content.opf”, que a su vez desarrolla el detalle de dónde están los componentes del libro.
Dentro de OEBPS tendremos:
- Directorio images: con los archivos gráficos (portada, ilustraciones, …) del libro.
- Content.opf: este archivo XML debe recoger una lista de todos los archivos incluidos en nuestro contenedor ePUB (y EL ORDEN en el que van); y muy importante, los metadatos (autor, género, …)
Veamoslo en contexto:
Podría tener cualquier otro nombre, siempre y cuando esto se refleje en “container.xml”. De hecho, los ebooks procedentes de FEEDBOOKS, tienen como “firma” característica ciertas variantes sobre la estructura ePUB común. Una de estas diferencias es llamar al fichero que hace el papel de “content.opf”, “fb.opf”
Los metadatos
Son esa información que sirve para distinguir entre un ePUB hecho con cariño y otro hecho “a lo que salga”; además de ofrecer información sobre el libro contenido en nuestro archivo ePUB. Y se encuentran DENTRO del fichero “container.xml”. Los que no pueden faltar son:
dc:title – Título del libro
dc:language – Idioma del libro, según la codificación de la lista RFC 3066. dc:identifier – Código identificador único del archivo ePUB. Cada fichero ePUB tendrá uno distinto (distintos ePUBs sobre el mismo libro, distintos ids). Normamente es generado por el programa dónde cambiamos de formato nuestros ebooks; pero si generamos un ePUB desde cero, sería una buena práctica incluir el ISBN como parte del código.
Puede haber muchas clases de metadatos posibles; que recogen todo tipo de información sobre la obra literaria incluida en nuestro ePUB.
El manifiesto
Como vemos en la imagen, otro contenido típico del archivo “content.opf” es el manifest, que es una lista (sin orden estricto) de los archivos contenidos en el ePUB, con una declaración del tipo de archivo que es cada uno. (image, xhtml, text,…)
Además a cada archivo se le asigna un identificador que se utiliza en la sección “spine”.
La espina (“
spine”), es la parte del archivo dónde se establece el orden de lectura de los archivos que forman el contenido del libro y que venía listados desde el “manifest”.
No es necesario incluir TODOS los archivos en la espina; únicamente lo que se necesite para establecer un orden de lectura correcto. (por ejemplo, no se suele incluir los archivos de imagen).
Resumiendo, “container.xml” nos dice donde está “content.opf”; y en “content.opf” encontramos, la lista de TODOS los archivos que componen el libro (contenido: texto e imagen, formato: estilos CSS, estructura: TOC, etc…) en el manifiesto; y en la espina el ORDEN NECESARIO para una LECTURA CORRECTA del libro. Y de propina, los metadatos, que no tienen que ver con archivos, sino que son atributos (caracteristicas) de la entidad “libro”.
Y lo demás, lo vemos a ir dejando para el capítulo 3.
Y recordad, niños, esto es CERCA y esto es LEJOS
No hay comentarios
Publicar un comentario