抽象ウィキペディア/構造

This page is a translated version of the page Abstract Wikipedia/Architecture and the translation is 75% complete.
これは、関数ウィキの開発計画の一部です。
関数ウィキの必要事項からの続きです。

プロジェクトの主な構成要素は次の3つです。:

  1. コンストラクタ – 意味するもの、スロットの型の制限、コンストラクターの戻り値の型など、コンストラクターとそのスロットの定義 (例:アイテム、アイテムタイプ、数値としてのランク、何によるランク付けか、ローカル制約といったものを取込んだコンストラクタrankを定義します)
  2. コンテンツ – スロットに対するフィラーを含むコンストラクターへの抽象呼出し(例:rank(SanFrancisco, city, 4, population, California))
  3. レンダラー – コンテンツと言語を受け取り、テキストを返す関数で、コンテンツの意味を表す自然言語を生成します。(例:与えられた例では、“サンフランシスコはカリフォルニアの人口で4番目に大きい都市です”という結果になります。)

多言語ウィキペディアの構成要素

3つの異なる主要構成要素をどこに実装するか、主に4つの可能性があります。

  1. コンストラクタ、コンテンツ、レンダラーは全てウィキデータに実装する。
  2. コンストラクタとレンダラーは、ウィキファンクションズに実装し、コンテンツはウィキデータの対応する項目の隣に実装する。
  3. コンストラクタ、コンテンツ、レンダラーは全てウィキファンクションズに実装する。
  4. コンストラクタとコンテンツはウィキデータに実装し、レンダラーはウィキペディアのローカル版に実装する。

Solution 4 has the disadvantage that many functions can be shared between the different languages, and by moving the Renderers and functions to the local Wikipedias we forfeit that possibility. Also, by relegating the Renderers to the local Wikipedias, we miss out on the potential that an independent catalog of functions could achieve.

We think it is advantageous for communication and community building to introduce a new project, Wikifunctions, for a new form of knowledge assets, functions, which include Renderers. This would speak for Solution 2 and 3.

Solution 3 requires us to create a new place for every possible Wikipedia article in the wiki of functions. Given that a natural place for this already exists with the Items in Wikidata, it would be more convenient to use that and store the Content together with the Items in Wikidata.

Because of these reasons, we favor Solution 2 and assume it for the rest of the proposal. If we switch to another, the project plan can be easily accommodated (besides for Solution 4, which would need quite some rewriting). Note that solution 2 requires the agreement of the Wikidata community to proceed. If they disagree, Solution 3 is likely the next closest option.

The proposed architecture for the multilingual Wikipedia looks as follows. Wikipedia calls the Content which is stored in Wikidata next to the Items. We call this extension of Wikidata Abstract Wikipedia. Note that this is merely a name for the development project, and that this is not expected to be a name that sticks around - there won’t be a new Wikiproject of that name. With a call to the Renderers in Wikifunctions, the Content gets translated into natural language text. The Renderers rely on the other Functions, Types, and Constructors in Wikifunctions. Wikifunctions also can call out to the lexicographic knowledge in the Lexemes in Wikidata, to be used in translating the Content to text. Wikifunctions will be a new Wikimedia project on par with Commons, Wikidata, or Wikisource.

多言語ウィキペディアの構造

(イタリック体で指定されたコンポーネントは、この提案によって追加され、太字のコンポーネントはすでに存在します。最上位のボックスはウィキメディア プロジェクトであり、内側のボックスは特定のウィキメディア プロジェクトの一部です。) ("Wikilambda" was the working name for what is now known as "Wikifunctions".)


抽象ウィキペディアの構成要素に続きます。