情報の単位「フラグメント」

Piggydbでは情報をフラグメントという単位で管理します。フラグメントは「(知識の)断片」という意味で、ブログのエントリ(一つの記事)や書籍の一節、あるいはより細かい文書に相当します。
以下のようにフラグメントはブログに記事を追加していく要領で作成できます。

カレンダー

フラグメントには作成日時と更新日時が記録されますので、日々の出来事をフラグメントとして記録しておけば、そのまま日記になります。カレンダーの日付をクリックすればその日に更新されたフラグメントの一覧を表示することができます。

フラグメントの作成・編集

テキストの整形 → ...

Piggydbが提供するルールに従ってテキストを入力することによって、以下のような感じでテキストを整形することができます。

  • 太字
  • イタリック
  • 打ち消し線
  • 項目 1
    • 項目 1.1
  • 項目 2
  1. 項目 1
    1. 項目 1.1
  2. 項目 2
用語1
用語の説明をここに書きます
用語2
用語の説明をここに書きます
これは引用文です。
入れ子の引用も可能です。
Cell 1Cell 2Cell 3
Cell 4Cell 5Cell 6

ファイルフラグメント → ...

フラグメントはテキストだけに限りません。ファイルフラグメントとして登録できます。テキストでは表現できない情報、例えば画像などをフラグメントとして登録して、他のフラグメントと関連付けることができます。
以下のように、テキストとファイルを切り替えるスイッチがありますので、ファイルを選択すれば、ファイル登録することができます。

フラグメントの埋め込み → ...

フラグメントの内容に別のフラグメントの内容を埋め込むことができます。埋め込みを行うためには以下ように記述します。
fragment:番号:embed」というのが埋め込みを行うための記法です。
上のように、画像ファイルを他のフラグメントの中に埋め込む、というのが最もよくある使い方かもしれません(上のスクリーンショットも埋め込まれた画像フラグメントです)。

フラグメントをタグで分類する → ...

