Language used for web documents
Web IDLは、 ウェブブラウザに実装されることを目的とした API (アプリケーション・プログラミング・インターフェース)を記述するための インターフェース記述言語 (IDL)形式 です。ECMAScriptなどの言語がこれらのインターフェースをどのようにバインドすべきかを指定することにより、ウェブプログラミング ・ インターフェースの相互運用性を向上させたいという要望から採用 されました。 [1]
説明
Web IDLは、以下の機能を備えた IDLの バリエーションです。 [2]
ウェブ仕様は1998年からOMG IDLを使用して規定されており、最初はDOMレベル1仕様でした。 [3] しかし、OMG IDLを使用して定義されたインターフェースはJavaScriptの動作を正確に指定することができず、相互運用性に問題がありました。 [3] [1] WebIDLは、JavaScriptで意図された動作をより明確にするデータ型とバインディング仕様を提供することで、この現状を改善しました。
Web IDL仕様の現状
Web IDL仕様の初版は、 2012年4月19日に 勧告候補 となり、 2016年12月15日に W3C勧告となりました 。[4] 長年にわたり、第2版となる可能性のあるエディターズドラフトは、多くの新しいWeb仕様の参照先となっていました。2021年10月5日、W3CとWHATWG間の合意の更新により、エディターズドラフトはWeb IDL Living StandardとしてWHATWGに移管されました。
使用法
W3C WikiにはWeb IDLを使用するW3C仕様のリストがあり、 [5] ほぼすべての WHATWG 仕様でWeb IDLが使用されています。 [6]
Chromium プロジェクトには、WebIDLを使用して Blink のインターフェースを指定する方法に関するページがあります 。 [7]
Mozillaはソフトウェア開発プロセスでWeb IDLを使用し、実装をWeb IDL仕様にマッピングしています。 [8]
WebKit がビルドされると 、IDLファイルが解析され、インターフェースを実装にバインドするためのコードが作成されます。 [9]
ESオペレーティングシステム では 、すべてのシステムAPIはWeb IDLで定義されており、JavaScriptから直接呼び出すことができます。 [10]
参考文献
^ ab Han, Xu (2008年9月7日). 「Web IDL: DOM仕様のW3C言語バインディングが新しい名前を取得」. InfoQ .
^ 「Web IDL(第2版)」. World Wide Web Consortium. 2016年1月18日. 2016年 1月24日 閲覧 。
^ ab McCormack, Cameron (2013年1月29日). 「Web IDL: Web APIの定義とJavaScriptバインディングの実装」.
^ 「Web IDL 標準」。
^ "Web IDL". W3C Wiki . 2017年 3月28日 閲覧 。
^ 「Web Hypertext Application Technology Working Group 仕様」. WHATWG . 2016年 1月24日 閲覧 。
^ 「BlinkのWeb IDL」 Blinkプロジェクトドキュメント. 2013年 6月9日 閲覧 。
^ 「Web IDLバインディング」。Firefox ソースドキュメント。 2023年 8月3日 閲覧 。
^ "WebKit Web IDL". trac.webkit.org . 2013年 6月9日 閲覧 。
^ “ESオペレーティングシステム”. 2022年3月28日時点のオリジナルよりアーカイブ。
外部リンク
Web IDL を使用する標準の一覧
Web IDL構文チェッカー