(57)【要約】【課題】  サイトの階層に基づいて実行時に生成されるナビゲーション構造を提供すること。【解決手段】  ナビゲーション構造は、構造全体を通じて特定のリンクをオーサリングする機能を含む。これら特有のリンクまたは子オブジェクトは、ナビゲーション構造をカスタマイズする一方で、階層に従ってサイトの編成を維持することができる。【選択図】  図６
2006107429.tif 000002
【特許請求の範囲】
【請求項１】
前記ネットワークサイトに関連付けられたナビゲーションリンクに対応するナビゲーションオブジェクトを作成するステップと、
前記ナビゲーションオブジェクトからナビゲーション構造を生成するステップであって、前記ナビゲーション構造が、前記ナビゲーションリンクに関連付けられた階層に従って編成される生成するステップと、
前記ネットワークサイトがオーサリング済みナビゲーションリンクを含むとき、前記ナビゲーション構造内にオーサリング済みナビゲーションオブジェクトを含めるステップと、
前記サイトのページをレンダリングするステップであって、前記ページが、前記ナビゲーション構造に対応するフィールドを含むレンダリングするステップと、
を備えたことを特徴とするネットワークサイトのナビゲーションを管理するためのコンピュータ実施方法。
【請求項２】
前記フィールドは、前記ナビゲーション構造内のルートページの子ナビゲーションオブジェクトを含むグローバルナビゲーションフィールドであることを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項３】
前記ルートページは、前記ナビゲーション構造の中間ノードに対応し、前記中間ノードは、前記中間ノードが後続の子ノードのルートノードであることを示すパラメータを有することを特徴とする請求項２に記載のコンピュータ実施方法。
【請求項４】
前記フィールドは、前記ページの子ナビゲーションオブジェクトを含むセクションナビゲーションフィールドであることを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項５】
前記ページに関連付けられたメタデータの集合を検査して、どのナビゲーションオブジェクトを前記フィールド内に含めるかを決定するステップをさらに備えたことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項６】
前記ナビゲーションオブジェクトは、前記メタデータが、ナビゲーションオブジェクトが前記ナビゲーションに含められるべきでないことを示すように設定されたパラメータを含むとき、前記フィールドへの包含から除去されることを特徴とする請求項５に記載のコンピュータ実施方法。
【請求項７】
前記ナビゲーションオブジェクトは、前記ページがレンダリングされているユーザに関連付けられた識別が、ナビゲーションオブジェクトが前記ユーザに対して禁止されていることを示すとき、前記フィールドへの包含から除去されることを特徴とする請求項５に記載のコンピュータ実施方法。
【請求項８】
前記ナビゲーションオブジェクトは、前記メタデータが、ナビゲーションオブジェクトに対応するコンテンツの公表に対応するスケジューリングされた時間に達していないことを示すように設定されたパラメータを含むとき、前記フィールドへの包含から除去されることを特徴とする請求項５に記載のコンピュータ実施方法。
【請求項９】
前記オーサリング済みナビゲーションオブジェクトを前記構造に含めるステップは、前記オーサリング済みナビゲーションオブジェクトが領域の子として扱われるように、前記オーサリング済みナビゲーションオブジェクトを前記ナビゲーション構造のターゲット領域へグラフティングするステップをさらに備えたことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項１０】
前記オーサリング済みナビゲーションオブジェクトは、前記ナビゲーション構造の２つの別々の部分をリンクするツリー内リンクに対応することを特徴とする請求項９に記載のコンピュータ実施方法。
【請求項１１】
前記オーサリング済みナビゲーションオブジェクトは、前記ナビゲーション構造の他のネットワークサイトの一部をリンクするツリー間リンクに対応することを特徴とする請求項９に記載のコンピュータ実施方法。
【請求項１２】
キャッシュと、
ナビゲーションオブジェクトを作成して前記キャッシュに格納するように構成されたオブジェクトファクトリであって、前記ナビゲーションオブジェクトがネットワークサイトのナビゲーションリンクに対応するオブジェクトファクトリと、
前記オブジェクトファクトリに前記ナビゲーションオブジェクトを要求し、
前記ナビゲーションオブジェクトから、前記ナビゲーションリンクに関連付けられた階層に従って編成されるナビゲーション構造を生成し、
前記ネットワークサイトがオーサリング済みナビゲーションリンクを含むとき、前記ナビゲーション構造内のオーサリング済みナビゲーションオブジェクトをサポートし、および
前記ナビゲーション構造を前記サイトのページのレンダリングで使用するために転送する
ように構成されたサイトマッププロバイダと、
を備えたことを特徴とする前記ネットワークサイトのナビゲーションを管理するためのシステム。
【請求項１３】
前記ページは、前記ナビゲーション構造内のルートページの子ナビゲーションオブジェクトを含むグローバルナビゲーションフィールドと、前記ページの子ナビゲーションオブジェクトを含むセクションナビゲーションフィールドとのうちの、少なくとも１つを含むことを特徴とする請求項１２に記載のシステム。
【請求項１４】
前記ルートページは、前記ナビゲーション構造の中間ノードに対応し、前記中間ノードは、前記中間ノードが後続の子ノードのルートノードであることを示すパラメータを有することを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記ページに関連付けられたメタデータの集合を検査して、どのナビゲーションオブジェクトを前記フィールド内に含めるかを決定するステップをさらに備えたことを特徴とする請求項１２に記載のシステム。
【請求項１６】
前記ナビゲーションオブジェクトは、前記メタデータが、ナビゲーションオブジェクトが前記ナビゲーションに含められるべきでないことを示すように設定されたパラメータを含むとき、前記フィールドへの包含から除去されることを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記オーサリング済みナビゲーションオブジェクトを前記構造に含めるステップは、前記オーサリング済みナビゲーションオブジェクトが領域の子として扱われるように、前記オーサリング済みナビゲーションオブジェクトを前記ナビゲーション構造のターゲット領域へグラフティングするステップをさらに含むことを特徴とする請求項１２に記載のシステム。
【請求項１８】
前記オーサリング済みナビゲーションオブジェクトは、前記ナビゲーション構造の２つの別々の部分をリンクするツリー内リンクと、前記ナビゲーション構造の他のネットワークサイトの一部をリンクするツリー間リンクとのうちの、少なくとも１つに対応することを特徴とする請求項１７に記載のシステム。
【請求項１９】
ネットワークサイトに関連付けられたナビゲーションリンクに対応するナビゲーションオブジェクトを作成するステップと、
前記ナビゲーションオブジェクトからナビゲーション構造を生成するステップであって、前記ナビゲーション構造が、前記ナビゲーションリンクに関連付けられた階層に従って編成される生成するステップと、
前記ネットワークサイトがオーサリング済みナビゲーションリンクを含むとき、前記ナビゲーション構造内にオーサリング済みナビゲーションオブジェクトを含めるステップと、
前記ナビゲーション構造から選択されるナビゲーションオブジェクトをトリミングするステップであって、前記選択されるナビゲーションオブジェクトが各ナビゲーションオブジェクトに対応するメタデータに従って選択されるトリミングするステップと、
前記サイトのページをレンダリングするステップであって、前記ページが、前記選択されるナビゲーションオブジェクトがトリミングされた後の前記ナビゲーション構造に対応するフィールドを含むレンダリングするステップと、
を備えたことを特徴とするネットワークサイトのナビゲーションを管理するためのコンピュータ読取り可能媒体。
【請求項２０】
前記ナビゲーションオブジェクトは、前記メタデータが、ナビゲーションオブジェクトが前記ナビゲーションに含められるべきでないことを示すように設定されたパラメータを含むとき、トリミングされることを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２１】
前記ナビゲーションオブジェクトは、前記ページがレンダリングされているユーザに関連付けられた識別が、ナビゲーションオブジェクトが前記ユーザに対して禁止されていることを示すとき、トリミングされることを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２２】
前記ナビゲーションオブジェクトは、前記メタデータが、ナビゲーションオブジェクトに対応するコンテンツの公表に対応するスケジューリングされた時間に達していないことを示すように設定されたパラメータを含むとき、トリミングされることを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２３】
前記オーサリング済みナビゲーションオブジェクトを前記構造に含めるステップは、前記オーサリング済みナビゲーションオブジェクトが領域の子として扱われるように、前記オーサリング済みナビゲーションオブジェクトを前記ナビゲーション構造のターゲット領域へグラフティングするステップをさらに含むことを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ナビゲーション構造が階層に従って制御される一方で、ナビゲーション構造全体を通じて特定のナビゲーションがオーサリング可能である、統合ナビゲーションのためのシステムおよび方法に関する。
【背景技術】
【０００２】
ほぼすべてのウェブアプリケーションは、ページの集合で構成されている。ウェブアプリケーション開発者の最も関心のある事の１つは、これらページ間のナビゲーションを管理することである。ナビゲーションモデルは、ウェブページのより複雑な部分の１つである場合がある。複数のページで構成されるウェブサイト全体を横切ってナビゲーションを管理することは、困難なタスクである可能性がある。
【０００３】
ウェブサイトのナビゲーションを作成し、および管理するためのいくつかの方法は、以前に提供されている。これらの方法のいくつかには、ナビゲーションをオーサリングすることおよびこれをウェブページそれ自体に直接埋め込むこと、コンテンツとは別のナビゲーションを対象とする外部構造を提供すること、またはナビゲーションの構造をウェブサイトの構造から導出させることが含まれる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ナビゲーションをオーサリングすることによって、ナビゲーション構造をカスタマイズすることが可能であり、ウェブサイト開発者はウェブサイトのナビゲーションを作成および管理する上でかなりの柔軟性が与えられる。しかしながら、ウェブサイトの規模が増大するにつれて、これらオーサリングされたナビゲーションを同期状態で維持するために必要な作業も劇的に増加する。その反対に、階層に従ってナビゲーションを構築することによって、ウェブサイトが増大するにつれて管理は容易になるが、多くのカスタマイズが失われる。
【０００５】
ウェブサイトのナビゲーション構造が増大するのに応じて、これを一貫して管理できること、およびそれでもなおウェブサイトの作者に彼ら自身のナビゲーションを設計できる機能を与えることが可能な解決手段が求められている。
【課題を解決するための手段】
【０００６】
本発明の実施形態は、ナビゲーション構造が階層に従って制御される一方で、ナビゲーション構造全体を通じて特定のナビゲーションがオーサリング可能である、統合ナビゲーションのためのシステムおよび方法に関する。サイトのナビゲーション構造に対応するデータがキャッシュされる。キャッシュされたデータは、サイトのナビゲーションの階層を表す階層ツリー構造に対応する。階層ツリー構造を管理することによって、サイトをその構造に従って編成できるようになる。さらにオーサリングされたナビゲーションまたはリンクは、ナビゲーション構造全体を通じてサポートされる。
【０００７】
本発明の一態様によれば、サイトのナビゲーション構造は実行時に生成され、レンダリングされている現在のページ上のフィールドによって表される。リンクは、グローバルナビゲーションフィールドおよびセクションナビゲーションフィールドに従って編成される。グローバルナビゲーションフィールドには一般に、サイトの主要エリアへのリンクが含まれ、セクションナビゲーションフィールドには特定のエリアをターゲットとしたリンクが含まれる。したがって、ナビゲーション構造に対応するデータは各ページに対して同様であり、各ページに関連付けられた、グローバルナビゲーションフィールド向けリンクのテーブルとセクションナビゲーションフィールド向けリンクのテーブルとを備える。
【０００８】
本発明の他の態様によれば、オーサリングされたあるリンクは、ナビゲーション構造の１つのセクションをナビゲーション構造の他のセクションにグラフティング（ｇｒａｆｔｉｎｇ）することができる。グラフティングとは、サイトをナビゲートしているユーザの観点からすれば、リンクされたコンテナまたはページの子が、ナビゲーション構造の他のセクションの子として扱われるように生成された、グラフティングされたリンクを指す。
【０００９】
本発明の他の態様によれば、メタデータは各ページに対応してキャッシュされる。メタデータには、ページへのナビゲーションがどのように処理されるかに関するパラメータが含まれる。たとえばページは、関連付けられたスケジューリングパラメータを有することができる。スケジューリングパラメータは、指定の日付または時刻に達するまでコンテンツが公表されないようにする。以下でより詳細に説明する他のパラメータも含まれる。
【００１０】
本発明の他の態様によれば、ネットワークサイトに関連付けられたナビゲーションリンクに対応するナビゲーションオブジェクトが作成される。ナビゲーション構造はナビゲーションオブジェクトから生成される。ナビゲーション構造は、ナビゲーションリンクに関連付けられた階層に従って編成される。ネットワークサイトがオーサリングされたナビゲーションリンクを含む場合、オーサリングされたナビゲーションオブジェクトはナビゲーション構造内に含められる。その後、サイトのページは、そのページがナビゲーション構造に対応するフィールドを含む場所にレンダリングされる。
【発明を実施するための最良の形態】
【００１１】
次に、本明細書の一部を形成し、一例として本発明を実施するための特定の例示的実施形態を示す添付の図面を参照しながら、本発明についてさらに詳しく説明する。しかしながら、本発明は多くの異なる形式で具体化することが可能であり、本明細書に記載された実施形態に限定されるものとみなすべきではなく、むしろこれらの実施形態は、本開示が徹底的および完全なものとなるように、ならびに本発明の範囲を当業者に十分に伝えるように提供されるものである。とりわけ本発明は、方法または装置として具体化することができる。したがって本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、またはソフトウェアおよびハードウェアの態様を組み合わせた実施形態の形式を取ることが可能である。したがって以下の詳細な説明は、限定的な意味で行われるものではない。
【００１２】
（例示的なオペレーティング環境）
図１を参照すると、本発明を実施するための例示的なシステムには、コンピューティング装置１００などのコンピューティング装置が含まれる。コンピューティング装置１００は、クライアント、サーバ、移動装置、または任意の他のコンピューティング装置として構成することができる。非常に基本的な構成では、通常、コンピューティング装置１００は少なくとも１つの処理装置１０２およびシステムメモリ１０４を含む。コンピューティング装置の正確な構成および種類に応じて、システムメモリ１０４は揮発性（ＲＡＭなど）、不揮発性（ＲＯＭ、フラッシュメモリなど）、またはこの２つの何らかの組合せとすることができる。システムメモリ１０４は、通常、オペレーティングシステム１０５、１つまたは複数のアプリケーション１０６を含み、プログラムデータ１０７を含むこともできる。一実施形態では、アプリケーション１０６は、本発明の機能を実装する統合ナビゲーションアプリケーション１２０を含む。図１では、この基本構成は破線１０８内部の構成要素によって示される。
【００１３】
コンピューティング装置１００は、追加の特徴または機能を有することができる。たとえばコンピューティング装置１００は、たとえば磁気ディスク、光ディスク、またはテープなどの追加のデータ記憶装置（取り外し可能および／または固定）を含むこともできる。こうした追加の記憶装置は、図１では取り外し可能記憶装置１０９および固定の記憶装置１１０によって示される。コンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するための任意の方法または技術で実装された、揮発性および不揮発性、取り外し可能および固定の媒体を含むことができる。システムメモリ１０４、取り外し可能記憶装置１０９、および固定の記憶装置１１０は、すべてコンピュータ記憶媒体の例である。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは、所望の情報を格納するために使用可能であり、コンピューティング装置１００がアクセス可能な任意の他の媒体が含まれるが、これらに限定されるものではない。任意のこうしたコンピュータ記憶媒体は、装置１００の一部とすることができる。コンピューティング装置１００は、キーボード、マウス、ペン、音声入力装置、タッチ入力装置などの、入力装置１１２を含むこともできる。ディスプレイ、スピーカ、プリンタなどの出力装置１１４も含めることができる。
【００１４】
コンピューティング装置１００は、装置がネットワークを介するなどによって他のコンピューティング装置１１８と通信できるようにする通信接続１１６も含む。通信接続１１６は、通信媒体の一例である。通信媒体は、通常、コンピュータ読取り可能命令、データ構造、プログラムモジュール、あるいは搬送波または他の移送メカニズムなどの変調データ信号中の他のデータによって具体化することが可能であり、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号内の情報を符号化するような方法でその特徴のうちの１つまたは複数を設定あるいは変更した信号を意味する。例を挙げると、通信媒体には有線ネットワークまたはダイレクトワイヤード接続などの有線媒体、ならびに音波、ＲＦ、赤外線、および他の無線媒体などの無線媒体が含まれるが、これらに限定されるものではない。本明細書で使用されるコンピュータ読取り可能媒体という用語には、記憶媒体および通信媒体の両方が含まれる。
【００１５】
（統合ナビゲーション）
本明細書および特許請求の範囲全体を通じて、「ページ」または「ウェブページ」という用語は、固有のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）によって識別されるネットワーク（たとえばＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）上の文書を指す。「サイト」または「ウェブサイト」という用語は、１つまたは複数のページ（たとえばホームページ）を含むことが可能なネットワーク（たとえばＷｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）上の場所を指す。「ルートページ」という用語は、一般に、ルートディレクトリという用語がファイルシステム内のトップディレクトリを指すのとほぼ同様に、サイトに関するナビゲーション構造内のトップページを指す。
【００１６】
「トップナビゲーション」または「グローバルナビゲーション」という用語は、一般に、通常はルートのメインサブ領域からなるほとんどのページのトップにある水平なバーを指し、しばしばサイト内の他のページへの何らかのリンクを指す。サブサイトが領域の集まり全体に関するそれ自体のグローバルナビゲーションを有することができるというシナリオもある。グローバルナビゲーションフィールドの外観は、サイト作者の選択に応じて多くのスタイル（たとえばスタックタブ）を取ることができる（図２の２１０を参照のこと）。
【００１７】
「セクションナビゲーション」という用語は、一般に、通常は領域によって異なるが、依然として単一領域内では一貫した、ナビゲーションフィールドを指す。セクションナビゲーションは、サイトに伴うサブ領域またはページを含むことができる。時としてセクションナビゲーション内のリンクの基礎となる階層は、フライアウト（ｆｌｙｏｕｔ）または静的にネストされたリンクによって表示される。セクションナビゲーションは、サイトの他の領域へのリンクまたはセクションナビゲーション内の「外部リンク」を有することができる。セクションナビゲーションフィールドの外観は、ページの左側に示される何らかの典型的なセクションナビゲーションフィールドを備えた多くのスタイルを取ることもできる（図２の２２０を参照のこと）。
【００１８】
本発明の実施形態は、ナビゲーション構造全体を通じて挿入される変更および明確にオーサリングされたリンクを提供しながら、サイトの作者がサイトの階層を離れてサイトのナビゲーションを駆動できるようにする事に関する。サイトのナビゲーション構造は、コンテナおよび項目に対応するノード、ならびにリンク自体に対応するブランチを備えた、ツリーとして表される（図３および４を参照のこと）。本発明によれば、ツリー内（すなわち同じサイト内）またはツリー間（すなわち異なるサイト内）のノードをリンクする、オーサリングされたリンクを追加することができる。以前のツリー内またはツリー間リンクは、新しいリンクが特にサイトの階層と競合した場合にそれぞれをオーサリングする必要があった。こうした事は、リンクされたノードが多数の子ノード（たとえば、階層構造中で下位のノード）を含むコンテナに対応する場合、極端に困難となった。これらの子ノードはそれぞれ、特にそのノード用に新しいリンクをオーサリングする必要もある。加えて、これらの新しいリンクは他方のサイトまたはサイト内の他の場所にあるリンクの複製となるため、時間だけでなくスペースも無駄になる。さらに、他方の場所または他方のサイト内での変更が、これらの新しくオーサリングされた複製リンクでは反映されないことにもなる。
【００１９】
本発明は、これらのツリー内またはツリー間リンクを、これらのリンクが依然としてサイトの階層から離れて駆動されるように「仮想リンク」としてオーサリングすることができることによって、これらの問題すべてを解決する。これによって作者は、どれだけの項目またはコンテナを、サイト内の他の場所からまたは他のサイトから「グラフティング」したいのかを示すことができる。その後これらの項目およびコンテナは、これらの項目およびコンテナに対応するそれぞれのリンクをオーサリングする必要なしに、オーサリングされたリンクに対応するノードの子として表示される。
【００２０】
図２は、本発明に従ったサイト内の典型的なページの例示的な画面ショットを示す図である。ページ２００は、グローバルナビゲーションフィールド２１０およびセクションナビゲーションフィールド２２０を含む。一般に、グローバルナビゲーションおよびセクションナビゲーションは、サイトのナビゲーション構造のレンダリング表現である。ページの残りの部分は、ページのコンテンツ、またはページと対話するためにブラウザによって提供されたコンテンツおよび機能（たとえば、ファイルのプルダウンメニュー）のいずれかである。
【００２１】
グローバルナビゲーションフィールド２１０は、サイトの高位領域またはサブサイトへのリンクを提供する。他の実施形態では、グローバルナビゲーションフィールド２１０は他のサイトへのリンクも含むことができる。本発明の一実施では、グローバルナビゲーションフィールド２１０に含まれるリンクは、ナビゲーション構造のルートノード直下の子に対応する。しかしながら、ノードのメタデータパラメータを設定することによって、他のノードが有効なルートノードとして動作することができる。メタデータパラメータを設定すると、結果としてノードのグローバルナビゲーションリンクは、最上位ノードに関連付けられた以外のノードの子に使用されることになる。
【００２２】
セクションナビゲーションフィールド２２０はサイトの特定領域へのリンクを提供する。ページ上にセクションナビゲーションフィールド２２０を含めると、領域に関する低位リンクをレンダリングする。低位リンクを含めることで、グローバルナビゲーションフィールド２１０を高位リンクに絞ることができる一方で、これらのリンクがグローバルナビゲーションフィールド２１０に存在する場合に発生することになる水平スクロールを最小限にすることができる。
【００２３】
本発明の説明から、セクションナビゲーションおよびグローバルナビゲーションのフィールドは、本発明が実施されるフレームワークを提供することが理解されよう。しかしながら本発明は、このモデルに忠実に従わない（たとえば、グローバルナビゲーションフィールドが存在しないか、または別々のスタイルのナビゲーションフィールドを使用する）サイトにも等しく適用可能である。
【００２４】
図３に、本発明に従うツリー内リンクを含むページの例示的なツリーナビゲーション構造を示す。ツリー構造３１０の構築元であるメタデータは、サーバ３０２上のキャッシュ３０４内に格納される。メタデータのキャッシュについては、図５および６に関して以下でより詳細に説明する。ツリー構造３１０をランタイム中に生成し、サイトのナビゲーション階層全体を作成することができる。
【００２５】
ツリー構造３１０は、ノード（たとえばノード３１２およびノード３１４）およびノード間のリンク（たとえばリンク３１６およびリンク３１８）を含む。一般にツリー構造３１０は、サイトがルートノード３１２から始まり、下位のナビゲーションリンク（たとえばセクションリンク３３０）へと下方に続く、サイトの階層に従って構築される。一実施形態では、階層内でルートノード３１２の直下にあるノードが、現在のページ３１４上にレンダリングされるグローバルリンク３２０に対応する。
【００２６】
ツリー構造３１０はサイトの階層に基づくが、本発明は、ツリー内リンク３１８などのオーサリングされたリンクも提供する。ツリー内リンク３１８はサイトの階層に従わず、代わりにサイトの他のセクション内の他のノードへのセクションリンクを提供する。
【００２７】
ツリー内リンク３１８の宛先ノードを、現在のページ３１４の下のツリー構造３１０のセクションに「グラフティング」することができる。グラフティングによって、２つの領域間に単純なＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）参照とは異なるリンクが提供される。実際に領域のグラフティングは、グラフティングされる領域をあたかもターゲット領域の子であるかのようにナビゲーション構造のターゲット領域と結びつける（ｒｏｏｔ）。したがって、ナビゲーション構造がターゲット領域を介してトラバースされたときに、グラフティングされた領域の子に達することができる。したがって、ページのフィールド内にあるターゲット領域の子の表示は、ターゲット領域の通常の子と同様に働く。ツリー内リンク３１８の宛先ノードをグラフティングすると、論理階層の宛先ノード部分を物理的に階層内に配置することなく現在のページ３１４の下に、グラフティング済みリンクが作成される。グラフティングの利点は、ナビゲーション構造のグラフティングされた部分への更新が、ナビゲーション構造全体を通じて反映されることである。
【００２８】
いくつかのオペレーションを本発明のツリー構造３１０に従って開始することができる。オペレーションには、ｇｅｔｃｕｒｒｅｎｔ、ｇｅｔｐａｒｅｎｔ、ｇｅｔｒｏｏｔ、およびｇｅｔｃｈｉｌｄｒｅｎが含まれる。これらそれぞれのオペレーションは、実行時にツリー構造３１０を生成する際に使用することができる。他の実施形態では、本発明の精神または範囲を逸脱することなく、これらのオペレーションを本明細書で説明した以外の名前で呼ぶことができる。
【００２９】
ｇｅｔｃｕｒｒｅｎｔオペレーションは、サイト内で現在ナビゲートされているページに対応する現在のノードを戻す。ｇｅｔｐａｒｅｎｔオペレーションは、現在のノードを取り、この現在のノードのすぐ上の親ノードを戻す。
【００３０】
ｇｅｔｒｏｏｔオペレーションの場合、ノードがそれ自体の親であることを示すパラメータを備えたノードに達するまで、一連のｇｅｔｐａｒｅｎｔオペレーションを使用してツリー構造をさかのぼる。これによって、ナビゲーション構造内で最上位ノード以外のノードをルートノードとして動作させることができる。ルートノードとして動作している場合、ノードは、階層内でノードの下にあるページに適用可能なそれ自体のグローバルナビゲーションリンクの集合を定義することができる。
【００３１】
ｇｅｔｃｈｉｌｄｒｅｎオペレーションの場合、子情報が要求されるノードが渡される。その後、そのノードの子が発見される。子が戻される前に、それぞれのノードに付随するメタデータに従って子のリストをトリミングすることができる。たとえば、ナビゲーションに含まれない、現在のユーザによるアクセスが許可されていない、または現在公表の予定がないものとして指定された子は、ｇｅｔｃｈｉｌｄｒｅｎオペレーションによって戻された子からトリミングされる。他の実施形態では、同じエンティティによって管理されるサイトへのオーサリング済みリンクに対して、「ナビゲーションに含まれる」パラメータのチェックは不要である。このリンクは特別にオーサリングされているため、ｇｅｔｃｈｉｌｄｒｅｎオペレーションで子の中に含まれるはずであると想定される。
【００３２】
図４に、本発明に従った他のサイトへのツリー間リンクを含む例示的なツリーナビゲーション構造を示す。第１のサイトは、第１のツリー構造４１０によって表される。ツリー構造４１０は、サーバ４０２上に配置されたキャッシュ４０４に格納されたメタデータに対応する。第２のサイトは、第２のサーバであるサーバ４３０上の第２のキャッシュであるキャッシュ４３２に格納されたメタデータによって表される。
【００３３】
図３と同様に、各ツリー構造（第１のツリー構造４１０、第２のツリー構造４４０）には、リンク（たとえばリンク４１６、リンク４１８、リンク４２０）によって接続されたノード（たとえばノード４１２、ノード４１４）が含まれる。追加のオーサリング済みリンクであるツリー間リンク４２０も含まれる。ツリー間リンク４２０は、サーバ上に配置されたサイトの１ページから、他のサーバ上に配置された他のサイトのページへのリンクを表す。他の実施形態では、図示されたような２つの別々のサーバではなく同じサーバ上にある２つの別々のサイト間に、ツリー間リンク４２０を作成することができる。
【００３４】
ツリー間リンク４２０などのツリー間リンクが、現在のサイトと同じエンティティによって管理される他のサイトにリンクされている場合、他方のサイトからの項目およびコンテナをツリー内リンク４１８と同様に現在のサイトに「グラフティング」することができる。グラフティングとは、図３の説明で上述したようなグラフティング済みリンクを確立することを指す。
【００３５】
他の型のツリー間リンクは、外部リンクであるか、または現在のサイトとは異なるエンティティによって管理される他のサイトへのリンクである。外部リンクは、宛先の階層に関する情報がわからないため、仮想リンクとして容易に使用できない場合がある。したがって、特定のコンテナおよび子を求めることは、こうした要求に対して宛先サイトを構築することができないため無効である可能性がある。しかしながら他の実施形態では、宛先サイトの構造に関する情報を要求することができるため、結果として仮想階層リンクを作成することができる。
【００３６】
図５に、本発明に従ったナビゲーション構造のノードに対応する例示的なデータ集合を示す。各ノードは、関連するノードデータ５００を有し、ノードデータ５００は、メタデータ５１０、グローバルナビゲーション５２０、およびセクションナビゲーション５３０を含む。グローバルナビゲーション５２０は、通常の子テーブル５２２およびオーサリング済みリンクテーブル５２４を含む。同様にセクションナビゲーション５３０は、通常の子テーブル５３２およびオーサリング済みリンクテーブル５３４を含む。
【００３７】
メタデータ５１０は、ノードデータ５００に関連付けられた特定のノードのパラメータを含む。メタデータ５１０は、１つまたは複数の包含パラメータ、スケジューリングパラメータ、およびセキュリティパラメータを含むことができる。包含パラメータは、パラメータが設定された場合にパラメータに関連付けられたノードを「ナビゲーションに含まれる」ようにするものである。スケジューリングパラメータは、ウェブサイトのコンテンツをスケジュールに従って公表できるようにするものである。今現在でないスケジューリングパラメータを備えたページは、公表されない。セキュリティパラメータを使用して、未許可のユーザが禁止されたページにアクセスできないようにすることができる。メタデータを使用すると、メタデータ５１０に含まれるパラメータの設定に従って、サイトを「トリミング」するかまたはページを除去することができる。
【００３８】
グローバルナビゲーション５２０は、関連付けられたページのグローバルナビゲーションフィールドに含まれるリンクを含む。現在の実施形態では、サイトの階層に従って生成されたグローバルリンクが通常の子テーブル５２２に含まれ、オーサリング済みのグローバルリンクがオーサリング済みリンクテーブル５２４に含まれる。オーサリング済みリンクは、ツリー内リンク、ツリー間リンク、およびサイトの構造に従って生成されたものとは対照的にサイト開発者によってオーサリングされた外部リンクを含む。他の実施形態では、リンクはそれぞれのフィールドに従って分離されない。
【００３９】
セクションナビゲーション５３０は、関連付けられたページのセクションナビゲーションフィールドに含まれるリンクを含む。グローバルナビゲーション５２０と同様に、サイトの階層に従って生成されたセクションリンクが通常の子テーブル５３２に含まれ、オーサリング済みのセクションリンクがオーサリング済みリンクテーブルに含まれる。
【００４０】
一実施形態では、メタデータ５１０内のセキュリティパラメータは、アクセスを制限されたリソースにユーザがナビゲートする機能を制御するために使用される。サイトの階層からナビゲーション構造が生成されると、あるページを構造からトリミングするか、またはユーザの識別に基づいてサイトにアクセスしているユーザをアクセスできないようにすることができる。あるユーザは、サイトの選択されたページまたは他のリソースにアクセスできない場合がある。他のサイトのグラフティング済み部分について、異なる許可の集合が適用可能である。現在のサイトにアクセスできるユーザは、その識別に基づいてサイトのグラフティング済み部分にアクセスできない場合がある。一実施形態では、他のサイトの一部がグラフティングされた場合、本発明は、リソースのセキュリティを維持するために他のサイトのセキュリティ設定を移行する。
【００４１】
他の実施形態では、ノードデータ５００は、セクションナビゲーションフィールドおよびグローバルナビゲーションフィールドをレンダリングする際に使用される他のデータとは別にキャッシュされる。
【００４２】
図６に、本発明に従ったナビゲーション構造をキャッシュおよび生成するための例示的なシステムを示す。システム６００は、サイトマッププロバイダ６０２、領域インターフェース６０４、ページインターフェース６０６、外部リンクインターフェース６０８、およびオブジェクトファクトリ６１０を含む。
【００４３】
サイトマッププロバイダ６０２は、前述のｇｅｔｃｕｒｒｅｎｔ、ｇｅｔｐａｒｅｎｔ、ｇｅｔｒｏｏｔ、およびｇｅｔｃｈｉｌｄｒｅｎオペレーションを使用して、階層ナビゲーション構造を生成する。この情報に関するサイトホスティングサービスの一部に直接アクセスする代わりに、領域インターフェース６０４、ページインターフェース６０６、および外部リンクインターフェース６０８などのインターフェースを使用して、サイトマッププロバイダ６０２からの要求への応答が戻される。これらのインターフェースは、オブジェクトファクトリ６１０によって生成されるオブジェクトである。
【００４４】
オブジェクトファクトリ６１０は、サイトレンダリングサービスとの実際の通信を提供し、様々なオペレーション（たとえばｇｅｔｌｉｎｋ）を介してデータを取得する。その後オブジェクトファクトリは、インターフェースのうちの１つにデータを書き込み、これをサイトマッププロバイダ６０２に戻す。インターフェースはオブジェクトファクトリ６１０によってキャッシュされる。インターフェースは、ナビゲーション構造のノードに関するメタデータおよびリンクデータを含むナビゲーションオブジェクトに対応する。サイトマッププロバイダ６０２と通信するためのインターフェースを使用することによって、ナビゲーション構造の構築および管理をサイトのレンダリングとは別にするか、または別のコンピューティング装置上でリモートにすることができる。他の実施形態では、インターフェースが使用されず、サイトマッププロバイダ６０２はその要求を直接サイトレンダリングサービスに提供する。
【００４５】
一実施形態では、システム６００は、ナビゲーション構造のノードに関連付けられたセキュリティパラメータをキャッシュする際にも使用される。一例では、パラメータはノードがその親ノードと同じ権利を有するか否か、またはユーザが同様にアクセス可能であるか否かを示す。本発明は、ナビゲーション構造全体に対してこの情報を格納し、それによってノードに対応するページがレンダリングされる場合にセキュリティチェックの反復を減らす。
【００４６】
他の実施形態では、サイトマッププロバイダは、ナビゲーション構造の生成を制御するためのそれ自体のパラメータの集合を有する。たとえば継承無視（ｉｇｎｏｒｅ  ｉｎｈｅｒｉｔ）ルートパラメータは、中間ノードがルートノードとして動作しているか否かをサイトマッププロバイダ６０２に無視させる。中間ルートノードが無視されると、オペレーションはナビゲーション構造の全高さをのぼる。
【００４７】
他の実施形態では、サイトマッププロバイダ６０２による要求（たとえばｇｅｔｃｈｉｌｄｒｅｎ）の結果をソートすることができる。結果は、開発者が結果の順序を選択する（たとえば、セクションナビゲーションフィールドに表示される子の順序を選択する）ように手操作でソートするか、または各結果に関連付けられたメタデータに従って自動的にソートすることができる。さらに、結果の中で戻される項目のタイプ（たとえばページ、オーサリング済みリンクなど）を別々にソートするか、または異なるメタデータに従ってソートすることもできる。
【００４８】
図７に、本発明に従うページに関連付けられたナビゲーションのためのオンページ編集を含むページの例示的な画面ショットを示す。ページ７００は、図２と同様に、グローバルナビゲーションフィールド７１０およびセクションナビゲーションフィールド７２０を含む。しかしながらページ７００は、さらにオンページ編集要素７３０および７４０を含む。オンページ編集要素７３０および７４０のアイコンおよび選択によって、ユーザは、ページを見ながらページに関連付けられたナビゲーションを編集することができる。他の実施形態では、オンページ編集要素７３０および７４０は、ページに関連付けられたナビゲーションを編集するための特定のユーザインターフェースにユーザを移動させる（以下の図８〜９を参照のこと）。
【００４９】
図８に、本発明に従ったサイトのページに関連付けられたナビゲーションリンクを編集するための例示的なユーザインターフェースを示す。ユーザインターフェース８００は、開発者がナビゲーションリンクを編集できるようにするウェブベースのＵＩである。ナビゲーションリンクは、それらのタイトル、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）、それらがオーサリング済みリンクであるかどうか、それらの説明、およびそれらの種類に従ってリスト表示される。他の実施形態では、ナビゲーションリンクを異なるカテゴリに従ってリスト表示することができる。ユーザインターフェースを使用して、新しいリンク、新しいリンクカテゴリを追加するか、またはページに関連付けられたリンクの順序を変更することができる。
【００５０】
図９に、本発明に従ったサイトのページに新しいナビゲーションリンクを追加するための例示的なユーザインターフェースを示す。ユーザインターフェース９００は、ページ上で新しいナビゲーションリンクを確立するためのフィールドを提供する。このフィールドには、タイトルフィールド、説明、カテゴリ選択フィールド、リンクが外部であるか内部であるかおよびそのＵＲＬの入力フィールド、ならびにナビゲーションリンクに関連付けてフライアウトを表示すべきかどうか、が含まれる。ユーザインターフェース９００に示されたフィールドとは異なる別のフィールドを、追加の実施形態に使用することができる。
【００５１】
図１０に、本発明に従った新しいリンクのドラッグアンドドロップを示すページの例示的な画面ショットを示す。ページ１０００は、図２と同様にグローバルナビゲーションフィールド１０１０およびセクションナビゲーションフィールド１０２０を含む。しかしながらページ１０００は、ドラッグアンドドロップオペレーション１０３０の描写をさらに含む。ドラッグアンドドロップオペレーション１０３０は、本発明に従って提供される例示的なオンページ編集機能である。ドラッグアンドドロップオペレーション１０３０は、リンクをページへ動的に直接挿入することに対応し、それと同時にそのページの以前に確立されたリンクの間でリンクをソートする。他の実施形態には、リンクおよび他のオペレーションの削除のオンページ編集機能も含まれる。
【００５２】
図１１に、本発明に従うサイトのページに関連付けられたナビゲーションリンクの順序をソートするための例示的なユーザインターフェースを示す。ユーザインターフェース１１００は、サイトに関連付けられたナビゲーションリンクをソートするための番号付け方式に従ってフィールドを提供する。ナビゲーションリンクは、指示された順序で提供される。リンクの順序は、特定のリンクに関連付けられた番号を変更することおよびユーザインターフェースを更新することによって変更される。
【００５３】
図１２は、本発明に従うサイトのナビゲーションにページを含めることを選択し、およびサイトのページをソートするための例示的なユーザインターフェースを示す図である。ユーザインターフェース１２００は、サイトのナビゲーション内に領域またはページを含めるための選択を提供する。この選択を使用すると、ページおよび他のリソースを追加するかまたは実際にリソースを削除することなくナビゲーションから削除することができる。ユーザインターフェース１２００は、手操作および自動の両方でのソートオプションを備えたサイトのリソースのソートも提供する。リソースの表示順序も選択することができる。他の実施形態には、サイトのリソースをソートするための追加のフィールドも含まれる。
【００５４】
図１３に、本発明に従うサイトのページに関連付けられた継承プロパティを選択するための例示的なユーザインターフェースを示す。ユーザインターフェース１３００は、サイトのグローバルナビゲーションおよびセクションナビゲーションの両方のための、継承プロパティの選択を含む。継承プロパティは、ページへの親サイトと同じナビゲーションリンクをそのページにも使用すべきであることを言明する。ページが継承プロパティを選択しない場合、親とは別のそれ独自のナビゲーションリンクの集合を使用することができる。
【００５５】
上記の仕様、例、およびデータは、本発明の構成の製造および使用に関する完全な説明を提供するものである。本発明の多くの実施形態は本発明の精神および範囲を逸脱することなく実行可能であるため、本発明は添付の特許請求の範囲内にある。
【図面の簡単な説明】
【００５６】
【図１】本発明の例示的実施形態で使用可能な例示的コンピューティング装置を示す図である。
【図２】本発明に従ったサイト内の典型的なページの例示的画面ショットを示す図である。
【図３】本発明に従ったツリー内リンクを含むページの例示的なツリーナビゲーション構造を示す図である。
【図４】本発明に従った他のサイトへのツリー間リンクを含む例示的なツリーナビゲーション構造を示す図である。
【図５】本発明に従ったナビゲーション構造のノードに対応する例示的なデータ集合を示すブロック図である。
【図６】本発明に従ったナビゲーション構造をキャッシュおよび生成するための例示的なシステムを示す図である。
【図７】本発明に従ったページに関連付けられたナビゲーションのためのオンページ編集を含む、ページの例示的な画面ショットを示す図である。
【図８】本発明に従ったサイトのページに関連付けられたナビゲーションリンクを編集するための例示的なユーザインターフェースを示す図である。
【図９】本発明に従ったサイトのページに新しいナビゲーションリンクを追加するための例示的なユーザインターフェースを示す図である。
【図１０】本発明に従った新しいリンクのドラッグアンドドロップを示す、ページの例示的画面ショットを示す図である。
【図１１】本発明に従ったサイトのページに関連付けられたナビゲーションリンクの順序をソートするための例示的なユーザインターフェースを示す図である。
【図１２】本発明に従った、サイトのナビゲーションにページを含めることを選択するためおよびサイトのページをソートするための、例示的なユーザインターフェースを示す図である。
【図１３】本発明に従ったサイトのページに関連付けられた継承プロパティを選択するための例示的なユーザインターフェースを示す図である。
【符号の説明】
【００５７】
２００、７００、１０００  ページ
２１０  グローバルナビゲーションフィールド
２２０  セクションナビゲーションフィールド
３１０  ツリー構造
３１６、４１６  リンク
４１２、４１４  ノード
６００  システム
８００、９００、１１００、１２００、１３００  ユーザインターフェース
【図１】
2006107429.tif 000003
【図２】
2006107429.tif 000004
【図３】
2006107429.tif 000005
【図４】
2006107429.tif 000006
【図５】
2006107429.tif 000007
【図６】
2006107429.tif 000008
【図７】
2006107429.tif 000009
【図８】
2006107429.tif 000010
【図９】
2006107429.tif 000011
【図１０】
2006107429.tif 000012
【図１１】
2006107429.tif 000013
【図１２】
2006107429.tif 000014
【図１３】
2006107429.tif 000015
【外国語明細書】
2006107429000001.pdf