XForms
サーバ側での実装とクライアントでのプラグイン実装のトレードオフは、どこでソフトウェアを保守するかにある。どちらにしても、クライアントに要求されたプラグインをインストールするか、サーバ側でXForms変換エンジンを実装する必要がある。理論的には両方の手法を混合することも可能であり、クライアント側にXForms機能が実装されているかを調べ、実装されていたらサーバ側はXFormsでコンテンツを送信し、そうでない場合はサーバ側で変換するということが考えられる。
FormFaces はサーバ側にもクライアント側にも新たなソフトウェアを加える必要がない。クライアント側には新たなプラグインをインストールする必要はないし、サーバ側はアーキテクチャを変更する必要がない。これは、FormFaces が完全に Ajax で書かれているためである。しかしこの場合、他の手法よりもクライアントに多くの JavaScript コードがダウンロードされ(クライアント側でキャッシュされる)、XML Schema の検証はまだサポートされていない。
どの XForms 実装でも、Web 2.0 API(Google Maps、Yahoo Traffic Alerts、Kiko Calendar、Skype Voice Service など)を組み込み可能である。
XForms は特に携帯機器で使われた場合に、以下のような利点がある。
HTML 4 のフォームよりも XForms を使ったユーザインタフェースの方がサーバとのやり取りが少なくて済む。
携帯機器の機能は様々である。その結果、各種機器向けに各種ユーザインタフェースを生成する必要があり、モバイル業界ではそれが重要となっている。XForms はフォームを機器の機能とは独立に記述できるよう設計されており、各種機器対応の作業を減らすことができる。
XForms は JavaScript を必要とする場面を削減でき、携帯機器では JavaScript の実装にばらつきがあって信頼できないことが多いため、一種の利点になりうる。また、セキュリティ上の懸念から JavaScript を実行不可としたシステムでも利用できる可能性がある。