Title: TeamPage SDK 用語解説

ここでは TeamPage の開発者向けの基本的な用語を説明します。



journal (ジャーナル)



いわゆる TeamPage のデータベースのことです。記事の削除のような特別な操作を除き、ジャーナルは、データの追加だけが行われ、記録済みの内容(レコード)が直接変更されることはありません。記録済みの内容の変更、例えば記事の編集やタグの変更などは、変更を意味する新しいレコードとして追加記録されます。管理画面での操作もジャーナルに記録されます。

user (ユーザー)



ユーザー アカウント(単に「ユーザー」と呼ぶことも多い)は、システムのユーザーを識別するユニット名です。TeamPage へのリクエストや TeamPage での操作は、かならず特定のユーザーとして行われます。ここで言うユーザーにはビジターを含みます。ビジターとは、ログイン認証されていない匿名アカウントのことです。

project (スペース)



project は「スペース」のことで、記事 (entry) のジャーナル中の格納箱(コンテナ)です。スペースごとに、各種の設定、プロパティ、権限が用意されます。

メモ : TeamPage 4.1 までは、スペースのことを「プロジェクト」と呼んでいました。呼び方が変わった現在、TeamPage の画面では「スペース」と表示されますが、SDK/SDL の領域では引き続き「project」と呼びます。ちなみに、現在の「プロジェクト」は、SDK/SDL の領域では「goal」と呼びます。



entry (記事)



entry とは、コンテンツを格納するジャーナルのレコードです。通常の記事、コメント、タスク、プロジェクト、マイルストーン、近況アップデートなどの「投稿」は、entry としてジャーナルに記録されます。また、編集、削除、パブリッシュ、ドラフトへの戻し、ロック、ロック解除、タグの変更などの操作も、その他の種類の entry としてジャーナルに記録されます。メールで返信する、メールで転送する、ピングを打つ、トラックバックを送信する、も同じく entry として記録されます。編集の entry には、変更後の記事のすべての内容が含まれます。

それぞれの entry は、必ずどれか1つの project すなわちスペースに保存され、保存先スペース名を含む識別子 (ID) が与えられます。例えば、「Forum」という名前の project に保存された 123 番の entry の ID は "Forum123" になります。

通常の画面には表示されない entry のレコードもあります。しかし、entry の ID を指定することで一枚記事画面(シングル ビュー)に表示できます。これらの特別な entry は、「system entry (システム記事)」と呼ばれます。

item (段落)



item は、entry の中のそれぞれのユニットです。通常、item は、HTML の段落 (<p>〜</p> タグ) やその他のブロック要素、例えばテーブル (<table>〜</table> タグ) や見出し (<h2>〜</h2> タグ) として画面に表示されます。

item は、アドレス可能な最小のユニットで、item を含む entry 中の識別子 (ID) が与えられます。これは、特にタグやリレーションシップなどのメタデータが、編集によってどのように変更や削除されたのかを管理するために重要なデータになります。

item の識別子 (ID) とは別に、item には番号 (number) があります。item の番号すなわち段落番号は、単純に entry の初めから数えた item の順番を表します。

参照 : DocJp377: 段落の ID と番号

page (記事の名前)



TeamPage の entry (記事) には、前述のように "Forum123" のような ID が自動的に与えられますが、それとは別の「名前」を手動で付けられます。記事に「名前」を付けると、その記事へ「名前」でリンクできるようになります。

例えば、この解説記事は "DocSDK16" という ID と共に「TeamPage SDK 用語解説」という名前が付けられています。

attachment (添付ファイル)



電子メールの添付ファイルがメールのメッセージに付属するものの本文とは別の文書であるのと同じように、TeamPage の添付ファイルも、entry 本体に付属する別の文書です。TeamPage の添付ファイルは、段落 (item) と同じように、作成時に識別子 (ID) が自動的に与えられます。添付ファイルそのものは、ジャーナルとは別のディレクトリ(フォルダ)に保存されます。

label and label name (タグとタグ名)



