Franca IDL

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Franca
Stable release
0.13.0 / 13 April 2018; 19 months ago (2018-04-13)
Repository Edit this at Wikidata
Written inJava
TypeInterface description language framework
LicenseEclipse Public License 1.0
Websitegithub.com/franca/franca/

Franca Interface Definition Language (Franca IDL) is a formally defined, text-based interface description language. It is part of the Franca framework, which is a framework for definition and transformation of software interfaces. Franca applies model transformation techniques to interoperate with various interface description languages (e.g., D-Bus Introspection language, Apache Thrift IDL, Fibex Services).

Franca is a powerful framework for definition and transformation of software interfaces. It is used for integrating software components from different suppliers, which are built based on various runtime frameworks, platforms and IPC mechanisms. The core of it is Franca IDL(Interface Definition Language), which is a textual language for specification of APIs.

History[edit]

The initial version of Franca was developed by the GENIVI consortium in 2011 being a common interface description language used for the standardization of an In-Vehicle Infotainment (IVI) platform. The first public version of Franca was released in March 2012 under the Eclipse Public License, version 1.0. In 2013, Franca has been proposed as an official Eclipse foundation project.[1] Franca is mainly developed by the German company Itemis.[2]

Features[edit]

Franca IDL provides a range of features for the specification of software interfaces:

  • declaration of interface elements: attributes, methods, broadcasts
  • major/minor versioning scheme
  • specification of the dynamic behaviour of interfaces based on finite-state machines (Protocol State Machines, short: PSM)
  • storage of meta-information (e.g., author, description, links) using structured comments
  • user-defined data types (i.e., array, enumeration, structure, union, map, type alias)
  • inheritance for interfaces, enumerations and structures

Architecture[edit]

In addition to the text-based IDL for the specification of interfaces, Franca provides an HTML documentation generator.

Franca is implemented based on the Eclipse (software) tool platform. For the definition of the actual Franca IDL, the Xtext framework is used. For the user of Franca, this offers a list of benefits for the activity of reviewing and specifying software interfaces.

See also[edit]

References[edit]

External links[edit]

Resources[edit]

  • Klaus Birken. "Franca – Defining and Transforming Interfaces". Retrieved 2018-02-12.