Introducción
Con la nueva versión de 2007 Microsoft Office system, Microsoft introduce un nuevo formato de archivo XML que es utilizado por Microsoft Word, Microsoft Excel, Microsoft PowerPoint. Con este nuevo formato las empresas podrán integrar sus áreas a través de la empresa exitosamente.
Objetivos
Al finalizar esta lección usted será capaz de:
Explicar cuales son las ventajas de usar Microsoft Office Open XML
Describir la arquitectura de Microsoft Office Open XML
Distinguir las características mas importantes de los distintos formatos de archivos
Comprender el funcionamiento de las medidas de seguridad que adopta Microsoft Office Open XML
¿Qué cambios hay para el usuario?
Ninguno en realidad; seguirá viendo un simple archivo de Office. El único cambio será la nueva extensión.
Para los desarrolladores, en cambio, éste no será un simple archivo.
Se trata de un archivo modular en el cual pueden existir diferentes escenarios para su vista.
Este archivo modular es, actualmente, un contenedor, también llamado Package.
El Package es un archivo ZIP; Microsoft usa esta técnica de compresión para que los documentos reduzcan su tamaño.
En este Package se puede ver una cantidad de pequeños archivos.
El primero y más importante de todos se llama [Content Types].xml, y en él se listan los diferentes tipos de archivos guardados en el Package.
Con este archivo se pueden detectar imágenes, videos, archivos attach, headers y footers, sin necesidad de abrir el documento por completo.
La mayoría de las filas que se encuentran en el Package son llamadas “partes del documento”, o Document Parts.
Algunas de ellas son el make-up del documento, como, por ejemplo:
Settings
Styles
Theme
WebSettings
Fonts
Seguidamente encontramos un folder llamado docProps, donde hallaremos dos archivos:
app.xml
Tipo de template
Páginas
Caracteres
Nombre de la aplicación
Líneas
Versión
core.xml
Creador
Descripción
Revisión
Fecha de creación
Fecha de modificación
Necesitamos una especie de “pegamento” para unir todos los archivos y convertirlos en uno solo.
Si nos fijamos dentro de la carpeta _rels, vamos a encontrar diferentes puntos de conexión y relaciones entre los schemas de 2007 Office system y las filas asociadas a éste.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/></Relationships>
Finalmente, uno puede crear cualquier carpeta que necesite y en ella guardar archivos de tipo:
Help
Binarios
Macros VBA
XML custom
Lo único que se debe hacer es agregar la relación de esta carpeta, pero no en la carpeta _rels del root, sino en una especialmente creada dentro de la custom y también llamada _rels.
A través de los años, Office fue evolucionando tanto a nivel aplicación como a nivel formato.
Desde la primera versión de Office 97 hasta la 2003, el formato por default era binario.
Entre estas versiones comenzaron a poder guardarse y/o escribirse documentos con formato XML.
Uno de los grandes inconvenientes con que la mayoría de los desarrolladores nos podíamos encontrar era trabajar con un XML generado con Office 2003 y otro con una versión 97… totalmente incompatibles.
Otro de los inconvenientes era que, de acuerdo con la versión de Office que se estaba utilizando, el formato de XML iba cambiando, agregando o quitando metatags, y no dejaba la data totalmente limpia. En el 100% de los casos, si este archivo en formato XML se quería parsear para obtener información de él, había que tener una versión de este parser según la versión de Office utilizada.
Las únicas aplicaciones que utilizan el formato Open XML son:
Microsoft Office Word
Microsoft Office Excel
Microsoft Office PowerPoint
El nuevo formato de Office XML provee seguridad sensible, ya sea para archivos attach o bien para macros.
Las macros son automáticamente aisladas, y por default no se pueden ejecutar, a menos que se indique todo lo contrario en las políticas del administrador del sistema.
Formato abierto, transparencia en la interoperabilidad.
El nuevo formato predeterminado de 2007 Office system está basado en la tecnología de XML y Zip. Es decir, ya no genera archivos binarios como salida, a menos que queramos compatibilidad con versiones anteriores.
Una manera muy fácil de reconocer un archivo de 2007 Office system es por su extensión, ya que se les agregó la letra “x” a las extensiones que ya poseía.
La idea de trabajar con XML como formato abierto es la interoperabilidad, no sólo dentro de nuestro sistema operativo, sino también con otros sistemas y aplicaciones.
Hoy en día, empresas como Microsoft, Intel y Apple se encuentran reunidas para seguir mejorando el formato XML abierto.
La seguridad es muy importante en estos días. El formato Open XML permite a los desarrolladores ser más cuidadosos con su trabajo con Office y enviar la solución del documento correspondiente, según la cuenta o login de los usuarios. De la misma manera pueden eliminar cualquier potencial vulnerabilidad (macros) antes de que ésta genere un problema.
Si un documento posee, por ejemplo, un adjunto de un objeto OLE, 2007 Office system le pregunta al usuario o administrador si este documento es seguro; si no lo es, automáticamente lo deja en cuarentena.
Si un documento utiliza macros de VBA, automáticamente las elimina del documento y las convierte en un archivo denominado VBAProject.bin.
Al contener macros, objetos OLE, referencias externas, etc, 2007 Office system le pregunta al usuario si desea abrir el documento con estos objetos, brindándole información de los riesgos que puede implicar la apertura de estos archivos.
Cuando se genera un documento en 2007 Office system, ya sabemos que por default va a utilizar la nueva tecnología de XML abierto y Zip. Pero también podemos indicarle que lo guarde con un formato binario compatible entre las versiones 97 y 2003.
Sin embargo, las versiones anteriores no podrán leer los nuevos formatos (docx, pptx, etc.); por eso, Microsoft se encuentra en la preparación de Service Packs de compatibilidades entre versiones.
XML es el formato estándar más popular para el intercambio de datos, pero ahora, el nuevo formato Open XML, en el que se basan los nuevos documentos de 2007 Office system, permite enviar la información a sistemas heterogéneos, por lo que su lectura resulta más accesible.
El problema más común hasta ahora era compartir documentos a través de departamentos de nuestra empresa o, aún más complejo, entre dos organizaciones, ya que el formato binario de los documentos poseía incompatibilidades.
El formato abierto de Open XML nos lleva a un nuevo nivel de integración más allá de nuestro desktop. Éste es más escalable y flexible, y puede generar, de un solo documento Office, varios más enriquecidos y en diferentes formatos. Se utilizan protocolos estándar, como XPath (para realizar consultas en XML) y XSLT (Extensible Stylesheet Language Transformations).