From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- files/ja/archive/mozilla/firefox/index.html | 8 + .../mozilla/firefox/repackaging_firefox/index.html | 151 ++++++++++ .../soap_in_gecko-based_browsers/index.html | 305 +++++++++++++++++++++ .../mozilla/firefox/using_microformats/index.html | 246 +++++++++++++++++ 4 files changed, 710 insertions(+) create mode 100644 files/ja/archive/mozilla/firefox/index.html create mode 100644 files/ja/archive/mozilla/firefox/repackaging_firefox/index.html create mode 100644 files/ja/archive/mozilla/firefox/soap_in_gecko-based_browsers/index.html create mode 100644 files/ja/archive/mozilla/firefox/using_microformats/index.html (limited to 'files/ja/archive/mozilla/firefox') diff --git a/files/ja/archive/mozilla/firefox/index.html b/files/ja/archive/mozilla/firefox/index.html new file mode 100644 index 0000000000..9e61c718ff --- /dev/null +++ b/files/ja/archive/mozilla/firefox/index.html @@ -0,0 +1,8 @@ +--- +title: Firefox +slug: Archive/Mozilla/Firefox +translation_of: Archive/Mozilla/Firefox +--- +

In progress. Out-of-date information about the Firefox project.

+ +

diff --git a/files/ja/archive/mozilla/firefox/repackaging_firefox/index.html b/files/ja/archive/mozilla/firefox/repackaging_firefox/index.html new file mode 100644 index 0000000000..57c2a8deee --- /dev/null +++ b/files/ja/archive/mozilla/firefox/repackaging_firefox/index.html @@ -0,0 +1,151 @@ +--- +title: Repackaging Firefox +slug: Archive/Mozilla/Firefox/Repackaging_Firefox +translation_of: Archive/Mozilla/Firefox/Repackaging_Firefox +--- +

Firefox は、例えば社員やクライアントといった、特定のユーザグループのニーズに合わせてカスタマイズできます。また、開発当初から柔軟性やカスタマイズ性を考慮して設計されているので、カスタマイズの手順は単純で管理も容易です。 +

+

大切な法的留意事項

+

作業に取りかかる前に、大切なこととして、Firefox の配布に関する法的な事項を理解し遵守してください。Firefox の改変版を配布するにあたっては、Mozilla からの書面による認可が必要です。認可を得るためには、licensing@mozilla.com にご連絡ください。 +

+

まずはじめに

+

では、技術的な詳細に移ります。下の図は、手順および関係する部品の概要です。 +

画像:Repackaging overview graph-1.jpg +

作業をはじめるにあたって、次のものが必要になります。 +

+ +

これらすべてをインストールしたら、カスタム手順はかなり簡単です。 +

+
  1. Firefox インストーラをダウンロードします。 +
  2. 他の Mac アプリケーションと同じように再パッケージ用ツールをインストールします。起動して、GUI が表示されるか確認します。 +
  3. Firefox をカスタマイズするための拡張機能を用意します。 +
+

distro extension

+

変更点すべて (例:標準のホームページの変更や標準ブックマークの追加) を、ひとつの Firefox 拡張機能として集約できます。私たちは、このような拡張機能を 「distro extension」 と呼びます。 というのも、これで、新しいブランド名を付けたりと、Firefox の新しい 「ディストリビューション」 を作成できるからです。拡張機能を利用することで、Firefox の新バージョンへとアップグレードする際に、変更点が簡単に追跡できるようになるとともに、ユーザ側のメリットとしては、設定が正しく行われていれば、Mozilla が配布する Firefox のアップデートを安全に受け取れるようになります。さらに詳しく説明しましょう。 +

この記事の目的は、拡張機能の作成方法を解説することではありませんが (拡張機能の作成方法は、Mozilla Developer Center にある このセクション を参照してください)、ここに簡単なチュートリアルとしてまとめておきます。また DEX を作成するにあたっての具体的なヒントも記載しておきます。 +

Firefox にバンドルしたい拡張機能がすでに手元にあり、標準設定を数カ所変更する以外に他に拡張機能をバンドルしたくない場合は、既存の拡張機能で必要な作業をすべて行うことができます。そうはいっても、このチュートリアルには目を通しておくことをお奨めします。というのも、このチュートリアルには、こうしたタイプの拡張機能を作成する際に特有のヒントが掲載されていますし、ユーザがスムーズにアップグレードできるようにするためにいくつかのオプションを変更する必要もあるからです。最低限、「重要な拡張機能設定項目」 というセクションだけは必ず目を通しておいてください。 +

