WebDAV クライアントを使用してデータベースリソースにアクセスする

WebDAV では、ファイルシステムのディレクトリ構造によく似た包含階層を使用して、ファイルをコレクションと呼ばれるグループに組織化しています。コレクションには、他のコレクションかファイルのどちらか、両方が含まれている場合があります。Domino® は、各設計要素の名前 (各要素の [$TITLE] フィールドに保存されている値) をファイル名として使用して階層を表しています。例えば、images/logo.gif という名前の図形リソースは、WebDAV コレクションでは「images」という名前のルートコレクションにある logo.gif という名前のファイルとして表示されます。Domino Designer のクライアントでは、コレクションの要素は、[$TITLE] フィールドの名前の最後にスラッシュが付き、オプションのコメントとともに「共有ファイルリソース」という設計リストに表示されます。 コレクションの要素は、[$Flags] フィールドの設計フラグ「/」を伴ったファイルリソースの設計要素です。

仮想コレクション

WebDAV 経由で Domino データベースに設計要素を挿入すると、Domino によりコレクション要素が作成され、挿入したファイルの包含階層のコレクションすべてが表されます。これらのコレクション要素にはコレクションのプロパティが含まれていて、現在または今後空になる (設計要素が含まれていない) 可能性のあるコレクションが表されます。ただし、表現するコレクション要素がなくてもコレクション自体は存在できます。これは、Designer クライアントを使用して設計要素を作成したり、設計要素の名前を変更したりした場合に起こります。この場合のコレクションは、仮想コレクションといいます。仮想コレクションは、設計要素のパス名にコレクションの名前が指定されている場合に存在しますが、そのコレクションのコレクション要素は存在しません。例えば、データベースの設計コレクションに images/logo.gif という名前のイメージリソースが含まれていて、「images」という名前のコレクション要素が含まれていない場合、そのイメージは仮想コレクションになります。

仮想コレクションの動作は、次の例外を除いて実際のコレクションと同様です。

データベースの要素にアクセスする

WebDAV クライアントを使用してデータベースにアクセスする場合、まずクライアントから指定したサーバー上にあるデータベースへの接続を作成します。例えば、Windows 2000 のエクスプローラの場合は、「ネットワークの場所」を作成します。データベースを識別するには、Web サイトのホスト名を指定する URL とデータベース名を入力し、WebDAV からの要求であることをサーバーに示すために、パスの末尾に $files という文字列を追加します。例えば、Windows エクスプローラから sales.nsf という名前のデータベースを Web フォルダとして開くには、パスを次のように入力します。

http://servername/sales.nsf$files

データベースを WebDAV クライアントにマッピングすると、WebDAV クライアントのインターフェースを使用してデータベースを参照し、データベース内の設計要素を選択して開くことができます。

URL を使用して Web ブラウザからデータベース内のリソースの内容を表示するには、リソースの名前 (関連付けられている [$TITLE] フィールドの値) をフォルダ名に追加します。例を次に示します。

http://servername/sales.nsf$files/images/logo.gif
注: Microsoft Internet Explorer を使用して Domino Server のデータディレクトリにあるサブディレクトリの WebDAV データベースにアクセスすることはできません。代わりに Windows エクスプローラを使用します。

WebDAV クライアントを使用して Domino データベースへの接続を確立すると、リソースを開いて編集し、保存してデータベースへ戻すことができます。また、サードパーティー製のエディタを使用して作成した設計要素をデータベースに追加することもできます。

注意:
WebDAV クライアントでは、読み込み専用などのオペレーティングシステムの属性は維持されません。例えば、HTML ページを作成し、Windows で「読み込み専用」というフラグを付けても、そのページをデータベースに追加して Domino Designer で表示すると「読み込み専用」フラグは表示されません。

命名の競合を避ける、または命名の競合の問題を解決する

WebDAV では、各リソースに対して一意の名前が必要です。Domino データベースには [$TITLE] フィールドに同じ値を持つ設計要素が複数存在する場合があるため、命名の競合が起こる可能性があります。例えば、2 人の作成者が同じデータベースの別々の複製で作業していて、両者が同じ名前の設計要素を新規作成した場合には、命名の競合が発生します。データベースが複製されると、各レプリカに同じ [$TITLE] フィールドの値を持つ設計要素が 2 つ含まれます。

注: Domino では、文書 (note) の名前ではなく noteID に基づいてロックされるため、設計ロックを有効にしても命名の競合を防ぐことはできません。

Domino Designer では、[Name(NoteID).ext] フォームを使用して競合要素の名前を設計要素の NoteID で動的に修飾することで、命名の競合を処理します。サーバーでは、命名の競合する各要素を一意に識別するためにこのフォームを使用しますが、データベース内の要素名が実際に変更されることはありません。WebDAV クライアントを使用してこの命名規則を確認したら、競合を解決して問題を回避してください。Windows エクスプローラまたはその他の WebDAV クライアントを使用すると、競合する 1 つ以上のリソース名を変更できます。このような方法で命名の競合が解決されると、影響を受けている他のリソース名が [$TITLE] の未修飾の名前に戻ります。WebDAV クライアントの表示を更新して変更を確認する必要があります。また、Designer クライアントでも設計要素の名前を変更できます。

命名の競合がコレクション要素で発生した場合は、コレクション要素名が上で説明したように修飾されます。 ただし、コレクションに設計要素が含まれている場合は、コレクションの内容を維持するために未修飾の仮想コレクションが使用されます。その結果、WebDAV クライアントで表示すると、設計要素を含まない、修飾名を持つコレクションと、コレクションの設計要素をすべて含む未修飾のコレクションが両方表示されます。修飾名を持つコレクションは、移動またはコピーの操作対象にはなりません。また、修飾名を持つコレクション内に要素を作成することはできません。つまり、コレクション常に空となります。ただし、命名の競合の問題を解決する目的で、修飾名を持つコレクションの名前を変更したり、コレクションを削除したりすることは可能です。修飾名を持つコレクションを削除すると、命名の競合に関係するコレクション要素のみが削除されます。未修飾名を持つ仮想コレクションに含まれている要素は一切削除されません。

注: 上述の件は、修飾名の形式 (Name(NoteID).ext、NoteID は 8 桁の 16 進数による ASCII 表示) に一致する名前は設計要素名では避ける必要がある、ということです。Domino Server では、修飾名と混同する可能性のある名前を持つ設計要素を WebDAV クライアントで作成したり、そうした名前を設計要素名に使用したりすることはできませんが、Domino Designer クライアントの場合は可能です。