[1] [[任意選択]]の機能を採用するかどうかや外部情報によって決定する[[引数]]の値をどう設定するかによって確定するように作られた[[仕様]]において、 採用する機能や[[引数]]について規定したものを、[DFN[[RUBYB[プロファイル]@en[profile]]]]と呼びます。 * 呼称 [2] 「[[profile]]」という語は、[[日本語]]では「[[プロファイル]]」と「[[プロフィール]]」の2つの表記がありますが、 本項の用法では大抵「[[プロファイル]]」と表記されます。 * 例 [3] [[WebCGM]] は、 [[CGM]] の[[プロファイル]]です。 [4] [[日本語EUC]]は、[[ISO/IEC 2022]] の[[プロファイル]]である [[EUC]] の[[プロファイル]]です。 ;; [5] このように、[[プロファイル]]仕様においてもなお自由度が残されていて、 更にその[[プロファイル]]が存在することがあります。 [6] [[Nameprep]] は [[Stringprep]] の[[プロファイル]]です。 [7] [[XML]] は [[SGML]] の[[プロファイル]]として理解されることがあります。 ;; [8] 実際には [[XML]] に適合するために [[SGML]] に適合することは必要なく、 しかも両者の[[処理モデル]]は必ずしも一致していないので、これを[[プロファイル]]と呼ぶのが適切かは議論の余地があります。 [11] [[W3C-DTF]] は [[ISO 8601]] の[[プロファイル]]で、 [[ISO 8601]] の制約を限定したいくつかの[[日時]]の表記を定義しています。 [[RFC 3339]] と [CODE(XML)@en[[[xs:dateTime]]]] も別の [[ISO 8601]] の[[プロファイル]]です。 これら3つはほとんど同じで、すべての[[プロファイル]]に適合することも可能ですが、 1つまたは2つにしか適合しないこともあります。 * メモ [9] [[ISO/IEC 2022]] や [[SGML]] のように利害関係者が多い仕様は、 様々な機能を盛り込み、そのうちのどの機能を採用するかは[[応用]]や[[実装]]に任せていたりします。 そうなると、「○○に対応」と言ったところで実装している[[プロファイル]]が異なっていて、 [[相互運用性]]が無かったりもします。 ひどい場合には、矛盾した機能がオプションとして用意されており、 どちらを採用した[[プロファイル]]かによってまったく互換性が無かったりもします。 [10] [CITE@en[XML processor profiles]] ( ([TIME[2014-02-06 08:45:58 +09:00]] 版))