Piggydbでは、フラグメントに対して、その内容を表現するタグ(ラベル)を貼り付けることができます。タグは検索のための目印となる情報です。あなたが今見ているこのフラグメントにもいくつかのタグが貼り付けられています。
作成されたタグの一覧は「タグ」メニュー(#44)から見ることができます。その中から一つのタグを選んでクリックすれば、そのタグが貼り付けられているフラグメントの一覧を見ることができます。

ちょっとした修正

フラグメントの編集を行うためのフォームに以下のような「ちょっとした修正」というチェックボックスがあります。このチェックボックスをチェックして「登録」すると、タイムスタンプの更新が行われません。
タイムスタンプの更新が行われない場合、以下のような効果があります。
  • そのフラグメントを更新しても、更新順リストの一番上に移動しない
  • 同じフラグメントを編集している他ユーザーに影響を与えない
    • 通常、複数のユーザーが同じフラグメントを同時に編集している場合、最も早く登録された修正のみが有効となります(楽観的ロック)。この場合、その他のユーザーは最新のデータを取得し直して再編集する必要があります。

タイトルが思いつかなくても、とりあえずコンテンツだけでも登録しておく

以下のように、タイトルの入力ボックスの位置を一番上からコンテンツの下に移動しました。
元々、すべての入力項目はオプショナル(省略可能)だったのですが、優先度に基づいて並び替えを行いました。つまり、タイトルとタグについてはあくまでオプショナルである、ということを強調するためにこの順序にしてみました。
この変更に伴って、見出しの自動生成機能が追加されています。タイトルを省略してもコンテンツから見出しを自動的に作って、リストビューなどで表示します。
以下の例では、フラグメント#2, #3のタイトルは省略されていますが、子フラグメントの表示では見出しとしてコンテンツの一部が表示されています(ファイルフラグメントの場合はファイル名)。
リストビューでも自動生成された見出しが表示されます。
この変更によって、とりあえずコンテンツだけでも登録しておけば見出しは自動生成されるので、より気軽に情報を登録できるようになったのではないでしょうか。

フラグメント同士を結びつける

たくさんフラグメント登録しても、そのままではお互いに関連を持たないバラバラの情報です。Piggydbではフラグメント同士に「つながり」をつくることができます。これによって、バラバラの情報をより価値の高い「知識」へと成長させることができます。

階層構造とネットワーク構造 → ...

情報を整理する方法としてはファイルシステムやアウトラインプロセッサのように情報を階層的に構成するのが一般的ですが、Piggydbで管理される情報はネットワーク構造になるのでより柔軟性が高く強力です。例えばファイルシステムの場合、一つのファイルが所属できるディレクトリ(フォルダ)は一つだけですが、Piggydbのフラグメントは複数のフラグメントからの「つながり」を受け付けることができます。

「つながり」をつくる方法 → ...

フラグメント・ツールバーにある「つながりアイコン」をドラッグ&ドロップすることで、フラグメントの間につながりを作ることができます。
つながりアイコンをドラッグして、
他のフラグメントにドロップすると、
以下のような確認ダイアログが表示されるので「作成」ボタンをクリックします。
以下のようにつながりが作成されます。
つながりアイコンは、以下のように「選択中のフラグメント」にもドロップすることができます。これによって、選択しているフラグメントそれぞれに対して一括でつながりを作成することができます。

フラグメント・ツリービュー

フラグメントページには、そのフラグメントからつながりのあるフラグメント(子フラグメント)の一覧が表示されています。タイトルの左側にある [+] トグルをクリックすることで、そこからつながるフラグメントをどこまでも辿ることができます。
ツリー内にあるフラグメントコンテンツを見たい場合は、▼ボタンをクリックするとその場でコンテンツを表示させることができます。
ツリーの右上にある「並び替え」ボタンをクリックすると、並び替えモードになって、ドラッグアンドドロップで子フラグメント(直接の子だけ)の順番を変更できるようになります。この順番はデータベースに保存されます。

子フラグメントの並び替え → ...

フラグメントページには、そのフラグメントからつながりのあるフラグメント(子フラグメント)の一覧が表示されます。一覧の右上にある「並び替え」ボタンをクリックすると、ドラッグ&ドロップで子フラグメントの並び順を変更できるようになります。「並び替え」ボタンをもう一度クリックすると、並び替えのモードを終了します。

出来上がった知識を眺める「ドキュメント・ビュー」 → ...

ドキュメント・ビューは、選択されたフラグメントを起点として作成された、シンプルなXHTML文書を表示する機能です。この文書は登録した情報をまとめて見る場合に便利ですし、印刷にも適しています。表示する範囲はつながりを辿って2つ先のフラグメント(孫)までが対象となります。
ドキュメント・ビューを表示するためには、フラグメント・ツールボタン(#120)を利用します。試しにこのフラグメントの「ドキュメント・ビューを開く」ボタンをクリックしてみて下さい。

フラグメント・ツールボタン

フラグメントには、以下のようなフラグメント・ツールボタンが備わっています。これらのボタンは、フラグメントに関する操作へのショートカットとなっています。
どのような操作が提供されているかについては、以下に関連機能へのつながりを作っておきましたので、そちらを参照して下さい。

出来上がった知識を眺める「ドキュメント・ビュー」 → ...

ドキュメント・ビューは、選択されたフラグメントを起点として作成された、シンプルなXHTML文書を表示する機能です。この文書は登録した情報をまとめて見る場合に便利ですし、印刷にも適しています。表示する範囲はつながりを辿って2つ先のフラグメント(孫)までが対象となります。
ドキュメント・ビューを表示するためには、フラグメント・ツールボタン(#120)を利用します。試しにこのフラグメントの「ドキュメント・ビューを開く」ボタンをクリックしてみて下さい。

特殊タグ: #bookmark

#bookmarkタグを付加されたフラグメントは、サイドバーの「ブックマーク」一覧に追加されます。頻繁にアクセスするフラグメントや重要なフラグメント#bookmarkタグをつけておくと、いわゆるショートカットのように機能します。
ブックマークへの追加は、フラグメント・ツールボタン(#120)からも行えます。

特殊タグ: #home

#homeタグを付加されたフラグメントは、ホームフラグメントとしてホームページに表示されるようになります。ホームフラグメントはいくつでも設定することができます。
このサイトでは、フラグメント #1 がホームフラグメントになっています。
Piggydbを複数人のユーザーで利用している場合は、ホームフラグメントをユーザーみんなの共有情報として利用できます。
ホームフラグメントへの設定は、フラグメント・ツールボタン(#120)からも行えます。

特殊タグ: #trash → ...

フラグメントを削除したい場合は、そのフラグメントゴミ箱タグ#trashを貼り付けます。
実際には、ゴミ箱タグを貼り付けても、そのフラグメントがデータベースから完全に削除されるわけではありません。一部のページから見えなくなるだけです。ゴミ箱タグのページに移動して、フラグメントからゴミ箱タグを取り除けば、そのフラグメントを復活させることができます。
ゴミ箱タグの追加は、フラグメント・ツールボタン(#120)からも行えます。

フラグメントの削除

フラグメントの削除は、特殊タグ#trash」を利用して行います。

特殊タグ: #trash → ...

フラグメントを削除したい場合は、そのフラグメントゴミ箱タグ#trashを貼り付けます。
実際には、ゴミ箱タグを貼り付けても、そのフラグメントがデータベースから完全に削除されるわけではありません。一部のページから見えなくなるだけです。ゴミ箱タグのページに移動して、フラグメントからゴミ箱タグを取り除けば、そのフラグメントを復活させることができます。
ゴミ箱タグの追加は、フラグメント・ツールボタン(#120)からも行えます。

フラグメントを完全に削除するには

フラグメントをデータベースから完全に削除したい場合は、#trashタグのページに移動して、「ゴミ箱に入っている全てのフラグメントを完全に削除」ボタンをクリックします。

フラグメント一括処理機能

Piggydbでは、複数のフラグメントを選択して、それらのフラグメントに様々な処理を行うための仕組みが提供されています。ショッピングサイトのカートのような感覚で、色々なページを移動しながらフラグメントを選択して、後でまとめて処理することができます。

1. フラグメントを選択する

フラグメントには、以下のように選択を行うためのチェックボックスが備わっています。
フラグメントを選択すると、選択されたフラグメントの一覧を表示するウィンドウが表示されます。

2. 選択したフラグメントに対して一括処理を行う → ...

「選択中のフラグメント」ウィンドウの「→」ボタンをクリックすると、それらのフラグメントに対して処理を行うための、一括処理ページに移動します。

フラグメント・ビュー

イメージビューア → ...

  • 画像を原寸大で表示したい場合はその画像をクリックするとイメージビューアが起動します。
  • フラグメントの一覧において、タイトルの先頭に配置されているイメージアイコンをクリックすると、イメージビューアで画像を見ることができます。

フラグメント・リストビュー → ...

ホームページやタグページ・フィルタページなどには、大量のフラグメントを効率よく閲覧するための「フラグメント・リストビュー」が配置されています。スライダーでリストを拡大・縮小したり、項目を指定してリストを並び替えたりできます。

フラグメント・ツリービュー

フラグメントページには、そのフラグメントからつながりのあるフラグメント(子フラグメント)の一覧が表示されています。タイトルの左側にある [+] トグルをクリックすることで、そこからつながるフラグメントをどこまでも辿ることができます。
ツリー内にあるフラグメントコンテンツを見たい場合は、▼ボタンをクリックするとその場でコンテンツを表示させることができます。
ツリーの右上にある「並び替え」ボタンをクリックすると、並び替えモードになって、ドラッグアンドドロップで子フラグメント(直接の子だけ)の順番を変更できるようになります。この順番はデータベースに保存されます。

できあがった構造を眺めて理解を補強すると共に、フラットな俯瞰を使って常に新たなつながりを発見しに行く → ...

バラバラな情報につながりを作っていく、というのがPiggydb流の知識構築ですが、一度構造が出来上がってくると、その構造に囚われてしまい、新しい発見が少なくなってきます。そこで、マルチカラムビューのようなフラットなビューを利用して、新たなつながりを発見しに行くことが重要になってきます。
Piggydbではその仕組み上、バラバラな情報であるフラグメントの集合の上に、何重にも構造を積み上げることができます。一つの構造を作っただけで満足せずに、新たな視点でのつながりを発見できるよう、様々なビューを使い分けながら試行錯誤すれば、驚くようなアイデアを発見できるかもしれません。