タグ (label) とは、TeamPage 4.1 までは「ラベル」と呼ばれていたもので、記事 (entry) や段落 (item) に適用されます。厳密に言うと、タグ (label) は、タグ名 (label name) のインスタンス (instance) です。両者はとても似通ったものに聞こえますが、SDK では com.traction.sdk.LabelNamecom.traction.sdk.Label という別々のクラスとして定義されています。

ラベル名は、必ずいずれかのスペース (project) に所属します。ユーザーは、「タグの変更」権限のあるスペースのアクティブなタグ名を、「記事の読み取り」権限のあるスペースに投稿された記事 (entry) やその段落 (item) に適用できます。記事のタイトルとして表示される段落に付けられるタグは、「記事のタグ」や「記事タグ」(entry-label label)とも呼ばれます。

ラベル名は、ラピッドセレクタを使って指定できます。あるスペースに作成されたラベル名をそのスペース内から参照する場合は、半角コロン記号に続けてラベル名を指定します。ラベル名にスペースが含まれる場合は、ダブルクオテーション記号でラベル名を挟みます。

例)
:MyLabelName
:"My Label Name"


別のスペースから参照する場合は、半角コロン記号を二重にしてスペース名を指定し、それから半角コロン記号に続けてラベル名を指定します。

例)
::MySpace:MyLabelName

ラベル名中のスペースの有無や大文字/小文字は区別されません。

ID (識別子)



上述の entry (記事), item (段落), attachment (添付ファイル) には固有の ID が付けられます。この ID を「Traction ID」と呼び、SDK では com.traction.sdk.TractionId というオブジェクト名になっています。

Traction ID には次のようなものがあります。



既存の記事を更新(編集)すると、その編集記録は、編集履歴の中の 1 件の新しい entry として保存されます。例えば、「Hoge」スペースの 150 番目の entry である「Foo150」を編集すると、その記録は「Foo151」 のような新しい ID で保存されます。さらに編集された記録は「Foo152」のような ID で保存されます。つまり、「Foo150」の最新の状態は「Foo152」になります。

通常、オリジナルの entry である「Foo150」を参照すると、自動的に最新のバージョンである「Foo152」の内容が得られます。それに対し、編集記録の entry である「Foo151」や「Foo152」を参照すると、そのバージョンでの内容が得られます。

なお、どのような ID を入力しても、user の閲覧権限のない project に投稿された内容は表示されません。逆にいうと、参照できる ID は、その参照を実行する user が閲覧権限を持っている project に投稿されたものだけに限られます。

view (ビュー)



「view」とは、HTTP リクエストの結果を意味します。それは、ブラウザに表示される HTML のドキュメント(Web ページ)であることもあれば、文書の一部のこともあり、また、JavaScript であったり PDF ドキュメントであったりします。何が結果として返されるかは view の実装形態によって異なります。

しかし、通常は、1回の HTTP リクエストに対する呼応の生成を意味します。サーバーセットアップのような管理画面ページ、リンクの挿入ダイアログ、権限設定のダイアログなどはすべて「view」です。

edit (変更)



通常、「edit」は編集、すなわち既存の entry (記事) をアップデートすることを意味します。しかし、「Edit SDK」「the family of edit views」「edit operation」などのように「edit」という用語を使う場合、これは「ジャーナル中に保存済みのコンテンツの変更」という意味になります。「記事の編集」以外のあらゆる「何かを変更する操作」を「edit」と呼びます。

plug-in (プラグイン)



プラグインは、TeamPage プラットフォームの拡張およびカスタマイズ用のコンテンツを納めるコンテナ ユニットです。

プラグインの作り方やパッケージ化の方法については、次の記事を参照して下さい。



SDL



「SDL」は、「Skin Development Language」の略で、XML や SGML に似た「タグ」を使って記述する言語です。

Traction SDK/SDL の Java ドキュメントを参照するにはここをクリックしてください。



関連記事
Article: DocSDK16 (permalink)
Date: 2014/03/06; 5時07分03秒 JST

Author Name: TeamPage サポート
Author ID: jpbo