Funzionalità

È chiaro perciò che con OpenDocument si possono creare documenti di testo (ad esempio quelli solitamente editabili con un comune elaboratore di testi), fogli di calcolo, presentazioni, disegni, immagini, grafici, formule matematiche, database e modelli di documento (che possono combinare i vari formati) e, ovviamente, creare template per molti di loro.

Lo standard ufficiale dell?OASIS relativo ad OpenDocument ne definisce tutte le capacità. Haumacher (2005) fornisce una specifica formale per gli hyperlink, mentre Eisenberg (2005) concentra l?attenzione sul formato in maniera più dettagliata.

Il testo che segue riassume tutte le funzionalità del formato.

Metadata

Il formato OpenDocument supporta i metadata (informazioni relative ai dati) grazie ad un set di elemenenti metadata predefiniti, mantenendo comunque la possibilità per l?utente di creare elementi personalizzati. I metedata prededefiniti sono: Generator, Title, Description, Subject, Keywords, Initial Creator, Creator, Printed By, Creation Date and Time, Modification Date and Time, Print Date and Time, Document Template, Automatic Reload, Hyperlink Behavior, Language, Editing Cycles, Editing Duration e Document Statistics.

Contenuto

Il formato di testo di OpenDocument supporta sia le funzionalità tipiche sia quelle avanzate: si possono creare intestazioni di vario livello, liste di tipi diversi (numerate o meno), paragrafi numerati, mantenere una traccia dei cambiamenti effettuati. Si può ricorrere alla sequenza di pagine e agli attributi di sezione per controllare la disposizione del testo. Collegamenti ipertestuali, Ruby text (che fornisce annotazioni ed è fondamentale per alcuni linguaggi), segnalibri e riferimenti sono anch?essi supportati, insieme a meccanismi per la generazione automatica di tabelle, come ad esempio tavole dei contenuti, indici, bibliografie eccetera.

Un esempio di set di tabelle nel formato OpenDocument sono senza dubbio i fogli di calcolo; è possibile quindi formattare le tabelle e l?intero foglio di calcolo nella maniera desiderata, grazie alle grandi funzionalità che offerte dal formato. Porzioni di database, filtri, data pilots (equivalente delle tabelle pivot di Excel) sono supportati ed è possibile controllare tutte le modifiche effettuate al documento.

Il formato grafico supporta la rappresentazione vettoriale, nella quale è possibile definire un gruppo di layer e relativo contenuto. Si possono ottenere diverse forme (rettangoli, linee, poligoni regolari e non, cerchi ed ellissi, percorsi, polilinee, connettori) e crearne di nuove; è inoltre possibile ricorrere a forme in 3D, come scene, luci, cubi, sfere e rotazioni. Ovviamente tutto ciò non è sufficiente per creare filmati o comunque scene in 3D elaborate, ma è più che sufficiente per documenti personali o per l?ufficio.

Le presentazioni possono essere potenziate con animazioni che consentono di controllare suoni, forme e testo, nascondendo e mostrando quindi solo quello che si vuole. In OpenDocument, molte delle possibilità di formattazione sono riusate dal sistema di formattazione dei testi, semplificandone l?implementazione.

Il formato grafico permette di creare immagini per mostrare dati numerici, con la possibilità di inserire titoli, sottotitoli, commenti e legende. Il formato definisce la serie di dati da usare per la rappresentazione grafica e molte tipologie di grafici (a linee, a torta ecc).

Anche i form sono supportati, grazie all?implementazione dello standard preesistente XForms.

Formattazione

È possibile effettuare diverse operazioni su stile e formattazione grazie alla versatilità del formato.

Il layout di pagina è determinato da una varietà di attributi, come ad esempio: dimensione della pagina, formato di numerazione, alimentazione della carta, orientamento della stampa, margini, bordi (con relativo spessore), padding, ombre, sfondo, colonne, ordine di stampa delle pagine, numero della prima pagina, scala, centratura della tabella, altezza massima della nota a piè pagina e suo separatore.

Testata e fondo pagina possono avere dimensioni variabili e possono essere personalizzate con margini, bordi, sfondi, ombre ecc.

Esistono moltissimi attributi per testo, paragrafi, testo ruby, sezioni, tabelle, colonne, elenchi e riempimenti. Ogni carattere può avere un preciso font, una sua dimesione e tutto un insieme di altre proprietà. È possibile determinare lo spazio verticale dei paragrafi attraverso attributi come mantieni uniti, vedovo ed orfano e grazie ad altri attributi come rimuovi maiuscole si può assegnare una formattazione speciale. La lista è lunghissima, uno sguardo alla guida dello standard fornirà maggiori dettagli.

Formule nei fogli di calcolo

Con OpenDocument le formule matematiche che appaiono sullo schermo possono essere descritte grazie anche all?attributo tabella:formula. Il formato permette anche di cambiare tutta quella serie di informazioni tipicamente incluse in un foglio di stile, come formati e tabelle pivot.

Sono state mosse alcune critiche verso la sintassi ammessa in tabella:formula, accusata di non essere accuratamente dettagliata. Nella specifica OpenDocument 1.0 le formule vengono descritte attraverso una serie di semplici esempi (definire un range di dati, utilizzare la funzione Somma() e così via); le perplessità riguardano proprio questo punto, poiché secondo alcuni è necessaria una specifica per le funzioni nei fogli di calcolo più dettagliata e precisa, che descriva la sintassi e la semantica, e ad essa affiancare alcuni esempi dimostrativi. Il comitato promotore dell?OpenDocument ha ribattuto dicendo che tutto ciò è estraneo ai loro scopi, visto che la sintassi di tali formule non è in XML, e che comunque l?uso delle formule è molto semplice, visto che molte di esse si basano su altre ormai in uso da diversi anni in molte tipologie di fogli di calcolo. La possibilità di leggere facilmente il codice sorgente (in quanto, ribadiamo, pubblico) e la facilità di comprensione dell?output XML sta spingendo diversi gruppi ed organizzazioni verso la creazione di una più chiara e dettagliata specifica che definisca cosa è possibile inserire in una formula e cosa no. Tutto ciò ovviamente non invaliderà quanto fatto fino ad ora nella creazione dello standard OpenDocument.

Si noti che tutto ciò non è uno svantaggio né nei confronti dell?Open XML di Microsoft (anch?esso non specifica le formule nei dettagli), né verso il formato binario che sta alla base di Microsoft Excel (del quale non sono mai completamente definiti in pubblico semantica e sintassi).