Web IDL

Web IDL is an interface description language (IDL) format for describing application programming interfaces (APIs) that are intended to be implemented in web browsers.

Description

Web IDL is an IDL variant with:[1]

  • A number of features that allow one to more easily describe the behavior of common script objects in a web context.
  • A mapping of how interfaces described with Web IDL correspond to language constructs within an ECMAScript execution environment.

Status of this specification

The first edition of the Web IDL specification became a Candidate Recommendation on 19 April 2012 and a W3C Recommendation on 15 December 2016[2]. The second edition of Web IDL is an Editor's Draft, and most new web specifications reference this second edition.

Usage

  • The W3C Wiki has a list of W3C Specifications that use Web IDL,[3] and nearly all WHATWG specifications use it.[4]
  • The Chromium Project has a page about using WebIDL to specify interfaces in Blink.[5]
  • Mozilla uses Web IDL in their software creation process, mapping implementations to Web IDL specs.[6]
  • When WebKit is built, the IDL files are parsed, creates the code to bind interfaces to implementations.[7]
  • In the ES operating system, every system API is defined in Web IDL, and can be invoked from JavaScript directly.[8]

References

  1. "Web IDL (Second Edition)". World Wide Web Consortium. 18 January 2016. Retrieved 24 January 2016.
  2. https://www.w3.org/TR/WebIDL/
  3. "Web IDL". W3C Wiki. Retrieved 28 March 2017.
  4. "Web Hypertext Application Technology Working Group Specifications". WHATWG. Retrieved 24 January 2016.
  5. "Web IDL in Blink". Blink Project Documentation. Retrieved 9 June 2013.
  6. "Mozilla WebIDL bindings". Mozilla Developer Network. Retrieved 9 June 2013.
  7. "WebKit Web IDL". trac.webkit.org. Retrieved 9 June 2013.
  8. "The ES operating system".
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.