OpenFormula


De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

OpenFormula es un estándar abierto para intercambiar fórmulas recalculadas en hojas de cálculo . OpenFormula se incluye en la versión 1.2 del estándar OpenDocument . OpenFormula fue propuesto y redactado inicialmente por David A. Wheeler.

Historia

Discusión de la necesidad

OpenDocument 1.0 es una especificación para el intercambio de documentos de Office y es totalmente capaz de describir fórmulas matemáticas que se muestran en la pantalla (mediante la reutilización del estándar MathML ). También es totalmente capaz de intercambiar datos de hojas de cálculo , formatos, tablas dinámicas y otra información que normalmente se incluye en una hoja de cálculo. OpenDocument puede intercambiar fórmulas de hojas de cálculo (fórmulas que se recalculan en la hoja de cálculo); las fórmulas se intercambian como valores de la tabla de atributos: fórmula.

Sin embargo, muchos creían que la sintaxis y la semántica de table: formula no estaban definidas con suficiente detalle. La versión 1.0 de la especificación definió fórmulas de hoja de cálculo utilizando un conjunto de ejemplos simples que muestran, por ejemplo, cómo especificar rangos y la función SUM (). Algunos críticos argumentaron que se necesitaba una especificación más detallada y precisa para las funciones de la hoja de cálculo, incluidas la sintaxis y la semántica. [1] [2]El comité de OpenDocument argumentó que esto estaba fuera de su alcance en ese momento. Otros han argumentado que, si bien la especificación es menos específica de lo que uno quisiera, la intención es bastante clara (especialmente porque las fórmulas tienden a seguir tradiciones de décadas), y también porque la gran mayoría de hojas de cálculo solo usan un pequeño conjunto de funciones ( como SUM) que son compatibles universalmente con todas las implementaciones de hojas de cálculo.

Proyecto OpenFormula

Uno de los comentaristas externos de OpenDocument, David A. Wheeler, publicó un primer borrador de una especificación para fórmulas en febrero de 2005. Esto inició un proceso de discusión con varios implementadores y desarrolladores de hojas de cálculo.

En octubre de 2005, Wheeler comenzó públicamente un proyecto informal, respaldado por OpenDocument Fellowship, para crear un borrador de especificación de fórmula, basado en el borrador inicial y en discusiones desde entonces con varios implementadores. Para enero de 2006, el grupo había desarrollado una especificación extensa y los implementadores habían comenzado a cambiar sus implementaciones para cumplir con el borrador de la especificación.

Subcomité de Fórmula OASIS

En febrero de 2006, OASIS creó formalmente el subcomité de fórmulas y nombró a Wheeler como presidente del subcomité. Después de la discusión, el subcomité acordó utilizar el documento del proyecto OpenFormula como documento base. Así, para febrero de 2006, OASIS tenía un borrador de especificación de fórmula con un marco detallado y más de 100 funciones definidas.

Respuesta de Microsoft

En 2005, Brian Jones de Microsoft señaló que OpenDocument no definía las fórmulas de las hojas de cálculo en detalle. [3] Sin embargo, en ese momento, el formato XML propietario de la competencia de Microsoft tampoco incluía este tipo de especificación detallada para las fórmulas. [4]

Microsoft continuó protestando que OpenDocument no se podía usar porque no definía un formato para las fórmulas de las hojas de cálculo, mientras que su propia especificación continuó omitiendo cualquier especificación sobre fórmulas hasta abril de 2006. En mayo de 2006, Microsoft también comenzó a definir fórmulas en su formato XML. 15 meses después de la primera versión de OpenFormula y tres meses después de que OASIS publicara su primer borrador oficial de su especificación.

El lenguaje de fórmulas de la hoja de cálculo Office Open XML es ahora parte del estándar internacional ISO / IEC IS 29500: 2008.

Microsoft Office 2007 SP2 utiliza el lenguaje de fórmulas definido en ISO / IEC IS 29500: 2008 para hojas de cálculo OpenDocument. Microsoft declaró que consideran agregar soporte para un lenguaje de fórmulas ODF oficial (OpenFormula), una vez que una versión futura de la especificación del estándar OpenDocument (ISO / IEC 26300) incluya una. [5]

