Using microformats

警告: この記事の内容は古くなっている可能性があります。

microformats (マイクロフォーマット) は、Web サイトがブラウザにセマンティックデータを提供して、ページ上の情報の要約を表示できるようにする仕組みです。ページ作者は、ドキュメント自体をパースする方法を知っている必要はありません。Firefox 3 は、microformats へのアクセスを提供する Microformats グローバルオブジェクトを実装しています。このオブジェクトと関連する API を利用すれば、microformats を簡単に検出したり読み取ることができます。

microformats API の読み込み

Microformats オブジェクトは、Firefox 3 に追加された新しい JavaScript スクリプトローダーを使って作成します。API を利用するには、まず次のようにオブジェクトを読み込みます。

Components.utils.import("resource://gre/modules/Microformats.js");

microformats API を読み込んだら、ここに載っているメソッドを用いて microformats を管理できます。microformats のパースに関する情報は Parsing microformats in JavaScript をご覧ください。

定義済み microformats

Firefox 3 はいくつかの一般的な microformats を実装する定義を提供します。

adr
住所 (通りの名前や完全な住所) を表します。
geo
緯度と経度を用いて地理的な場所を表します。
hCard
人の連絡先情報を表します。
hCalendar
カレンダーの予約項目を表します。
tag
他の microformats にタグを追加するのに使われます。

メソッド

add()

microformat モジュールに新しい microformat を追加します。

註: 指定された名前の microformat が既に存在した場合は、新しいものに置き換えられます。

add(name, definition);
引数
name
microformat モジュールに追加する microformat の名前
definition
microformat を説明した JavaScript 構造。詳しくは Describing microformats in JavaScript をご覧ください。

count()

指定された条件に一致する、ドキュメント上の microformat の合計数。

numMicroformats = Microformats.count(name, rootElement, options);
引数
name
数える microformat の名前。
rootElement
必須。検索を開始する DOM 要素。ドキュメント全体を対象としたい場合は content.document を指定します。
<tt>options</tt>
オプション。設定する場合、これは、以下のフラグをゼロまたはそれ以上含む JavaScript オブジェクトとします。
recurseExternalFrames
true の場合、外部コンテンツを参照している子フレームも検索します。デフォルトは true です。
showHidden
true の場合、隠し microformat が追加されます。false の場合は無視されます。デフォルトは false です。
debug
デバッグモードを使用するときは true を指定します。使用しないときは false を指定します。デフォルトは false です。
戻り値

指定された条件に一致する microformat の数を示す整数値。

debug()

microformat オブジェクトを説明した文字列を返します。

註: microformat オブジェクト上で debug() を単純に呼び出すことができます。好みに応じて、このメソッドの代わりに、microformatObject.debug() を使うこともできます。

dumpString = debug(microformatObject)
引数
microformatObject
dump する microformat オブジェクト。
戻り値

指定された microformat オブジェクトの内容を説明した文字列。

get()

指定された条件に一致する microformat の検索結果に相当する、microformat オブジェクトの配列を返します。

microformatsArray = Microformats.get(name, rootElement, options, targetArray);
引数
name
検索する microformat の名前。
rootElement
必須。検索を開始する DOM 要素。ドキュメント全体を対象としたい場合は content.document を指定します。
options
オプション。指定する場合、これは、以下のフラグをゼロまたはそれ以上含む JavaScript オブジェクトとします:
recurseFrames
true の場合、子フレームも検索します。デフォルトは true です。
showHidden
true の場合、隠し microformat が追加されます。false の場合は無視されます。デフォルトは false です。
debug
デバッグモードを使用するときは true を指定します。使用しないときは false を指定します。デフォルトは false です。
targetArray
オプション。指定する場合、これは、検索結果を追加する microformat オブジェクトの配列です。
戻り値

検索条件に一致する microformat オブジェクトの新しい配列。あるいは、新たに見つかった microformat オブジェクトが追加された、microformats で指定された配列。

getNamesFromNode()

指定された microformat ノードに相当する、microformat の名前のスペース区切りのリストを返します。

nameList = Microformats.getNamesFromNode(node);
引数
node
microformat の名前のリストを取得するノード。
戻り値

指定された node が microformat である場合、戻り値は、そのノードに相当する microformat の名前をすべてリストした、スペース区切りの文字列になります。ノードが microformat でなかった場合、何も戻りません。

getParent()

指定された microformat の親ノード、または microformat の子ノードを返します。

parentNode = Microformats.getParent(node);
引数
node
親ノードを取得したいノード。
戻り値

指定されたノードの親ノード。指定された node が microformat でなかった場合や、microformat の子ノードでなかった場合は、何も戻りません。

isMicroformat()

指定された DOM ノードが microformat かどうかを判別します。

flag = Microformats.isMicroformat(node);
引数
node
microformat かどうかを判別する DOM ノード。
戻り値

ノードが microformat である場合は true を、そうでない場合は false

註: このメソッドは、ノードが microformat の子ノードである場合、true を返しません。

関連記事

Document Tags and Contributors

Contributors to this page: Kohei, Potappo, ethertank, Mgjbot
最終更新者: ethertank,