Open Source y XBRL
From XBRLWiki
(diff) ←Older revision | Current revision | Newer revision→ (diff)
== Enlaces a Código Abierto para XBRL - con Autor/Coordinator y última actualización
- ABRA: Procesador XBRL - ABZ Reporting GmbH
- Batavia XBRL™ Java Library - Completo LICENCIA TEMPORAL PARA EVALUATION - Batavia 2008-10-24
- Batavia XBRL™ Java Library - Ejemplo de Componente Mapping - Batavia 2007-10-05
- Auditoría Contínua con XBRL - Professor Zane Swanson 2006
- Macro Excel para crear informes COREP - Fernando Wagener 2006-10-03
- Gepsio: Modelo de Documentos Objeto en .NET - Jeffrey Ferguson 2009-01-03
- INTECO API XBRL PGC2007 - INTECO 2009-02-10 (basado en UBMatrix, documentación en español)
- INTECO API XBRL LENLOC PENLOC - INTECO 2009-12-01 (basado en UBMatrix, documentación en español)
- Ejemplos de Reporting Standard S.L. LICENCIA TEMPORAL PARA EVALUATION - Ignacio Hernández-Ros 2008-12-21
- Rivet Software Dragon View. Visor XBRL - Rivet Software 2008-07-02
- Rivet Software Dragon Tag. XBRL generador desde Word y Excel - Rivet Software 2008-07-02
- SEC-USA Visores de Datos Interactivos - Rivet Software 2008-10-15
- Repositorio SourceForge de Código Abierto XBRL - Varios Autores de XBRL
- Máquina procesadora XBRL de UBmatrix - UBmatrix 2007-01-04
- XBRL Addon para Firefox - HL 2010-11-11
- XBRL API - Geoff Shuetrim 2009-01-06
- Compositor XBRL - Geoff Shuetrim 2004-04-02 (Actualmente obsoleto. Mejor usar su API XBRL)
- Generador de Taxonomías XBRL - Massimo Coletti 2005-06-06
Estudio realizado por CENATIC sobre la situación actual de herramientas XBRL en fuente abierta (Abril 2008)
Actualmente, no existe un formato normalizado por el que las empresas emitan su información contable, ni un software abierto que facilite su utilización de forma sencilla y directa. Por tanto, XBRL -lenguaje abierto, estándar y libre de royalties-, es un formato electrónico a estudiar para su aplicación en las TIC, dentro del objetivo de CENATIC de propiciar el establecimiento de estándares comunes en el uso de las tecnologías abiertas para simplificar su uso y optimizar recursos.
En este contexto, el objetivo del presente estudio es analizar la viabilidad de la promoción de software XBRL en fuente abierta que pueda ser integrado de una manera eficaz en las herramientas de reporting empleadas por las Entidades Locales, amparada en la posible creación de una comunidad de desarrolladores de XBRL, agrupando a usuarios, reguladores y proveedores de tecnología, con el objetivo de desarrollar componentes que proporcionen las funcionalidades XBRL requeridas.
Más información disponible en la web del Observatorio Nacional del Software de Fuentes Abiertas:
API de XBRL
XBRL proporciona una definición y una implementación JAVA de una fuente abierta XBRL API. Formalmente proporciona hosting para los proyectos XBRL API. XBRL API esta soportado por Galexy Pty. Limitada. Alternativamente un numeroso incremento de otras iniciativas están siendo listadas en XBRL OPEN.ORG
Más información disponible en :
REQUERIMIENTOS PARA LA IMPLEMENTACION DE XBRL API
REQUERIMIENTOS PARA LA REPRESENTACION DE DATOS
Estos requerimientos impactan directamente en las opciones de representación de datos para la implementación de la API XBRL
- Debe ser posible usar múltiples datos para la representación de información XBRL DTS sin necesidad de alterar el código de la implementación del API XBRL. En vez de esto, la API XBRL debe ser implementada en términos de operaciones de series para obtener los datos subyacentes a este. Esta capa de abstracción significa que cada representación de los datos puede apuntar a la implementación de la API XBRL y solo necesita proporcionar una implementación de las funciones definidas en la capa de abstracción.
- Los datos XBRL subyacentes a la implementación de la API XBRL debe contener un "superSet" de información en los documentos originales especificados en XML. Estos documentos deben contener suficiente información para reconstruir exactamente el documento original de XML, manteniendo todos los elementos de su estructura como comentarios XML, instrucciones de procesos, espacios, etc.
MANIPULANDO LOS ESTANDARES XML
- El proceso de XLINK en los documentos originales de XML, se debe hacer por un procesador de XLINK que sea separado del resto del código base. Esto es pensado para simplificar el intercambio de las referencias de XLINK implementadas como parte de XBRLAPI con otros comerciales y no comerciales procesos de XLINK, tal como el que está lanzado por Fujitsu.
- La especificación de XML Base será ejecutada por un genérico solucionador de XML Base que cumple conformemente con la especificación de XBRL Base.
- La especificación de XPointer será ejecutada por un genérico solucionador de XPointer que cumple conformemente con la especificación del XPointer Framework 1.0, xmlns y elementos de esquemas que están especificados en las recomendaciones de la W3C.
- La especificación de XPointer usando elementos del esquema permitirán el reconocimiento de algún identificador de un atributo o elementos que fueron identificados explícitamente por el solucionador de XPointer o que fueron identificados como parte de un tipo de identificador de una declaración DTD o de un esquema XML.
DESCUBRIENDO DATOS
- El proceso de descubrir datos no debe ser un proceso de memoria intensivo.
- El programa de análisis (PARSER) DEBE ser un namespace conocido.
- El programa de análisis (PARSER) permite a los DTD y esquemas XML la validación durante el proceso y debe exponer el resultado PSVI de la validación del esquema XML.
- El programa de análisis debe permitir el uso de un validador léxico que permita asegurar la preservación del contenido léxico del contenido XML.
- El programa de análisis debe permitir uso de un validador de declaraciones que permitan la detección de DTD declaradas identificando tipos de atributos (para soportar la especificación de XPointer).
- El proceso de descubrir datos debe permitir a todos los documentos XML ser escritos en un cache local, haciendo estos disponibles sin importar los cambios en la topología de la red.
- El mecanismo de cache debe usar el sistema de archivos local para almacenar los documentos que se encuentran en el cache, de tal forma que permita al intuitivo humano realizar exploraciones con propósitos de usar la implementación de la API XBRL.
- El cache de los documentos XML originales debe ser separado completamente de los procesos de descomponer los documentos en meta datos para el almacenamiento de la base de datos XML.
VALIDACION
- Los documentos cargados dentro la base de datos de XBRLAPI deben ser validados contra los esquemas XML y las reglas de validación de los DTS.
- Debe ser posible exponer los datos de la base de datos de XBRLAPI a una herramienta de validación, que permita a las funciones la validación del software a ser utilizado.
Procesador XBRL de ABRA
ABRA es un software de carga gratis y de fuente abierta diseñado para el procesamiento de documentos XBRL. ABRA en sus últimas versiones incluirá una interfaz de usuario gráfica en la distribución software, esto permite el proceso de las hojas de estilo de ABRA en documentos arbitrarios de XBRL.
Más información:
Standard Advantage (SA) - Ejemplos de XBRL
A continuación se encuentran ejemplos XBRL de esquemas 2.1 para etiquetas hojas de estilo XSL 1.0 para la representación de casos XBRL que usen "la etiqueta h", Herramientas disponibles comerciales para diferentes casos. Algunos ejemplos específicos que se pueden encontrar son:
NOTA: El link principal de la lista de ejemplos XBRL es: Ejemplos XBRL
Esquema de XBRL 2.1
Este esquema de XBRL 2.1 es para las etiquetas para un formato simple de contenido de texto
Más información:
Hojas de Estilo XSL 1.0
Son para la representación simple de cualquier caso de XBRL que use "h etiqueta"
Más información:
XBRL Composer
XBRL composer es una librería en Java que facilita la compilación eficiente de un DTS (Discoverable taxonomy Set) definido en la especificación XBRL 2.1. Esos objetos pueden ser serializados como documentos XML y guardados en archivos. Tales archivos pueden también ser cargados directamente como un objeto DTS de Java. Este proyecto ha generado otro proyecto open source, XBRL API, que va más allá de la compilación de un XBRL DTS para definir e implementar una detallada API XBRL en Java.
XBRL API
XBRLAPI provee una implementación opensource en Java de una API XBRL. La versión 3.0 ha sido liberada en Julio 30 de 2007. Esta versión provee un alto nivel de funcionalidad en relación a redes de relaciones XLink.
XLink
El XML Linking Language o XLink, es un lenguaje XML usado para crear hipervínculos en documentos XML. XLink es una especificación W3C que define métodos para describir enlaces entre recursos en documentos XML, sean internos o externos al documento original.
XBRL Taxonomy Generator
Conjunto de herramientas que permiten a los usuarios no especialistas construir taxonomías para XBRL 2.1 (Extended Business Reporting Language), comenzando de reportes en formato electrónico.
La solución de TaxoGen
- Proveer al usuario una herramienta que permita el cortar y pegar descripciones de documentos existentes como hojas de cálculo, pdf, etc, y codificar la estructura deseada en términos de secciones y tablas, sin tener que codificar cada elemento resultante. Esta herramienta debe tener cuidado de la generación del nombre del elemento y del Id con respecto a los estándares existentes y las mejores prácticas.
- Diseñar una estructura compacta que represente todos los elementos requeridos para generar la taxonomía deseada. Esta estructura es un documento XML, codificado de acuerdo con un esquema XML. Este documento (la fuente de la taxonomía “Taxonomy Source”) puede ser generado comenzando desde la herramienta de entrada de datos, o codificado manualmente, o por otros medios, pero resultará mucho más pequeño que el resultante DTS.
En esta forma el usuario no necesita conocer bien las especificaciones XBRL, puede reutilizar material y esquemas de reportes existentes, puede fácilmente mantener la taxonomía generada, regenerándolo desde la fuente enmendada.
Continuous Auditing with XBRL
Emporia State University ha patrocinado varios proyectos XBRL por años. El propósito de este proyecto es utilizar XBRL en el concepto de auditoria continua. Este proyecto parece ser el mejor establecido para ser usado por un auditor interno. Sin embargo, este podría ser adaptado para uso de auditores externos.
El programa permitirá a un auditor a:
- Importar transacciones XBRL en el programa.
- Probar todas las transacciones basadas en reglas personalizadas.
- Rastrear los resultados detallados para investigación adicional.
Este programa es importante porque este:
- Racionaliza el proceso de emparejamiento de cuentas
- Puede acomodar cualquier clase de compañía
- Ayuda a capturar equivocaciones o errores tempranos, bastante después, al final del año.
Gepsio: XBRL Document Object Model for .NET
Gepsio es un Modelo en Objetos para la representación de Documentos XBRL en tecnología .NET. Permite cargar documentos XBRL con la clase XbrlDocument y trabajar con el documento XBRL como un conjunto de clases .NET contando para ello de una gran variedad de propiedades y métodos. Los documentos XBRL son validados automáticamente contra la actual especificación XBRL, mostrando las debidas excepciones cuando el documento no es válido. El código de Gepsio ha sido probado contra la conformance test suite XBRL-CONF-CR3-2007-03-05 diseñada por XBRL Internacional.
INTECO API XBRL PGC2007. API para el tratamiento de informes XBRL bajo PGC2007
INTECO ha liberado el desarrollo de un módulo software (API XBRL PGC2007) para el tratamiento de informes XBRL bajo PGC2007 (nuevo Plan General Contable). Se trata de una iniciativa conjunta entre Red.es, la Asociación XBRL España e INTECO.
Este API XBRL para la taxonomía PGC2007 es un gran avance en el ámbito del estándar de reporte financiero XBRL ya que permite incluir servicios para tratamiento de informes XBRL en las aplicaciones de contabilidad de forma simple y fiable.
La integración del API supondrá la eliminación del uso de papel en los envíos de la información financiera correspondiente al Plan General Contable 2007, consiguiendo con ello rapidez en el procesamiento de la información financiera, fiabilidad de los datos, homogeneidad, facilidad en el tratamiento de la información, reducción de tiempos y costes.
Los principales emisores y receptores de esta información en España ya están adecuando sus aplicaciones a este API para poder utilizar el estándar XBRL en los intercambios de información financiera.
Los servicios que se ofrecen con el API XBRL PGC2007 son los siguientes:
- Servicio de transformación desde un formato común a formato XBRL.
- Servicio de transformación desde XBRL al formato común.
- Servicio de validación de instancias.
- Servicio de visualización de informes XBRL de cuentas anuales de PGC2007.
Además de estos servicios que se proporcionan con licencia de código libre (LGPL) se ofrece un soporte técnico y funcional para ayudar a la integración y uso del API al que se puede acceder a través de la siguiente cuenta de correo electrónico: soporteXBRL@inteco.es
Tanto el API XBRL PGC2007 como la documentación asociada ya están disponibles para su descarga en: Descarga API XBRL PGC2007
Integración del API
El API ofrece tres modos posibles de despliegue:
- Como librería
- Como librería autoconfigurable
- Como servicio web
Para más información, consultar el manual de usuario del API XBRL-PGC07 y los ejemplos de uso del API.
Formato común de entrada y salida a los servicios
Para el intercambio de información entre las herramientas de gestión de terceros y las librerías desarrolladas se define un formato que de alguna forma simplifique los datos que representan un informe financiero, pero que contenga información suficiente para elaborar un informe XBRL que permita su validación y consumo por herramientas estándar.
Para saber cómo se deben componer los documentos XML de entrada/salida se utilizará un XSD que define el formato común. Éste permitirá generar documentos XML con los datos de los informes en formato común para posteriormente ser transformados a XBRL y al mismo tiempo poder realizar validaciones a través del servicio de validación.
Para más información acerca del formato común de E/S consultar el manual de usuario del API.
Servicios disponibles
A continuación se describen brevemente los servicios que ofrece el API. Para una información más detallada consultar la documentación disponible en la web de INTECO.
Servicio de transformación a XBRL. Este servicio se encarga de realizar la transformación de un documento que entra al sistema en formato común y de elaborar un informe XBRL valido.
Existen dos escenarios diferentes de ejecución del servicio
- USO1, se indica como entrada la ruta física en la cual se almacenará el documento XBRL resultado de la transformación. Dicha ruta física será accesible dentro del entorno de ejecución del sistema; en caso contrario deberá indicarse un error.
- USO2, el servicio de transformación devolverá un objeto (por ejemplo DOM) con el documento respuesta.
Servicio de transformación a formato común (XML). Este servicio se encarga de realizar la transformación de un informe XBRL, acorde con la taxonomía PGC2007, en un documento con el mismo formato común definido para la entrada al sistema.
Existen también dos escenarios posibles de ejecución del servicio
- USO1, se indica como entrada la ruta física en la cual se almacenará el documento en formato común resultado de la transformación. Dicha ruta física será accesible dentro del entorno de ejecución del sistema, en caso contrario deberá indicarse un error.
- USO2, el servicio de transformación devolverá un objeto con el documento respuesta.
Servicio de validación de informes. Este servicio se encarga de realizar una validación de la sintaxis de los informes XBRL frente a la especificación XBRL 2.1 y de las reglas semánticas definidas por la taxonomía del Plan General de Contabilidad PGC2007, reglas de cálculo simple entre los elementos reportados, valores de los elementos en su tipo de datos y rango definido, elementos permitidos dentro de los cuadros normalizados.
Servicio de visualización de informes. El servicio de visualización consiste en la generación de una vista HTML de los estados de cuentas a partir de una instancia XBRL de PGC2007. Dado un módulo (Normal, Abreviado o Pymes) y un rol (Balance, Pérdidas y Ganancias, etc.), producirá un documento HTML que facilite la consulta visual de los datos.
Resultados
El proyecto “API XBRL PGC07” ha cubierto los objetivos parciales planteados y como resultado ha creado una solución software, que ha sido integrada en un número elevado de herramientas (más de medio centenar).
Actualmente, estas herramientas son utilizadas para el envío de la información contable de un número muy alto de empresas (en su mayoría PYME). De esta forma, se ha contribuido al objetivo global planteado por INTECO de convertir al estándar XBRL en el estándar de facto para la transmisión de información económico-financiera en los sectores público y privado nacionales, atacando uno de los principales flujos de este tipo de información.
Por otra parte, se trata de la primera iniciativa de desarrollo de utilidades de fuentes abiertas llevada a cabo por un Organismo Público en el entorno del estándar XBRL. El proyecto ha servido como base para el desarrollo de utilidades de similares características, en las que se hace uso de los mismos servicios (transformador, validador y visor) sobre flujos de información de diferente naturaleza (transmisión de información entre Entidades Locales y Direcciones Generales del Ministerio de Hacienda).
INTECO API LENLOC PENLOC. API para el tratamiento de informes XBRL bajo LENLOC2010 y PENLOC2010
INTECO ha liberado el desarrollo de un módulo software (API XBRL LENLOC PENLOC) para el tratamiento de informes XBRL bajo LENLOC2010 v2 (captura de la liquidación de los presupuestos de las Entidades Locales) y PENLOC2010 v2 (captura de los presupuestos de las Entidades Locales).
El proyecto se enmarca dentro de las iniciativas XBRL (eXtensible Business Reporting Language) llevadas a cabo por INTECO y cuyo objetivo común es facilitar utilidades que garanticen la estandarización de la información económico-financiera y de negocio en el ámbito de los sectores público y privado nacionales.
Una primera iniciativa consistió en el desarrollo de una solución software, de similares características, para el reporte de la información recogida en el nuevo Plan General Contable (API XBRL PGC2007). Medio centenar de empresas han integrado esta solución, entre ellas, empresas líderes en el desarrollo de soluciones de gestión empresarial.
En este caso, la solución (API XBRL LENLOC PENLOC) abarca otro flujo de información prioritario, consistente en la transmisión de información presupuestaria (presupuestos y liquidaciones presupuestarias) de las Entidades Locales españolas a la Administración Central (Ministerio de Economía y Hacienda).
Al igual que se realizó con el API XBRL PGC2007, esta solución ha sido integrada y probada en las herramientas de uno de los principales proveedores de software empresarial.
Este API XBRL, que utiliza como base las taxonomías PENLOC2010 v2, de captura de los presupuestos de las Entidades Locales, y LENLOC2010 v2, de captura de la liquidación de los presupuestos de las Entidades Locales, ambas desarrolladas por la DGCFCAEL del Ministerio de Economía y Hacienda, ofrece los siguientes servicios:
- Servicio de transformación desde un formato común a formato XBRL.
- Servicio de transformación desde XBRL al formato común.
- Servicio de validación de instancias.
- Servicio de visualización de informes XBRL.
Los principales emisores y receptores de esta información en España ya están adecuando sus aplicaciones a este API para poder utilizar el estándar XBRL en los intercambios de información financiera.
Con la integración de esta solución en las herramientas de gestión empresarial, se conseguirá rapidez en el procesamiento de la información presupuestaria, fiabilidad de los datos, homogeneidad, facilidad en el tratamiento de la información y reducción de tiempos y costes.
Además de estos servicios que se proporcionan con licencia de código libre (LGPL) se ofrece un soporte técnico y funcional para ayudar a la integración y uso del API al que se puede acceder a través de la siguiente cuenta de correo electrónico: soporteXBRL@inteco.es
Tanto el API XBRL LENLOC PENLOC como la documentación asociada ya están disponibles para su descarga en: Descarga API XBRL LENLOC PENLOC
Integración del API
El API ofrece tres modos posibles de despliegue:
- Como librería
- Como librería autoconfigurable
- Como servicio web
Para más información, consultar el manual de usuario del API XBRL LENLOC PENLOC y los ejemplos de uso del API.
Formato común de entrada y salida a los servicios
Para el intercambio de información entre las herramientas de gestión de terceros y las librerías desarrolladas se define un formato que de alguna forma simplifique los datos que representan un informe financiero, pero que contenga información suficiente para elaborar un informe XBRL que permita su validación y consumo por herramientas estándar.
Para saber cómo se deben componer los documentos XML de entrada/salida se utilizará un XSD que define el formato común. Éste permitirá generar documentos XML con los datos de los informes en formato común para posteriormente ser transformados a XBRL y al mismo tiempo poder realizar validaciones a través del servicio de validación.
Para más información acerca del formato común de E/S consultar el manual de usuario del API.
Servicios disponibles
A continuación se describen brevemente los servicios que ofrece el API. Para una información más detallada consultar la documentación disponible en la web de INTECO.
Servicio de transformación a XBRL. Este servicio se encarga de realizar la transformación de un documento que entra al sistema en formato común y de elaborar un informe XBRL valido.
Servicio de transformación a formato común (XML). Este servicio se encarga de realizar la transformación de un informe XBRL, acorde con la taxonomía PENLOC2010 (informe de presupuestos) o LENLOC2010 (informe de liquidación presupuestaria), en un documento con el mismo formato común definido para la entrada al sistema.
Servicio de validación de informes. Este servicio se encarga de realizar una validación de la sintaxis de los informes XBRL frente a la especificación XBRL 2.1 y de las reglas semánticas definidas por las taxonomías PENLOC2010 (informes de presupuestos) o LENLOC2010 (informes de liquidaciones presupuestarias), reglas de cálculo simple entre los elementos reportados, valores de los elementos en su tipo de datos y rango definido, elementos permitidos dentro de los cuadros normalizados.
Servicio de visualización de informes. El servicio de visualización consiste en la generación de una vista HTML a partir de una instancia XBRL de PENLOC2010 (informes de presupuestos) o LENLOC2010 (informes de liquidaciones presupuestarias).