実装されている仕様
単純なデータストレージとしては Web Storage が localStorage
と sessionStorage
の二つの基本的な機能を提供しており、それぞれデータを無期限もしくはブラウザセッション間において保存可能です。
Indexed Database API (IndexedDB) は JavaCsript で自然に利用可能な値・構造的オブジェクトのためのデータベースを規定し、効率的に照会・更新できます。現在は 仕様の第3版が開発中です。
データを暗号化する必要がある場面がありますが、Web Cryptography API によりウェブアプリケーションは強力な暗号化機能が利用可能になり、また WebCrypto Key Discovery API を利用することで事前配布鍵と紐づけることが可能になります。
HTML5 download
属性 は、ユーザに分かりやすいファイル名を付ける機能を持った (ページナビゲーションでなく) ファイルダウンロードを開始する簡単な機構を提供します。
仕様化が進行中の仕様
File API はファイルシステムとのより高度な統合のためにファイルの内容を読みこむ機能を提供します。しかしながら、サンドボックス化されたファイルシステムにファイルを書き込むための sandboxed filesystem API 仕様についての議論は興味を集められなかったため停止されました。
調査中の項目
オフライン動作のためのようにブラウザにより保存されるデータが大きくなるにつれ、開発者が必要とするストレージ領域を確保可能かどうかが重要になってきました。提案されている Storage 仕様はウェブアプリケーションがストレージ領域の制約を取得するとともに、アプリケーションが保存したデータを永続的に扱いユーザの明示的な指示がない限り削除されないようにする機能を提供します。
中止された項目
- 割当管理 (Quota management) API
- Quota Management API はウェブプラットフォーム WG によりローカルのストレージ容量の利用量・利用可能量管理の API のために議論されていましたが、新しい Storage 提案により中断しました。
- クライアントでの SQL 型データベース (Client-side SQL-based database
- client-side SQL-based database の開発は 2009 年に開始しましたが、IndexedDB の開発に伴い放棄されました。
- アドレス帳データ (Address book data)
- コミュニケーション用アプリケーションではユーザの既存のデータと連携することは有益で、モバイルデバイスではアドレス帳はその情報として特に有用です。ブラウザ外のウェブアプリケーション向けには System Applications Working Group にて純粋な技術的検討が行われていましたが、WG は閉鎖され Contacts Manager API についての作業は予定されていません。HTML ではウェブブラウザがアドレス帳のデータを再利用可能になるコンタクト情報に関する自動補完フィールドを提供しています。