+

サンプル DEX

+

作業を開始するにあたってのベストな方法は、シンプルな DEX を参考にして、必要に応じて変更を施すというものです。こちらの 画像:Sample.xpi をダウンロードします (リンクを辿り、右クリックから 'リンク先を保存...' を選択します)。XPI ファイルの実体は ZIP ファイルです。解凍にあたっては、どの ZIP プログラムを使ってもかまいません (Windows では WinZIP、Mac や Linux では zip など)。この XPI には次の内容物が含まれています。 +

+
chrome.manifest
+components/PartnerBookmarks.js
+defaults/preferences/partner.js
+install.rdf
+locale/ar/partner.properties
+locale/cs/partner.properties
+locale/da/partner.properties
+locale/de/partner.properties
+locale/el/partner.properties
+locale/en-GB/partner.properties
+locale/en-US/partner.properties
+locale/es-AR/partner.properties
+locale/es-ES/partner.properties
+locale/fi/partner.properties
+locale/fr/partner.properties
+locale/he/partner.properties
+locale/hu/partner.properties
+locale/it/partner.properties
+locale/ja/partner.properties
+locale/ja-JP-mac/partner.properties
+locale/ko/partner.properties
+locale/nb-NO/partner.properties
+locale/nl/partner.properties
+locale/pl/partner.properties
+locale/pt-BR/partner.properties
+locale/pt-PT/partner.properties
+locale/ru/partner.properties
+locale/sk/partner.properties
+locale/sv-SE/partner.properties
+locale/tr/partner.properties
+locale/zh-CN/partner.properties
+locale/zh-TW/partner.properties
+partner-bookmarks.xml
+
+

上のファイルを一つ一つ見ていきましょう。 +

<tt>chrome.manifest</tt> +

XPI に含まれるコンポーネントのリスト。 +

<tt>components/PartnerBookmarks.js</tt> +

CCK 拡張機能からで、プロファイル作成の際に標準ブックマークを操作できるようにします。このファイルを編集する必要はありません。 +

<tt>defaults/preferences/partner.js</tt> +

この DEX のための標準設定。 +

<tt>install.rdf</tt> +

作者 (所属組織)、ユニーク ID、対象となる Firefox のバージョンといった、拡張機能のメタ情報。 +