Finalización del esfuerzo

En junio de 2007 se anunció que quedaban cuatro tareas antes de someterse a la revisión de garantía de calidad. [6] Se incurrió en más demoras, pero muchos implementadores implementaron la especificación mientras se estaba escribiendo, modificando sus aplicaciones donde fue necesario para cumplir con el borrador de la norma.

Finalmente, la especificación OpenFormula se publicó el 29 de septiembre de 2011 como Parte 2 de la Versión 1.2 del Formato de documento abierto ( http://docs.oasis-open.org/office/v1.2/OpenDocument-v1.2-part2.html ).

Atributos de OpenFormula

Los atributos clave de la especificación y el proceso de desarrollo de OpenFormula son: [7]

  • Estándar completamente abierto La especificación cumple con todas las definiciones ampliamente aceptadas de ser un "estándar abierto", incluidas las de Bruce Perens y la Unión Europea . Por ejemplo, (1) tanto el software de código abierto como el software propietario pueden implementarlo, y (2) el trabajo se basa en el consenso, no en el dominio de un solo proveedor.
  • Desarrollado por muchos implementadores diferentes. OpenFormula está siendo desarrollado por representantes de muchos implementadores diferentes, trabajando juntos, incluidos OpenOffice.org y Sun StarOffice (Eike Rathke), KDE Calligra Suite (anteriormente KOffice ) (David Faure y Tomas Mecir), Gnumeric (Dr. Andreas J. Guelzow y Jody Goldberg), IBM / Lotus 1-2-3 (Rob Weir) y wikiCalc ( Dan Bricklin , co-creador de la hoja de cálculo).
  • Desarrollado con usuarios experimentados. Participan muchos usuarios experimentados (como Tom Metcalf, científico especializado en astrofísica del Sol ). El grupo incluye varios matemáticos, tanto usuarios como desarrolladores.
  • Desarrollo enfocado. El subcomité es un grupo grande que se enfoca específicamente en fórmulas de hojas de cálculo y nada más.
  • Sin prisas. OpenFormula se basa en un trabajo de especificación que se publicó por primera vez el 26 de febrero de 2005, así como en una gran cantidad de investigaciones sobre diferentes aplicaciones.
  • Formato preparado para el futuro La sintaxis ha sido cuidadosamente diseñada para trabajar indefinidamente en el futuro. Por ejemplo, permite un número arbitrario de columnas, al mismo tiempo que permite nombres arbitrarios de valores.
  • Casos de prueba integrados. OpenFormula incluye una gran cantidad de casos de prueba, los que prueban y demuestran la especificación, incluidos los "casos extremos" que la gente suele olvidar. Más importante aún, están formateados especialmente para que puedan extraerse automáticamente y colocarse en una hoja de cálculo de prueba para probar aplicaciones.
  • Definiciones rigurosas Los casos de prueba (mencionados anteriormente) ayudan a que sea mucho más riguroso. Además, OpenFormula define los tipos para cada función (como prototipos de cada función). Las definiciones de funciones se examinan en profundidad, por ejemplo, YEARFRAC () tiene un comportamiento sutil en los años bisiestos, que se examinaron y definieron cuidadosamente.
  • No impone errores . La especificación está cuidadosamente escrita para no requerir ciertos errores, solo porque alguien tiene un error. Por ejemplo, Excel cree incorrectamente que 1900 fue un año bisiesto, y al menos la versión preliminar 1.3 de la especificación de Excel afirma que las aplicaciones compatibles deben cometer el mismo error y requiere que las aplicaciones no puedan ser más capaces que Excel al admitir fechas anteriores a 1900. Por Al comparar muchas implementaciones independientes diferentes, el grupo OpenFormula a menudo puede detectar cuándo una aplicación comete un error y garantizar que las aplicaciones no estén demasiado restringidas.
  • Innovaciones de muchas fuentes. OpenFormula cubre las funciones de Excel y OpenOffice.org, además de funciones importantes que no se encuentran en ninguno de los dos, sino que se encuentran en otras aplicaciones de hojas de cálculo, como Gnumeric y KSpread. Por ejemplo, la especificación incluye las funciones DECIMAL y BASE, que son formas mucho mejores de manejar diferentes bases que las antiguas funciones BIN2DEC (etc.). También incluye operaciones de bits como BITAND. Estas fuentes incluyen Excel, OpenOffice.org Calc, Sun StarOffice Calc, KDE Calligra Sheets, GNOME Gnumeric, IBM / Lotus 1-2-3, Corel Word Perfect Suite Quattro Pro, wikiCalc y SheetToGo de DocumentToGo. El subcomité sostiene que al incluir las innovaciones de todo el mundo de muchas aplicaciones independientes diferentes, producen un mejor resultado que es mucho más inclusivo.
  • Espacio para la innovación de cualquier persona . Los "espacios de nombres" específicos de la aplicación se definen para las funciones. Esto permite que las aplicaciones de hoja de cálculo agreguen nuevas funciones, sin interferir con las funciones estándar actuales, las funciones estándar futuras o las funciones definidas por otras aplicaciones. Como resultado, diferentes aplicaciones pueden agregar nuevas funciones sin interferir con otras; una vez que surge un consenso sobre la nueva función, se puede estandarizar. El espacio de nombres se basa en el servicio de nombres de Internet (nombres de dominio invertidos), por lo que ORG.OPENOFFICE.STYLE sería una función exclusiva de OpenOffice.org.
  • Internacionalización . La especificación no asume que todos usan "." como el punto decimal y, de hecho, no restringe las interfaces de usuario en absoluto. Las expresiones nombradas pueden tener nombres en conjuntos de caracteres locales.
  • Soporte de subconjunto. Las aplicaciones pueden implementar un subconjunto o superconjunto. Para evitar la confusión del usuario, se definen varios "grupos" para que los usuarios puedan solicitar conjuntos específicos de capacidades.

Grupos de OpenFormula

Un aspecto importante de OpenFormula es que proporciona un conjunto predefinido de "grupos"; los más importantes de estos grupos son pequeños, medianos y grandes:

  • El pequeño grupo incluye un poco más de 100 funciones, incluidas funciones para trigonometría, base de datos, finanzas y estadísticas. La gran mayoría de los documentos de hojas de cálculo se manejan hábilmente mediante aplicaciones que implementan el grupo "pequeño". Al menos una aplicación PDA (SheetToGo) tiene este nivel de capacidad, y wikiCalc agregó las funciones en el grupo pequeño específicamente para cumplir con el conjunto definido por OpenFormula.
  • El grupo mediano incluye todas las capacidades del grupo pequeño y agrega alrededor de 100 funciones más.
  • El grupo grande incluye todas las capacidades del grupo mediano, agregando alrededor de 130 funciones más, así como capacidades como números complejos.

Se espera que los usuarios soliciten a menudo implementaciones que se ajusten a un grupo en particular, en función de sus necesidades.

Referencias

  1. Wheeler, David A (1 de noviembre de 2004). "Propuesta: Especificación más detallada de fórmulas" . office-comment (lista de correo).
  2. Rathke, Eike (23 de junio de 2005). "OpenDocument para hojas de cálculo (respuesta a Morten Welinder)" . Archivado desde el original el 10 de septiembre de 2012.
  3. Jones, Brian (4 de octubre de 2005). "Comentarios de Tim Bray sobre OpenDocument" .
  4. Wheeler, David A (7 de noviembre de 2005). "FYI: fórmulas no especificadas por Microsoft XML, tampoco" . openformula-discus (lista de correo).
  5. ^ http://blogs.msdn.com/dmahugh/archive/2009/05/09/1-2-1.aspx
  6. Rathke, Eike (7 de junio de 2007). "¿Quién está a bordo?" . office-formula (lista de correo).
  7. ^ Acerca de OpenFormula

enlaces externos

  • Especificación de OpenFormula , publicada como OASIS OpenDocument v1.2, parte 2
  • Subcomité OASIS OpenDocument Formula , sitio web del subcomité que desarrolla la especificación
Obtenido de " https://en.wikipedia.org/w/index.php?title=OpenFormula&oldid=1000192235 "