マイクロフォーマット(μF)[注1 ]は、要素に関する記述的で一貫性のあるメタデータとして機能するように作成された、定義済みのHTMLマークアップ( HTMLクラスなど)であり、要素が特定の種類のデータ(連絡先情報、地理座標、イベント、製品、レシピなど)を表すように指定します。[ 1 ]マイクロフォーマットは、設定されたクラスが任意のものではなく特定の種類のデータを参照するようにすることで、ソフトウェアが情報を確実に処理できるようにします。
マイクロフォーマットは2005年頃に登場し、主に検索エンジン、ウェブシンジケーション、RSSなどのアグリゲーターでの使用を目的として設計されました。[ 2 ] Googleは2020年に、コンテンツのインデックス作成にマイクロフォーマットを解析していることを確認しました。[ 3 ]マイクロフォーマットは、IndieAuth [ 4 ]やWebmention [ 5 ]など、いくつかのW3Cソーシャルウェブ仕様で参照されています。
ウェブの登場以来、ウェブページのコンテンツはある程度の「自動処理」が可能であったが、ウェブ上で情報を表示するために使用されるマークアップ要素は情報の意味を記述しないため、そのような処理は困難である。 [ 6 ]マイクロフォーマットは意味論を付加することでこのギャップを埋めることができ、それによって自然言語処理やスクリーン・スクレイピングなどのより複雑な自動処理方法を不要にする。マイクロフォーマットの使用、採用、処理により、データ項目をインデックス化、検索、保存、相互参照することが可能になり、情報の再利用や結合が可能になる。[ 6 ]
2013年現在マイクロフォーマットは、イベントの詳細、連絡先情報、社会的関係、および同様の情報のエンコードと抽出を可能にする。
2026年現在マイクロフォーマットは、ウェブページの構造化データ処理の一部として、最新のウェブブラウザや検索エンジンで引き続きサポートされています。しかし、構造化情報をより柔軟に表現できるJSON-LDやSchema.orgなどのより新しい標準規格が主流となり、その使用は減少しています。[ 7 ]
それにもかかわらず、マイクロフォーマットは旧来のシステムで依然として使用されており、HTMLコンテンツから意味情報を抽出するためのパーサーによって認識され続けている。また、様々なWeb仕様で参照され続け、HTMLドキュメントからの機械可読データ抽出に貢献している。
Microformats2(略称mf2)は、microformatsの更新版です。mf2は、 RDFaやマイクロデータを使用していた以前の方法よりも、 HTMLの構造化された構文と語彙を解釈する簡単な方法を提供します。[ 8 ]
マイクロフォーマットは、イベント、連絡先の詳細、地理的な場所などの認識可能なデータ項目をソフトウェアによる自動処理が可能にするとともに、エンドユーザーが直接読み取れるようにするための草の根運動の一環として、2005年頃に登場しました [注 2]。 [ 6 ] [注 3 ]最初に登場したのはリンクベースのマイクロフォーマットです。これには、リンク先のページに対する意見を表明する投票リンクが含まれており、検索エンジンはこれを集計して即座に投票を行うことができます。[ 9 ]
インターネット上で電子商取引を促進する非営利団体であるCommerceNetは、さまざまな方法でこの技術のスポンサーシップと促進、マイクロフォーマットコミュニティのサポートを行ってきました。 [ 9 ] CommerceNetはまた、Microformats.orgコミュニティサイトの共同設立にも貢献しました。[ 9 ]
CommerceNetもMicroformats.orgも標準化団体として活動しているわけではありません。マイクロフォーマットコミュニティは、オープンなWiki、メーリングリスト、インターネットリレーチャット(IRC)チャンネルを通じて機能しています。[ 9 ]既存のマイクロフォーマットのほとんどは、Webパブリッシングの動作例を集め、それをコード化するというプロセスを経て、Microformats.orgのWikiと関連するメーリングリストから生まれました。他のマイクロフォーマット(rel=nofollowやunAPIなど)は、他の場所で提案または開発されています。
XHTMLおよびHTML規格では、マークアップ要素の属性内にセマンティクスを埋め込んだりエンコードしたりすることが可能になっています。マイクロフォーマットは、以下の属性を使用してメタデータの存在を示すことで、これらの規格を活用しています。
classrel<a href=... rel=...>...</a>)rev例えば、「鳥たちは北緯52.48度、西経-1.89度でねぐらをとっていた」というテキストには、文脈から地理座標のセットと理解できる数値のペアが含まれています。これを特定のクラス名(この場合は、および、すべてgeoマイクロフォーマット仕様の一部)を持つs pan (またはその他のHTML要素)で囲むことで、次のように表現できます。geolatitudelongitude
鳥たちは北緯52.48度、西経-1.89度の地点で ねぐらを とっていた。ソフトウェアエージェントは、各値が何を表しているかを正確に認識し、インデックス作成、地図上での位置特定、 GPSデバイスへのエクスポートなど、さまざまなタスクを実行できます。
この例では、連絡先情報は次のように表示されます。
<ul> <li>ジョー・ドー</li> <li>サンプル・カンパニー</li> <li> 604-555-1234 </li> <li> <a href= "http://example.com/" > http://example.com/ </a></li> </ul>hCardマイクロフォーマットのマークアップを使用すると、次のようになります。
<ul class= "vcard" > <li class= "fn" >ジョー・ドー</li> <li class= "org" >ジ・エグザンプル・カンパニー</li> <li class= "tel" > 604-555-1234 </li> <li> <a class= "url" href= "http://example.com/" > http://example.com/ </a></li> </ul>ここでは、フォーマットされた名前(fn)、組織名(org)、電話番号(tel)、ウェブアドレス(url)が特定のクラス名を使用して識別され、全体がで囲まれていますclass="vcard"。これは、他のクラスがhCard(「HTML vCard」の略)を構成しており、単に偶然に同じ名前になっているわけではないことを示しています。その他のオプションのhCardクラスも存在します。ブラウザプラグインなどのソフトウェアは、この情報を抽出して、アドレス帳などの他のアプリケーションに転送することができます。
特定の種類の情報を意味的にマークアップできるようにするために、いくつかのマイクロフォーマットが開発されてきた。しかし、hCardとhCalendarのみが承認されており、その他はドラフト段階にとどまっている。
HTMLコード内でマイクロフォーマットを使用することで、アプリケーションが利用できる追加の書式設定情報や意味データが得られます。例えば、Webクローラーなどのアプリケーションはオンラインリソースに関するデータを収集でき、電子メールクライアントやスケジュール管理ソフトウェアなどのデスクトップアプリケーションは詳細情報を収集できます。マイクロフォーマットを使用することで、Webページ上のすべての地理的位置情報を(例えば)Googleマップにエクスポートして空間的に視覚化するなど、「マッシュアップ」も容易になります。
FirefoxのOperatorやInternet Explorerの Oomphなど、いくつかのブラウザ拡張機能は、HTML ドキュメント内のマイクロフォーマットを検出する機能を提供します。hCard や hCalendar が関係する場合、これらのブラウザ拡張機能を使用すると、マイクロフォーマットをMicrosoft Outlookなどの連絡先管理およびカレンダーユーティリティと互換性のある形式にエクスポートできます。地理座標を扱う場合、 Google マップなどのアプリケーションに場所を送信できます。Yahoo ! クエリ言語を使用して、Web ページからマイクロフォーマットを抽出できます。[ 17 ] 2009 年 5 月 12 日、Google は、hCard、hReview、hProduct のマイクロフォーマットを解析し、検索結果ページを生成するために使用すると発表しました。[ 18 ]その後、2010 年にこれを拡張し、イベントに hCalendar、料理のレシピに hRecipe を使用するようになりました。[ 19 ]同様に、マイクロフォーマットはBing [ 20 ]やYahoo!でも処理されます。[ 21 ] 2010年末時点で、これらは世界トップ3の検索エンジンです。[ 22 ]
マイクロソフトは2006年に、他のソフトウェア企業と同様に、今後のプロジェクトにマイクロフォーマットを組み込む必要があると述べた[ 23 ]。
アレックス・ファーボルグは、より複雑なHTMLを作成するのではなく、マイクロフォーマットのユーザーインターフェースの責任をウェブブラウザに置くことの議論を要約しています。[ 24 ]
様々な評論家がマイクロフォーマットの設計原理と実用面についてレビューや議論を行ってきた。マイクロフォーマットは、同じまたは類似の目的を追求する他のアプローチと比較されてきた。[ 25 ] 2007年現在マイクロフォーマットの1つ、あるいはすべてに対して批判があった。[ 25 ] 2007年時点では、マイクロフォーマットの普及と利用が提唱されていた。[ 26 ] [ 27 ] Opera SoftwareのCTOでありCSSの作成者であるHåkon Wium Lieは2005年に「マイクロフォーマットが多数開発されるだろうし、それがセマンティックウェブの構築方法だと私は信じている」と述べた。[ 28 ]しかし、2008年8月、「Swignition」(旧「Cognition」)マイクロフォーマット解析サービスの作者であるToby Inksterは、2005年以降、新しいマイクロフォーマット仕様は公開されていないと指摘した。[ 29 ]
コンピュータ科学者であり起業家でもあるロヒット・カーレ氏は、削減、再利用、リサイクルはマイクロフォーマットの開発と実践を促した「いくつかの設計原則の略語」であると述べています。 [ 9 ]: 71-72これらの側面は次のように要約できます。
一部のマイクロフォーマットは、HTML の要素の title 属性を使用して機械可読データ(特に日付時刻と地理座標) を「abbr デザイン パターン」で隠蔽しているため、要素のプレーン テキスト コンテンツは、略語を展開するスクリーン リーダーではアクセスできません。[ 30 ] 2008 年 6 月、BBC はアクセシビリティ上の懸念から、このデザイン パターンを使用するマイクロフォーマットの使用を中止すると発表しました。 [ 31 ]<abbr>abbr
マイクロフォーマットは、ウェブ上で「よりインテリジェントなデータ」を提供する唯一の解決策ではありません。代替アプローチが使用されており、開発中です。たとえば、XMLマークアップとセマンティックウェブの標準の使用が代替アプローチとして挙げられています。[ 9 ]これらのアプローチは、少なくとも同じ程度には、「削減、再利用、リサイクル」の設計原則と必ずしも一致しないという点で、マイクロフォーマットと対比されています。[ 9 ]
マイクロフォーマットの提唱者の一人であるタンテク・チェリクは、代替的なアプローチの問題点を次のように説明した。
ここに新しい言語を学んでほしいのですが、今度はこれらの追加ファイルをサーバーに出力する必要があります。面倒です。(マイクロフォーマット)は参入障壁を下げます。[ 6 ]
アプリケーションによっては、他のアプローチの使用が有効な場合もあります。記述するデータの種類が既存のマイクロフォーマットにマッピングされない場合、RDFa は任意の語彙を HTML に埋め込むことができます。たとえば、動物学や化学データなど、マイクロフォーマットが存在しないドメイン固有の科学データなどが該当します。W3C のGRDDLなどの標準規格により、マイクロフォーマットをセマンティック Web と互換性のあるデータに変換できます。[ 32 ]
マイクロフォーマットのもう一人の支持者であるライアン・キングは、マイクロフォーマットと他の方式との互換性について次のように述べている。
マイクロフォーマットは、多くの人がウェブにセマンティックデータを簡単に提供できる方法を提供します。GRDDL を使用すると、そのすべてのデータが RDF セマンティック Web ツールで利用可能になります。マイクロフォーマットと GRDDL は連携して、より良いウェブを構築できます。[ 32 ]
Microformats2は、2010年5月2日のFOOEastで提案され、議論されました。[ 33 ] Microformats2は、著者がマイクロフォーマットを公開しやすく、開発者がそれを利用しやすくすることを目的としており、後方互換性を維持しています。[ 34 ]
microformats2を使用すると、上記の例は次のようにマークアップされます。
鳥たちは北緯52.48度、 西経-1.89度の地点で ねぐらをとっていた。そして:
<ul class= "h-card vcard" > <li class= "p-name fn" >ジョー・ドー</li> <li class= "p-org org" >ジ・エグザンプル・カンパニー</li> <li class= "p-tel tel" > 604-555-1234 </li> <li> <a class= "u-url url" href= "http://example.com/" > http://example.com/ </a></li> </ul>マイクロフォーマットが必要であり、人々がそれらに合意する必要があります。これはWeb上でのデータ交換の基盤となるでしょう… …連絡先カード、イベント、道順などのために必要です…