<tt>locale/*/partner.properties</tt> +

ローカライズが必要な設定情報。対象ロケールで求められる値が記載された各プロパティファイルには、エントリーが記載されていなければなりません。 +

値が *すべての* ロケールについて同じ場合には、<tt>partner.js</tt> ファイルそのものに設定を書き込むことができます。より詳しくは 「Preferences」 セクションを参照してください。 +

<tt>partner-bookmarks.xml</tt> +

標準ブックマークはここで設定されています。 +

必要なものは以上です! ここで全ファイルを確認してください。参考資料として MDC も忘れずに。 +

+

ロケール

+

インストーラ配布対象予定のロケール (そのため再パッケージが必要です) と、お使いの DEX でサポートされているロケールとの間には違いがあります。可能なら、お使いの DEX は Firefox がサポートするすべてのロケールをサポートするようにしておくと良いでしょう。 +

というのも、2 種類のロケールをサポートする DEX を作成して出荷し、後になって 3 番目のロケールを出荷することになった場合、第 3 のロケールをサポートするために DEX を作り直す必要があります。つまり、DEX のバージョンを変更しなければならないことになり、過去のバージョンを使っているユーザは必要がないのにアップグレードしなければならなくなります。 +

一方、すべてのロケールをサポートする DEX を作成してしまえば、当初はロケール数が少なくても、アップグレードの手間なくサポートロケールを増やせます。 +

もちろん、この方法は文字列のローカライズが必要ない場合か、プログラミング的にローカライズ可能な場合 (例:http://<locale>.example.com/ のように、URL にロケールを追加するだけの場合) に限りますが、ロケールサポートを考える上では考慮に値する方法です。 +

+

設定項目

+

設定項目は、拡張機能のなかで設定したい 2 つの主要なもののうちの一つです (もう一つはブックマークです)。Firefox には 2 種類の設定項目があり、両方とも <tt>partner.js</tt> ファイルにあります。 +

+ +

次のように、直接 <tt>partner.js</tt> ファイルにローカライズ可能な設定項目のための値を設定することも可能です。 +

+
pref("localizable.preference.name", "data:text/plain,localizable.preference.name=Some value.");
+
+

そうすれば、その設定項目のためにプロパティファイルを利用する必要はなくなります。そのため、設定項目の *すべて* で同じ値を利用できる場合、プロパティファイルは一切必要なくなります。 +

ただし、どの設定項目がローカライズ可能で、どの設定項目がローカライズ不能なのかは理解しておく必要はあります。この点についてより詳しくは MDC にある資料を参照してください。 +

+
重要な拡張機能設定項目
+

Mozilla が提供する設定項目のセットがあります。この設定項目は、あなたのディストリビューションを追跡し、それに応じてアップグレードの計画を立てるためのものです。この項目を利用すれば、Mozilla からあなたのディストリビューションに対してアップグレードを配布することができるようになります。ですから、これら設定項目はもっとも重要なものと言えます。 +

必要な値は Mozilla が提供します。<tt>app.partner.'name'</tt> 設定では、名称および設定値の両方で同じ値を使っていることに留意してください。 +

これらの設定は、すべてローカライズ不能ですので、直接 <tt>partner.js</tt> で設定され、プロパティファイル内にある必要はありません。 +

+
mozilla.partner.id=<name>
+app.partner.<name>=<name>
+app.distributor=<name>
+app.distributor.channel=<name>
+
+
その他の設定項目
+

設定の中には、パートナーディストリビューション共通の設定があります。ただし、ここでは設定項目をすべて列挙することはしません。もし、多くのパートナーが再パッケージを行う際に便利だと思われる設定項目を見つけた場合は、同じようなスタイルを用いて、下にその項目を追加してください。 +

+
ローカライズ不能な設定項目
+
browser.EULA.2.accepted=<boolean>
+
+

この設定項目を false にすると、Firefox は初回起動時にエンドユーザライセンス許諾を表示します。標準設定では true になっていますので、Firefox はライセンス許諾を表示しません。 +

+
ローカライズ可能な設定項目
+
browser.startup.homepage=<string>
+browser.startup.homepage_reset=<string>
+
+

標準ホームページの URL と、ユーザが設定項目で "標準設定に戻す" とした場合に復旧されるホームページ。これら二つとも同じ URL でなければなりません。 +

+
startup.homepage_welcome_url=<string>
+
+

初回起動時に表示されるページの URL。これは、Firefox が初めて実行された時に、ホームページと共に表示されます。 +

+
browser.search.defaultenginename=<string>
+
+

標準の検索エンジンの名前。ここでは、ドロップダウンメニューに表示される検索エンジンの順番は変更されず、標準エンジンの選択のみができます。大文字・小文字の区別があります。 +

+

Firefox の再パッケージ

+

必要な部品がすべてそろったら、あとは再パッケージ用ツールを立ち上げて、フィールドに入力してカスタマイズインストーラを設定するだけです。 +

画像:Repackager.jpg +

+ +

再パッケージ用ツールが処理をし、カスタマイズインストーラを指定したターゲットディレクトリに書き出していきます。新しい Firefox インストーラを配布する前に、上述の許可を取得することを忘れないでください。 +

diff --git a/files/ja/archive/mozilla/firefox/soap_in_gecko-based_browsers/index.html b/files/ja/archive/mozilla/firefox/soap_in_gecko-based_browsers/index.html new file mode 100644 index 0000000000..8fc1cd7ad7 --- /dev/null +++ b/files/ja/archive/mozilla/firefox/soap_in_gecko-based_browsers/index.html @@ -0,0 +1,305 @@ +--- +title: SOAP in Gecko-based Browsers +slug: Archive/Mozilla/Firefox/SOAP_in_Gecko-based_Browsers +tags: + - SOAP + - XML Web Services +translation_of: Archive/Mozilla/Firefox/SOAP_in_Gecko-based_Browsers +--- +

廃止
この機能は廃止されました。まだいくつかのブラウザーで動作するかもしれませんが、いつ削除されてもおかしくないので、使わないようにしましょう。

+

Firefox 3 における注記

+

WSDL および SOAP のネイティブなサポートは Mozilla 1.9/Firefox 3 から削除されました。

+

+ +

 

+ +

この記事は、最近の Gecko ベースのブラウザ (しかし、 Firefox 3 では SOAP のサポートが外されています) で SOAP と JavaScript を使い、Web サービスにアクセスする方法について書かれています。

+ +

導入

+ +

Simple Object Access Protocol (SOAP) は、Web サービスの元になっています。SOAP は、XML を基にしたプロトコルでWeb サービスの互換性と情報伝達に使われます。Mozilla 1.0 (Netscape 7.0x がビルドされた) と Firefox は、現在では JavaScript を通して低レベルの SOAP 実装を使用する Web サービスと直接通信することができます。

+ +

SOAP の呼び出しを確立するための Gecko の JavaScript インタフェースは、いくつかの特別なJavaScript オブジェクトを使って SOAP envelope を作成する低レベル API です。 この記事は、基本的な SOAP 操作を担当しています。;Gecko での低レベル SOAP API の詳細はここにあります。

+ +

Web サービスと通信する JavaScript は、ドメインを超えることによる他のスクリプトと同じセキュリティポリシーの条件に制限を受けます。それ故に、JavaScript が動いているサーバ以外の Web サービスにアクセスすることは、クロスドメインポリシーに違反します。この記事には、テスト目的で一時的にこれをどのように回避するかが書かれています。

+ +

SOAP 呼び出しの設定

+ +

最も基本的なオブジェクトは、SOAPCallです。SOAP 呼び出しの開始と起動に使用します。

+ +

Figure 1 : 基本的な設定と SOAP 呼び出しの起動

+ +
var mySOAPCall = new SOAPCall();
+mySOAPCall.transportURI = "http-based service URI"
+
+var parameters = new Array();
+mySOAPCall.encode(SOAPCall.VERSION_1_1,
+                  // method
+                  "method", "namespaceURI",
+                  // header block
+                  0, null,
+                  // parameter
+                  parameters.length, parameters);
+
+var response = mySOAPCall.invoke();
+
+ +

SOAPCalltransportURI と呼ばれているメンバーを持っています。それは、SOAP 呼び出しを送る先の URI を指定します。encode() メソッドは、Web サービスで呼び出すメソッド名、名前空間の URI、通過させる SOAP パラメータの数、全てのパラメータを含んだ SOAP パラメータ配列を必要とします。これらの全てのパレメータは、例の段落で書かれている Web サービスの WSDL ファイルで見つけることが出来ます。

+ +

SOAP パラメータは、SOAPParameterオブジェクトを使って作られます。Web サービスで送られる名前/値の組です。

+ +

Figure 2 : SOAP パラメータを作る

+ +
var param = new SOAPParameter();
+param.name = "translationmode";
+param.value = "en_fr";
+
+ +

応答のハンドリング

+ +

一度 invoke() が呼び出されると、Gecko は SOAP envelope を作り、指定された URI に送信されます。 その呼び出しは同期されていて、応答は、invoke() の戻り値になります。

+ +

Figure 3 : 応答のハンドリング

+ +
var returnObject = mySOAPCall.invoke();
+
+if(returnObject.fault){
+  alert("An error occured: " + returnObject.fault.faultString);
+} else {
+  var response = new Array();
+  response = returnObject.getParameters(false, {});
+  alert("Return value: " + response[0].value);
+}
+
+ +

invoke() の戻り値は保存され、fault メンバーでチェックされました。もし、fault が存在したら、Web サービスでエラーが起きています。そして、エラーメッセージは、fault.faultString に保存されています。もし、fault が無ければ、SOAP パラメータの応答のオブジェクトを取り出すために getParameters() を呼びます。

+ +

+ +

ここの例では、既に存在している Web サービス、xmethods.net で提供されている Babelfish を利用します。Babelfish Web サービスは、いくつかの言語間の翻訳を許しています。それは、2 つのパラメータをとります: "元の言語_結果の言語"の書式の文字列と他の言語へ変換する文字列。Babelfish Web サービスの WSDL ファイルは、ここにあり、Web サービスを呼ぶための低レベルの SOAP 呼び出しを設定するのに必要な情報を含んでいます。

+ +

初めの段階は、Web サービスの位置を解決することです。SOAPCalltransportURI メンバーの値です。これは、WSDL のservice 要素、特に、soap:addresslocation 属性に見つけることが出来ます。

+ +

Figure 4 : WSDL から Web サービスの場所を特定する

+ +
WSDL:
+  <service name="BabelFishService">
+    <documentation>
+      Translates text of up to 5k in length, between a variety of languages.
+    </documentation>
+    <port name="BabelFishPort" binding="tns:BabelFishBinding">
+      <soap:address location="http://services.xmethods.net:80/perl/soaplite.cgi"/>
+    </port>
+  <service>
+
+JavaScript:
+  var babelFishCall = new SOAPCall();
+  babelFishCall.transportURI = "http://services.xmethods.net:80/perl/soaplite.cgi";
+  ...
+
+ +

次のステップは、もっと複雑です。:Web サービスが送信されることを期待しているパラメータを正確に形作ることです。 Babelfish Web サービスには、たった1つのメソッド "BabelFish" があります。これは、WSDL の中のportType 要素の子要素の operation に書かれています。WSDL の operation 毎に 2 つの子要素があります。:型の情報を含んだinputとoutput要素です。型は、message 要素で定義されています。型には 2 つあり: BabelFishRequestは、WebService に何を渡すかを表しています。そして、BabelFishResponse は、返ってくる型を表しています。

+ +


+ BableFishは、2 つのパラメータが operation に含まれていることを期待しています: translationmodesourcedata

+ +

Figure 5 の例では、"I am" を英語からフランス語に翻訳します。

+ +

Figure 5 : 必要なパラメータを設定する

+ +
WSDL:
+  <message name="BabelFishRequest">
+    <part name="translationmode" type="xsd:string"/>
+    <part name="sourcedata" type="xsd:string"/>
+  </message>
+
+  <message name="BabelFishResponse">
+      <part name="return" type="xsd:string"/>
+  </message>
+
+  <portType name="BabelFishPortType">
+    <operation name="BabelFish">
+      <input message="tns:BabelFishRequest"/>
+      <output message="tns:BabelFishResponse"/>
+    </operation>
+  </portType>
+
+JavaScript:
+  // SOAP parameters
+  var param1 = new SOAPParameter();
+  param1.value = "en_fr";
+  param1.name = "translationmode";
+
+  var param2 = new SOAPParameter();
+  param2.value = "I am";
+
+  param2.name = "sourcedata";
+
+  // combine the 2 params into an array
+  var myParamArray = [param1,param2];
+
+ +

次に、SOAPCall オブジェクトの設定と呼び出しをする時です。"BabelFish" は、Web サービスの例として使って欲しいメソッドです。次のパラメータは、BabelFish のメソッドに Web サービスで渡されることが期待されている名前空間です。 これは、WSDL の binding 要素に見つけることが出来ます。binding 要素は、BabelFish メソッドのために operation を子供に持っています。名前空間の必要性は、input 要素の中の soap:body の属性の namespace の値です。

+ +

Figure 6 : エンコードされたメソッドを設定する

+ +
WSDL:
+  <binding name="BabelFishBinding" type="tns:BabelFishPortType">
+    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
+    <operation name="BabelFish">
+      <soap:operation soapAction="urn:xmethodsBabelFish#BabelFish"/>
+      <input>
+        <soap:body use="encoded" namespace="urn:xmethodsBabelFish"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </input>
+      ...
+    </operation>
+  </binding>
+
+JavaScript:
+  babelFishCall.encode(0, "BabelFish", "urn:xmethodsBabelFish", 0, null, myParamArray.length, myParamArray);
+
+  var translation = babelFishCall.invoke();
+
+ +

Figure 5 で見たように、BabelFish メソッド ("BabelFishResponse") の応答は、名前を持った 1 つのパラメータを持っています。

+ +

エラーが返ってきていないのを確認した後、返ってきたオブジェクトの getParameters() メソッドは、SOAPResponse 配列を取り出すのに使われます。たった 1 つのパラメータが返ってくるのが期待されます。-- 解釈されたテキスト -- alert() メソッドは、テクストを表示するのに使われます。

+ +

Figure 7 : 応答のハンドリング

+ +
JavaScript:
+  if(translation.fault){
+    // error returned from the web service
+    alert(translation.fault.faultString);
+  } else {
+    // we expect only one return SOAPParameter - the translated string.
+    var response = new Array();
+    response = translation.getParameters(false, {});
+    alert("Translation: " + response[0].value);
+  }
+
+ +

導入で言及されたように、SOAP 呼び出しは、スクリプトのためのクロスドメインポリシーのままに動きます。テストの目的でセキュリティポリシーを欺く以下の 2 つの方法があります。

+ +
    +
  1. +

    ローカルディスクからスクリプトを動作させる。

    + +

    コードをハードディスクに保存してください。

    + +

    クロスドメインセキュリティモデルは、ローカルハードディスクから実行には作用しません。

    +
  2. +
  3. +

    クロスドメインアクセスを許可する

    + +

    設定でクロスドメインを回避することが出来ます。お勧めの設定は、 Bypassing Security Restrictions and Signing Code に説明があります。そして、クロスドメインチェックを上書きを要求する JavaScript コマンドが載っています。

    + +

    チェックを回避した後、ブラウザを動かし、ここmodified example page を読み込んでください。SOAP 呼び出しを生成する機能のためにクロスドメイン(このセッションの)を切るのを許可するか(ダイアログで)聞いてきます。変更する場所は、SOAP 呼び出しを生成する機能に netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); を追加するだけです。

    +
  4. +
+ +

Figure 8 : 最終的なコード - Local example, Cross-Domain example

+ +
JavaScript:
+  var babelFishCall = new SOAPCall();
+  babelFishCall.transportURI = "http://services.xmethods.net:80/perl/soaplite.cgi";
+
+  // SOAP params
+  var param1 = new SOAPParameter();
+  param1.value = "en_fr";
+  param1.name = "translationmode";
+
+  var param2 = new SOAPParameter();
+  param2.value = "I am";
+  param2.name = "sourcedata";
+
+  // combine the 2 params into an array
+  var myParamArray = [param1,param2];
+
+  babelFishCall.encode(0, "BabelFish", "urn:xmethodsBabelFish", 0, null, myParamArray.length, myParamArray);
+
+  var translation = babelFishCall.invoke();
+
+  if(translation.fault){
+    // error returned from the web service
+    alert(translation.fault.faultString);
+  } else {
+   // we expect only one return SOAPParameter - the translated string.
+   var response = new Array();
+   response = translation.getParameters(false, {});
+   alert("Translation: " + response[0].value);
+ }
+
+ +

Soap Envelope を追跡する

+ +

ここでは、例を実行したときに、実際に受け渡しされたデータの HTTP ダンプを (クロスプラットフォームな Wireshark ツールを使って) 見ます。

+ +

Figure 9 : HTTP ダンプ

+ +
送信:
+POST /perl/soaplite.cgi HTTP/1.1
+Host: services.xmethods.net:80
+...
+Content-Type: text/xml
+Content-Length: 516
+
+<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
+              xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/"
+              env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
+              xmlns:xs="http://www.w3.org/1999/XMLSchema"
+              xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">
+  <env:Header/>
+  <env:Body>
+      <a0:BabelFish xmlns:a0="urn:xmethodsBabelFish">
+          <a0:translationmode xsi:type="xs:string">en_fr</a0:translationmode>
+          <a0:sourcedata xsi:type="xs:string">I am</a0:sourcedata>
+      </a0:BabelFish>
+  </env:Body>
+</env:Envelope>
+
+
+受信:
+HTTP/1.1 200 OK
+Date: Tue, 11 Mar 2003 20:28:11 GMT
+Server: Apache/1.3& (Unix) Enhydra-Director/3 PHP/4.0.6 DAV/1.0.3 AuthNuSphere/1.0.0
+SOAPServer: SOAP::Lite/Perl/0.52
+Content-Length: 532
+
+...
+Content-Type: text/xml; charset=utf-8
+
+<?xml version="1.0" encoding="UTF-8"?>
+<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
+                   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
+                   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+                   xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
+                   xmlns:xsd="http://www.w3.org/1999/XMLSchema">
+  <SOAP-ENV:Body>
+    <namesp1:BabelFishResponse xmlns:namesp1="urn:xmethodsBabelFish">
+      <return xsi:type="xsd:string">je suis</return>
+    </namesp1:BabelFishResponse>
+  </SOAP-ENV:Body>
+</SOAP-ENV:Envelope>
+
+ +

資料

+ +

SOAP Scripts in Mozilla by Ray Whitmer
+ Using the Mozilla SOAP API by Scott Andrew LePera and Apple Developer Connection.
+ The Latest w3.org SOAP Specification
+ Calling SOAP Servers from JS in Mozilla OnLamp.com article by Zachary Kessin
+ SOAPCall documentation on XULPlanet.com
+ SOAPResponse documentation on XULPlanet.com

+ +

+

原文書の情報

+ +

diff --git a/files/ja/archive/mozilla/firefox/using_microformats/index.html b/files/ja/archive/mozilla/firefox/using_microformats/index.html new file mode 100644 index 0000000000..cba2c0e2cc --- /dev/null +++ b/files/ja/archive/mozilla/firefox/using_microformats/index.html @@ -0,0 +1,246 @@ +--- +title: Using microformats +slug: Archive/Mozilla/Firefox/Using_microformats +translation_of: Archive/Mozilla/Firefox/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 を返しません。

+

関連記事

+ +
+
+
HTML5 関連文書
+ +
-- cgit v1.2.3-54-g00ecf