API Signature Task Force
What is a Standard API Signature?
An Application Programming Interface (API) enables software applications to connect to and interact with other technologies. An API signature describes the characteristics that an XBRL-based API should have—for example, the name of functions, their input types, and their output types—while leaving the choice of technology and the implementation details up to the software vendor or individual implementing the API.
How can I get involved?
It is recommended that a task force be assembled by bringing together individuals that span the XBRL spectrum.
Software Architects and Developers – to provide their experience at designing software from an interface perspective and the knowledge as to how commonly applied software design patterns can lead to clean and robust API design
XBRL Practitioners – to provide their experience with building XBRL applications to help define the set of interfaces which will be the most useful
Programme Manager – to provide the vision to the team by defining the tangible deliverables and expressing how those deliverables bring value to the XBRL community
Project Manager – to lead the team by defining the set of goals to be achieved, implementing a process to achieve those goals, and driving the efforts of the team to ensure the goals are met
What's the Goal?
The XSB proposes to standardise the APIs created for XBRL by providing blueprints for them in the form of API signatures. In the future, a well-adopted set of standard API signatures will provide more choice, consistency, and interoperability in the software and tools used for XBRL-based projects.
What are the benefits?
Standardising how XBRL interfaces with other technologies offers the following benefits:
- Providing software developers with a familiar point of entry into XBRL
- Serving as a useful learning tool for developers wishing to incorporate XBRL
- Encouraging open source implementations of the API signatures
- Enabling greater consistency across vendor tools and greater interoperability across vendor implementations of XBRL
What's the plan?
The XSB recommends developing publicly available standard XBRL interfaces that are interoperable across different vendor products, platforms, and programming languages.
The outcome of this initiative will be a set of API signatures, one for each of the following three technologies:
- Mainstream programming languages, such as Java and C#.
- Relational databases and possibly Common Warehouse Metamodel (CWM) repositories
- Web services via an appropriate scalable interface set, such as WSDL or REST
The XSB recommends the following activities to be performed in two phases:
Phase One – Form a Task Force to:
- Solicit and assess the APIs currently in use and in development by the XBRL, CWM, and ontology communities.
-
Survey how these approaches and architectures map to the proposed UML model for XBRL (see “Initiative 1 – Create an abstract model”) and the implementation requirements outlined below.
Phase Two – Form a Working Group to:
-
For each target technology (programming languages, databases, Web services)
- Define the API signature.
- Research the viability of providing test suites to assess the level of conformance of any given implementation of the API signature, and implement those test suites that offer a clear benefit.
- Develop overview, specification, and tutorial documentation for the API signature.
Individuals interested in participating in an API Signatures Task Force are encouraged to contact XSB@xbrl.org for more information.






