JP4602650B2 - ナビゲーション生成装置およびプログラム - Google Patents
ナビゲーション生成装置およびプログラム Download PDFInfo
- Publication number
- JP4602650B2 JP4602650B2 JP2003284475A JP2003284475A JP4602650B2 JP 4602650 B2 JP4602650 B2 JP 4602650B2 JP 2003284475 A JP2003284475 A JP 2003284475A JP 2003284475 A JP2003284475 A JP 2003284475A JP 4602650 B2 JP4602650 B2 JP 4602650B2
- Authority
- JP
- Japan
- Prior art keywords
- navigation
- page
- web page
- information
- site
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
また、既存のWebページ作成支援ソフトウェアの中には、Webページに表示するナビゲーションの作成を支援するものもある。かかるソフトウェアにおいては、ナビゲーションに含めるリンクを選択するための方法として、Webサイトに含まれる全てのWebページへのリンクを選択する第1の方法と、ナビゲーションを表示するWebページとの相対的な関係(親ページ、子ページ等)で指定されたWebページへのリンクを選択する第2の方法とがあった。
かかるナビゲーションの作成は、既存のソフトウェアを用いれば比較的簡単に行うことはできる。しかしながら、大規模なWebサイトになると、満足のいくナビゲーションを作成することが困難になるという問題点があった。
即ち、大規模なWebサイトでは、トップページこそ共通するものの、1つのWebサイトの中に、例えば、製品Aに関するWebページ群と製品Bに関するWebページ群のように異なるテーマを持つ複数のWebページ群が含まれる場合がある。このようなWebサイトについてのナビゲーションを生成する場合、既存ソフトウェアにおける第1の方法では、全てのWebページ上のナビゲーションに、製品Aに関するWebページへのリンクおよび製品Bに関するWebページへのリンクが含まれることになってしまう。本来、製品Aに関するWebページ上のナビゲーションには製品Bに関するWebページへのリンクは含めたくなく、製品Bに関するWebページ上のナビゲーションには製品Aに関するWebページへのリンクは含めたくないという要望があるのであるが、第1の方法では、そのような要望に応えたナビゲーションを生成することができない。
しかしながら、第2の方法を用いた場合、以下に述べるような別の問題が生じてしまう。
即ち、相対的な関係に応じてスタイルを定義したテンプレートを用いてナビゲーションを生成すると、同じWebページへのリンクであってもナビゲーションが表示されるWebページによって異なるスタイルで表示されてしまうということである。
例えば、ナビゲーションを表示するWebページの親ページへのリンクはスタイルAで、ナビゲーションを表示するWebページ自身またはその兄弟ページへのリンクはスタイルBで、ナビゲーションを表示するWebページの子ページへのリンクはスタイルCで表示することが定義されていたとする。また、あるWebサイトにおいて、「1.htm」の子ページが「2.htm」であり、その子ページが「3.htm」であり、その子ページが「4.htm」であり、その子ページが「5.htm」であったとする。この場合、「2.htm」、「3.htm」、「4.htm」にナビゲーションを作成したとすると、「3.htm」へのリンクは、「2.htm」上のナビゲーションではスタイルCで表示され、「3.htm」上のナビゲーションではスタイルBで表示され、「4.htm」上のナビゲーションではスタイルAで表示されることになってしまう。つまり、同じ「3.htm」へのリンクであるにもかかわらず、ナビゲーションが表示されるWebページによって表示されるスタイルが異なることとなってしまい、これも、各Webページを行き来するユーザにとって分かりやすいナビゲーションを生成したいという要望に応えることになっていない。
また、本発明は、ナビゲーションを生成するための設定を行う情報管理装置として捉えることもできる。その場合、本発明の情報管理装置は、Webサイトに含まれる特定のWebページの指定を受け付ける受付手段と、この受付手段が指定を受け付けた特定のWebページをルートとする部分木に含まれる少なくとも1つのWebページへのリンクを含むナビゲーションを生成するための設定を行う設定手段とを備えている。
更にまた、本発明は、ナビゲーションを生成するための設定を行う情報管理装置における方法として捉えることもできる。その場合、本発明のサイト構造管理方法は、Webサイトに含まれる特定のWebページの指定を受け付けるステップと、指定された特定のWebページをルートとする部分木に含まれる少なくとも1つのWebページへのリンクを含むナビゲーションを生成するための設定を、所定の記憶装置に記憶されたWebサイトの木構造の情報に対して行うステップとを含んでいる。
更に、本発明は、コンピュータにナビゲーションを生成するための設定を行う機能を実現させるためのコンピュータプログラムとして捉えることもできる。その場合、本発明のプログラムは、コンピュータに、Webサイトに含まれる特定のWebページの指定を受け付ける機能と、指定された特定のWebページをルートとする部分木に含まれる少なくとも1つのWebページへのリンクを含むナビゲーションを生成するための設定を行う機能とを実現させる。
まず、本実施の形態におけるナビゲーション生成装置の構成について説明する。
図1は、本実施の形態におけるナビゲーション生成装置の全体構成を示した図である。
図1に示すように、このナビゲーション生成装置は、サイト構造記憶手段11と、ナビゲーションルート設定手段12と、ページ記憶手段13と、ナビゲーションタグ挿入手段14と、ページ選択手段15と、構造情報生成手段16と、テンプレート記憶手段17と、ナビゲーション生成手段18とを備えている。
なお、本実施の形態では、Webサイトに含まれる各ページに対し、レベルを定義する(以下、このレベルを「サイト構造におけるレベル」という)。具体的には、トップページのレベルを1とし、トップページの子ページのレベルを2とし、トップページの子ページの子ページのレベルを3とし、レベルを表す数値は、ルートからリーフに向かうに従って大きくなるように定義する。
ここで、「ナビゲーションルート」とは、ナビゲーションの基点となるページのことである。Webサイトの木構造は、通常、幾つかの小さな部分木に分けることができるが、あるページがナビゲーションルートに設定されると、そのページをルートとする特定の部分木を構成する各ページがナビゲーションに含まれることになる。
なお、本実施の形態では、ナビゲーションに含まれる各ページに対しても、レベルを定義する(以下、このレベルを「ナビゲーションにおけるレベル」という)。具体的には、ナビゲーションルートのレベルを1とし、ナビゲーションルートの子ページのレベルを2とし、ナビゲーションルートの子ページの子ページのレベルを3とし、レベルを表す数値は、ナビゲーションルートからリーフに向かうに従って大きくなるように定義する。
ナビゲーションタグ挿入手段14は、ページ記憶手段13に記憶されたページ記述にナビゲーションタグを挿入する手段である。
ページ選択手段15は、サイト構造記憶手段11に記憶されたサイト構造情報に含まれるページの中から、ナビゲーションに含めるページを選択する手段である。
構造情報生成手段16は、ページ選択手段15により選択されたページのラベルおよびパス、他のページとの関係等を含む構造情報を生成する手段である。
テンプレート記憶手段17は、ナビゲーションのスタイルを定義したテンプレートを記憶する手段である。なお、テンプレートは、アプリケーションプログラムが提供したものを用いることもできるし、ユーザが独自に作成したものを用いることもできる。
ナビゲーション生成手段18は、構造情報生成手段16により生成された構造情報と、テンプレート記憶手段17に記憶されたテンプレートとに基づき、ナビゲーションを生成する手段である。
補助記憶装置には、本実施の形態を実現するためのコンピュータプログラムが記憶され、中央処理装置(CPU)がこのコンピュータプログラムをメインメモリに読み込んで実行することにより、ナビゲーションルート設定手段12、ナビゲーションタグ挿入手段14、ページ選択手段15、構造情報生成手段16、ナビゲーション生成手段18の各手段が実現される。また、サイト構造記憶手段11、ページ記憶手段13、テンプレート記憶手段17の各手段における記憶領域への入出力を制御する機能についても、同様の動作により実現されることとしてよい。
また、サイト構造記憶手段11、ページ記憶手段13、テンプレート記憶手段17の各手段における記憶領域としての機能は、補助記憶装置を用いて実現してもよいし、メインメモリを用いて実現してもよい。また、これらの記憶手段に記憶された各データは、インターネット等の通信回線を介してダウンロードされたものであってもよい。
なお、このいずれの構成においても、図1には示していないが、入力装置および出力装置に対するユーザインターフェースを実現する機能が必要となる。例えば、Webサイトの木構造をそのWebサイトに含まれる各ページの区別ができる形式で表示する機能、Webサイトに含まれるどのページがナビゲーションルートに設定されているかが分かる形式でその旨の情報を表示する機能等である。
図2は、ナビゲーション生成装置に対するユーザの操作の流れを示したフローチャートである。
まず、ユーザは、サイト構造を作成し、そのサイト構造を表すサイト構造情報をサイト構造記憶手段11に記憶する(ステップ201)。次に、ナビゲーションルート設定手段12を用いて、サイト構造記憶手段11に記憶されたサイト構造情報に含まれる特定のページをナビゲーションルートに設定する(ステップ202)。
一方、この時、ページ記憶手段13には、サイト構造記憶手段11に記憶されたサイト構造情報に含まれる各ページのページ記述が記憶されているものとする。なお、これらのページ記述は、サイト構造の作成と同時に設けられてもよいし、サイト構造の作成の前後の任意のタイミングで設けられてもよい。これらの準備が整うと、ユーザは、ページに表示するナビゲーションを作成する操作を行う。
ここで、iがページ数以下でない場合、処理は終了するが、iがページ数以下である場合、ユーザは、そのページにナビゲーションを挿入するかどうか判断する(ステップ204)。そのページがナビゲーションを挿入したいページである場合、ユーザは、ナビゲーションタグ挿入手段14を用いて、ナビゲーションタグをページに挿入し(ステップ205)、その後、ナビゲーションの自動作成を指示する(ステップ206)。
また、そのページがナビゲーションを挿入したいページでなかった場合、または、ナビゲーションの自動作成が終了した場合、ユーザは、ページ記憶手段13に記憶された次のページに着目し、上記と同様の処理を行う。即ち、iに1を加算し(ステップ207)、ステップ203に戻り、iがサイト構造情報に含まれるページ数以下であれば、ステップ204〜206の処理を繰り返す。
本実施の形態におけるユーザの操作の流れは以上の通りである。
以下、図2に示したユーザの操作により起動されるソフトウェアの処理動作のうち、本実施の形態に特有のものについて、更に詳しく説明する。
図3は、ナビゲーションルート設定手段12によるナビゲーションルートの設定処理の動作を示したフローチャートである。
サイト構造記憶手段11に記憶されたサイト構造情報の特定のページをナビゲーションルートに設定する指示があると、ナビゲーションルート設定手段12は、まず、その対象となっているページを特定する(ステップ301)。次に、ナビゲーションルート設定手段12は、サイト構造記憶手段11に記憶されたサイト構造情報を読み出し、読み出されたサイト構造情報におけるそのページのノードの属性として、そのページがナビゲーションルートであることを示す情報を付加する(ステップ302)。最後に、ナビゲーションルート設定手段12は、指定されたページをナビゲーションルートに設定したことを示す情報を出力する(ステップ303)。
以上により、ナビゲーションルート設定手段12によるナビゲーションルートの設定処理は終了する。
図4は、ナビゲーションタグ挿入手段14によるナビゲーションタグの挿入処理の動作を示したフローチャートである。
ナビゲーションタグ挿入手段14は、まず、ページ記憶手段13に記憶されたページのうち、ナビゲーションを挿入するページを読み込み、保持しておく。そして、ナビゲーションの作成の際に用いるテンプレートの選択を受け付ける(ステップ401)。また、ナビゲーションに含めるページを選択するための情報、例えば、ページのレベルの範囲を示す開始レベル・終了レベルの指定を受け付ける(ステップ402)。そして、ナビゲーションタグ挿入手段14は、先に読み込んでおいたページに対し、選択されたテンプレートを示す情報と、ページを選択するためのページ選択情報とを含むナビゲーションタグを書き込む(ステップ403)。最後に、ナビゲーションタグ挿入手段14は、ナビゲーションタグを挿入したことを示す情報を出力する(ステップ404)。
以上により、ナビゲーションタグ挿入手段14によるナビゲーションタグの挿入処理は終了する。この後、ユーザが、ページの保存を要求したり、ナビゲーションの自動生成を明示的に要求したりしたタイミングで、ページ選択手段15に制御が移るが、その際、ナビゲーションタグ挿入手段14からページ選択手段15へ、ナビゲーションタグが挿入されたページが受け渡される。
図5は、ページ選択手段15、構造情報生成手段16、および、ナビゲーション生成手段18によるナビゲーションの自動生成処理の動作を示したフローチャートである。
ページ選択手段15は、まず、サイト構造記憶手段11に記憶されたサイト構造情報を読み込み、保持しておく。そして、読み込んだサイト構造情報の中で、現在ナビゲーションを挿入しようとしているページ(以下、「現在ページ」という)の位置を特定する(ステップ501)。次に、ページ選択手段15は、そのページがトップページであるかどうかを判定する(ステップ502)。そのページがトップページである場合は、処理はステップ505に進むが、トップページでない場合は、そのページがナビゲーションルートであるかどうかを判定する(ステップ503)。ここで、そのページがナビゲーションルートである場合は、処理はステップ505に進むが、ナビゲーションルートでない場合は、そのページの親のページの情報を取得し(ステップ504)、ステップ502に戻る。そして、同様の処理をナビゲーションルートまたはトップページに辿りつくまで行う。
一方、ナビゲーションルートまたはトップページに辿り着いた場合、ページ選択手段15は、そのページのナビゲーションにおけるレベルを1とする(ステップ505)。
以上により、ページ選択手段15による処理は終了し、構造情報生成手段16に制御が移る。なお、その際、ページ選択手段15から構造情報生成手段16へ、選択されたページを特定するための識別情報と、ナビゲーションタグが挿入されたページと、サイト構造情報とが受け渡される。
この処理が終了すると、ナビゲーション生成手段18に制御が移る。なお、その際、構造情報生成手段16からナビゲーション生成手段18へ、構造情報と、ナビゲーションタグが挿入されたページとが受け渡される。
以上により、ナビゲーションの自動生成処理は終了する。
本具体例では、サイトエディタ上で、図6に示すようなサイト構造が作成されているとする(ステップ201)。これに対するサイト構造情報は、例えば、XMLにより記述され、図7に示すようなものとなる。即ち、図7のようなサイト構造情報がサイト構造記憶手段11に記憶されている。
このようなサイト構造情報に対し、ナビゲーションルート設定手段12がナビゲーションルートを設定する処理を具体的に説明する。
まず、「newpage2」に対応するHTMLファイル「newpage2.html」が読み込まれ、エディタには、図12に示すような画面が表示されている。図12では、「newpage2.html」の編集領域に何も記述されていないが、何らかのテキストを記述した後に以降の操作を行うようにしてもよい。
図12において、例えば、メニューバーの「Insert」からナビゲーションの挿入を指示することで、制御はナビゲーションタグ挿入手段14に渡され、ナビゲーションタグ挿入手段14が、図13に示すようなナビゲーションタグ挿入ダイアログを表示する。
ユーザが、表示されたテンプレートの中から使いたいテンプレートをクリックすると、「Specification File」欄に、その選択されたテンプレートのロケーションおよびファイル名が表示される。ここでは、テンプレートとして「sitemap_vertical.html」を選択しており、その結果、ロケーションとして、「/WebContent」が、ファイル名として、「sitemap_vertical.html」が表示されている。
また、ナビゲーションタグ挿入ダイアログにおいては、ナビゲーションに含めるページを選択するための情報として、ページのナビゲーションにおけるレベルの範囲を指定できるようになっている。ここでは、「Start level」欄で指定された「1」から「End level」欄で指定された「3」までがレベルとして指定されている。なお、この例では、ナビゲーションに含めるページを選択するための情報として、レベル範囲を指定するようにしているが、他にも様々な指定のしかたが考えられる。他の指定方法については、後述するナビゲーションの設定の変更についての説明において詳しく述べる。
また、この時、エディタの画面表示は、図15に示すようなものとなる。即ち、ナビゲーションタグ挿入手段14は、「newpage2.html」の編集領域に、ナビゲーションタグが挿入されたことを示すアイコンを表示する(ステップ404)。このアイコンにおいては、左半分がナビゲーションタグの開始を示し、右半分がナビゲーションタグの終了を示している。但し、このアイコンは、HTMLエディタ上でのみ表示されるものであり、HTMLファイルをブラウザで開いた時には表示されない。
まず、ページ選択手段15は、サイト構造記憶手段11に記憶されたサイト構造情報を参照し、現在ページの位置を特定する(ステップ501)。この例では、「newpage2」にナビゲーションを挿入しようとしているので、「newpage2」の位置を特定する。次に、ページ選択手段15は、「newpage2」がトップページであるかどうかを判定する(ステップ502)。ここでは、「newpage2」はトップページではないので、次に、ナビゲーション生成手段18は、「newpage2」がナビゲーションルートであるかどうかを判断する(ステップ503)。ここでは、「newpage2」はナビゲーションルートなので、「newpage2」のナビゲーションにおけるレベルを1に設定する(ステップ505)。なお、この時、「newpage2」の子ページである「newpage4」および「newpage5」のナビゲーションにおけるレベルは2に設定される。
その後、ページ選択手段15は、選択されるページが「newpage2」、「newpage4」、「newpage5」であることを示す情報と、ナビゲーションタグ挿入後のページと、サイト構造情報とを構造情報生成手段16に受け渡す。
具体的には、構造情報生成手段16は、まず、ページ選択手段15より受け渡されたサイト構造情報の中から、「newpage2」、「newpage4」、「newpage5」により構成される部分木を抽出する。なお、部分木を構成する「newpage2」、「newpage4」、「newpage5」には、それぞれのページのラベルやパス等の情報も含まれているので、以下では、これらの情報の集合を「アイテム」と呼ぶことにする。
ここでは、図13の「Thumbnail」欄に示すように、各ページへのリンクをリスト形式で含むナビゲーションを作成しようとしているので、構造情報生成手段16は、部分木を所定の規則に則ってリスト構造の構造情報に変換する。例えば、「newpage2」、「newpage4」、「newpage5」をこの順で含むリスト構造を作成する。
また、各アイテムには、対応するページのナビゲーションにおけるレベルを示す「level」、そのページが現在ページであることを示す「self」、そのページが現在ページの直系の祖先であることを示す「ancestor」等の属性が付加される。
具体的には、「newpage2」については、「level=0」、「self=true」、「ancestor=false」等が付加され、「newpage3」については、「level=1」、「self=false」、「ancestor=false」等が付加され、「newpage4」については、「level=1」、「self=false」、「ancestor=false」等が付加される。なお、ユーザインターフェース上は、ルートをレベル1と定義したが、コンピュータ内部においては、ルートを「level=0」と定義するものとする。
リスト構造の構造情報が生成されると、構造情報生成手段16は、その構造情報をナビゲーション生成手段18に受け渡す。
図16に、テンプレートの例を示す。このテンプレートにおいて、ナビゲーションとして出力される部分は、表(<table>〜</table>)として定義されており、構造情報に含まれる各アイテムについて、表の中身が実行される。このテンプレートにおいて、表の中身には、各アイテムに付加された属性を組み合わせた条件による場合分けがなされている。ここでは、「level」と「self」を組み合わせた4つの場合分けがなされており、各アイテムについて、アイテムが満足する条件に対して定義された部分がナビゲーションとして出力される。
まず、ナビゲーション生成手段18は、<table>タグ1601および<tbody>タグ1602を出力する。次に、タグ1603を解釈し、構造情報に含まれる各アイテムを変数"item"に設定して、タグ1603〜1606の部分を処理する。
この部分には、levelおよびselfの組み合わせによる条件が定義されている。即ち、selfかつlevel=0の場合、selfでなくかつlevel=0の場合、上記以外でselfの場合、それ以外の場合である。各アイテムについて、この部分の処理を行い、アイテムが満足する条件に対して定義された<tr>要素を取り出す。
即ち、ナビゲーション生成手段18は、まず、構造情報における一番目のアイテムである「newpage2」を変数"item"に設定して、タグ1603〜1606の部分を処理する。「newpage2」は、selfかつlevel=0であるので、<tr>要素1604を出力する。その際、「${item.label}」は「newpage2」のラベルに、「${item.href}」は「newpage2」のパスに置き換える。
次に、ナビゲーション生成手段18は、構造情報における二番目のアイテムである「newpage4」を変数"item"に設定して、タグ1603〜1606の部分を処理する。「newpage4」は、selfでなくかつlevel=0でもないので、<tr>要素1605を出力する。その際、「${item.label}」は「newpage4」のラベルに、「${item.href}」は「newpage4」のパスに置き換える。
更に、ナビゲーション生成手段18は、構造情報における三番目のアイテムである「newpage5」を変数"item"に設定して、タグ1603〜1606の部分を処理する。「newpage5」は、selfでなくかつlevel=0でもないので、<tr>要素1605を出力する。その際、「${item.label}」は「newpage5」のラベルに、「${item.href}」は「newpage5」のパスに置き換える。
以上の処理が終了すると、構造情報には他にアイテムが存在しないので、ナビゲーション生成手段18は、</tbody>タグ1607および</table>タグ1608を出力する。
以上の処理によりナビゲーションが自動生成された後のHTMLソースを、図17に示す。ナビゲーションタグの開始タグ「<!-- siteedit:navbar ... -->」と、終了タグ「<!-- /siteedit:navbar -->」の間に、以上の処理で出力されたナビゲーション(<table>...</table>)が挿入されている。
また、この時のエディタの画面表示例を図18に示す。この画面では、ナビゲーションタグの開始タグを表すアイコンと、終了タグを表すアイコンとの間に、「newpage2」、「newpage4」、「newpage5」へのリンクを含むナビゲーションの表示イメージが出力されている。
なお、「newpage3」にナビゲーションを挿入する場合も、上記と同様の処理を行い、「newpage3」、「newpage6」、「newpage7」へのリンクを含むナビゲーションが生成される。
図13に示したものは、リスト構造からなる構造情報を用いてナビゲーションを作成するものであったが、図19に示したものは、木構造からなる構造情報を用いてナビゲーションを作成するものである。
まず、ページ選択手段15は、サイト構造記憶手段11に記憶されたサイト構造情報を参照し、現在ページの位置を特定する(ステップ501)。この例では、「newpage」にナビゲーションを挿入しようとしているので、「newpage」の位置を特定する。次に、ページ選択手段15は、「newpage」がトップページであるかどうかを判定する(ステップ502)。ここでは、「newpage」はトップページなので、「newpage」のナビゲーションにおけるレベルを1に設定する(ステップ505)。なお、この時、「newpage」の子ページである「newpage2」および「newpage3」のナビゲーションにおけるレベルは2に設定され、「newpage2」の子ページである「newpage4」および「newpage5」、「newpage3」の子ページである「newpage6」および「newpage7」のナビゲーションにおけるレベルは3に設定される。
その後、ページ選択手段15は、選択されるページが「newpage」、「newpage2」、「newpage3」、「newpage4」、「newpage5」、「newpage6」、「newpage7」であることを示す情報と、ナビゲーションタグ挿入後のページと、サイト構造情報とを構造情報生成手段16に受け渡す。
具体的には、構造情報生成手段16は、まず、ページ選択手段15より受け渡されたサイト構造情報の中から、「newpage」、「newpage2」、「newpage3」、「newpage4」、「newpage5」、「newpage6」、「newpage7」により構成される部分木を抽出する。
ここでは、図19の「Thumbnail」欄に示すように、各ページへのリンクを木構造の形式で含むナビゲーションを作成しようとしているので、構造情報生成手段16は、部分木をそのまま木構造の構造情報とする。
また、図13のテンプレートを用いる場合と同様、各アイテムに、対応するページのナビゲーションにおけるレベルを示す「level」、そのページが現在ページであることを示す「self」、そのページが現在ページの直系の祖先であることを示す「ancestor」等の属性を付加するようにしてもよい。
木構造の構造情報が生成されると、構造情報生成手段16は、その構造情報をナビゲーション生成手段18に受け渡す。
図20に、テンプレートの例を示す。このテンプレートは、木構造に含まれる子ノードの有無や子ノードの数を、制御構造における場合分けの条件や出力されるタグの属性の値に設定することで、自由度の高いナビゲーションを作成できるようにするものである。
まず、ナビゲーション生成手段18は、タグ2001を解釈し、構造情報における一番上のアイテムである「newpage」を変数"top"に設定して、タグ2001〜2021の部分を処理する。
即ち、ナビゲーション生成手段18は、まず、<table>タグ2002、<tbody>タグ2003、<tr>要素2004、<tr>タグ2005を出力する。その際、「${top.childcount}」は「newpage」の子供のノード(以下、「子ノード」という)の数に、「${top.item.label}」は「newpage」のラベルに、「${top.item.href}」は「newpage」のパスに置き換える。
即ち、ナビゲーション生成手段18は、まず、<td>タグ2007、<a>要素2008を出力する。その際、「${node.item.label}」は「newpage2」のラベルに、「${node.item.href}」は「newpage2」のパスに置き換える。
次に、ナビゲーション生成手段18は、タグ2009を解釈し、「newpage2」に子ノードが存在するので、タグ2009〜2015の部分を処理する。
即ち、ナビゲーション生成手段18は、まず、<ul>タグ2010を出力する。
次に、ナビゲーション生成手段18は、タグ2011を解釈し、構造情報における「newpage2」の一番目の子ノードである「newpage4」を変数"node2"に設定して、<li>要素2012を出力する。その際、「${node2.item.label}」は「newpage4」のラベルに、「${node2.item.href}」は「newpage4」のパスに置き換える。また、ナビゲーション生成手段18は、構造情報における「newpage2」の二番目の子ノードである「newpage5」を変数"node2"に設定して、<li>要素2012を出力する。その際、「${node2.item.label}」は「newpage5」のラベルに、「${node2.item.href}」は「newpage5」のパスに置き換える。
この処理が終了すると、「newpage2」には他に子ノードが存在しないので、ナビゲーション生成手段18は、</ul>タグ2014、</td>タグ2016を出力する。
この処理が終了すると、「newpage」には他に子ノードが存在しないので、ナビゲーション生成手段18は、</tr>タグ2018、</tbody>タグ2019、</table>タグ2020を出力する。
また、この時のエディタの画面表示例を図22に示す。この画面では、ナビゲーションタグの開始タグを表すアイコンと、終了タグを表すアイコンとの間にナビゲーションの表示イメージが出力されている。
しかしながら、リスト構造の構造情報を用いるテンプレートと木構造の構造情報を用いるテンプレートの両方が用意されているシステムも考えられる。その場合は、テンプレートに、リスト構造の構造情報を用いるか木構造の構造情報を用いるかの属性を定義しておき、構造情報生成手段16は、選択されたテンプレートに定義された属性に基づき、いずれの構造情報を生成するかを判定すればよい。あるいは、選択されたテンプレートの種類に関わらず、リスト構造の構造情報と木構造の構造情報の両方を生成するようにしてもよい。
以下、このナビゲーションの設定の変更処理について、具体的に説明する。
図23は、ナビゲーションのテンプレートとして用いるファイル名の変更や、ナビゲーションに含めるページの表示順序の設定の追加を行うためのダイアログである。後者の設定は、「Current page is first sibling」にチェックをすることにより行われ、これにより、ナビゲーションにおいて自ページを兄弟ページの中で一番上に表示することができる。このような設定がなされると、ナビゲーションタグにはそのことを意味する記述(「topsibling="true"」)が書き込まれる。
このような記述があると、構造情報生成手段16が、ステップ508における構造情報の生成の際に、自ページを兄弟ページの中で一番上に配置する処理を行うことになる。
具体的には、「Top page」にチェックをすることにより、サイト構造のトップページをナビゲーションに含める設定を行うことができる。「Parent page」にチェックをすることにより、自分の親ページをナビゲーションに含める設定を行うことができる。「Ancestor pages」にチェックをすることにより、自分の祖先ページ(親ページ、祖父ページ、曽祖父ページ等)をナビゲーションに含める設定を行うことができる。「Current page」にチェックをすることにより、自分をナビゲーションに含める設定を行うことができる。「Children pages」にチェックをすることにより、自分の子ページをナビゲーションに含める設定を行うことができる。「Sibling pages」にチェックをすることにより、自分の兄弟ページをナビゲーションに含める設定を行うことができる。「Children of top page」にチェックをすることにより、トップページの子ページをナビゲーションに含める設定を行うことができる。「First child page」にチェックをすることにより、自分の長男ページ(一番最初の子ページ)をナビゲーションに含める設定を行うことができる。「Previous page」にチェックをすることにより、自分の前のページ(すぐ上の兄ページ)をナビゲーションに含める設定を行うことができる。「Next page」にチェックをすることにより、自分の次のページ(すぐ下の弟ページ)をナビゲーションに含める設定を行うことができる。
このような設定がなされると、ナビゲーションタグにはそれぞれの設定を意味する記述が書き込まれ、ページ選択手段15がステップ507においてこれらの設定によって指定されたページも併せて選択することになる。
本実施の形態では、ナビゲーションを作成するページのページ記述については、ナビゲーションタグ挿入手段14がページ記憶手段13から読み出し、ナビゲーションタグ挿入手段14、ページ選択手段15、構造情報生成手段16の各手段はページ記憶手段13に書き戻すことなく、最後に、ナビゲーション生成手段18がページ記憶手段13に書き戻すようにしている。しかしながら、ナビゲーションタグ挿入手段14、ページ選択手段15、構造情報生成手段16、ナビゲーション生成手段18の各手段が、それぞれにおける処理の開始時にページ記憶手段13から読み出し、それぞれにおける処理の終了後にページ記憶手段13に書き戻すようにしてもよい。
また、サイト構造情報については、ページ選択手段15がサイト構造記憶手段11から読み出し、ページ選択手段15から構造情報生成手段16へそのまま受け渡すように構成したが、ページ選択手段15から構造情報生成手段16へ受け渡さずに、構造情報生成手段16が再度、サイト構造記憶手段11から読み出すようにしてもよい。
また、本実施の形態では、一般的な部分木における位置に応じたスタイルを定義したテンプレートを用いて、特定の部分木に含まれるページへのリンクのスタイルを決定することにより、テンプレートを共通化することが可能となる。
Claims (9)
- Webサイトに含まれる各Webページ間の関係を表し、当該Webサイトのトップページと、ナビゲーションの基点となるWebページとして予め設定された複数のナビゲーションルートとが分かるように構成された木構造の情報であるサイト構造情報を記憶するサイト構造記憶手段と、
ナビゲーションの挿入対象として指定されたWebページから前記トップページへ向けて前記サイト構造情報を辿り、当該トップページに辿り着くまでに前記複数のナビゲーションルートのうちの所定のナビゲーションルートに辿り着いた場合に、当該所定のナビゲーションルートをルートとする部分木から、指定されたレベルの範囲にあるWebページを選択するページ選択手段と、
前記ページ選択手段により選択された前記Webページへのリンクを含むナビゲーションを生成するナビゲーション生成手段と
を備えたことを特徴とするナビゲーション生成装置。 - 前記ナビゲーション生成手段は、選択された前記Webページへのリンクのスタイルを、当該Webページの属性に応じたスタイルに設定した前記ナビゲーションを生成することを特徴とする請求項1記載のナビゲーション生成装置。
- 前記ナビゲーション生成手段は、Webページの属性に応じたスタイルを定義したテンプレートにおける所定の記述を、選択された前記Webページへのリンクを形成するためのリンク情報によって置き換えることにより、前記ナビゲーションを生成することを特徴とする請求項2記載のナビゲーション生成装置。
- コンピュータに、
Webサイトに含まれる各Webページ間の関係を表し、当該Webサイトのトップページと、ナビゲーションの基点となるWebページとして予め設定された複数のナビゲーションルートとが分かるように構成された木構造の情報であるサイト構造情報を記憶するサイト構造記憶手段から、当該サイト構造情報を読み出す機能と、
ナビゲーションの挿入対象として指定されたWebページから前記トップページへ向けて前記サイト構造情報を辿り、当該トップページに辿り着くまでに前記複数のナビゲーションルートのうちの所定のナビゲーションルートに辿り着いた場合に、当該所定のナビゲーションルートをルートとする部分木から、指定されたレベルの範囲にあるWebページを選択する機能と、
選択された前記Webページへのリンクを含むナビゲーションを生成する機能と
を実現させるためのプログラム。 - 前記ナビゲーションを生成する機能では、選択された前記Webページへのリンクのスタイルを、当該Webページの属性に応じたスタイルに設定した前記ナビゲーションを生成することを特徴とする請求項4記載のプログラム。
- 前記ナビゲーションを生成する機能では、Webページの属性に応じたスタイルを定義したテンプレートにおける所定の記述を、選択された前記Webページへのリンクを形成するためのリンク情報によって置き換えることにより、前記ナビゲーションを生成することを特徴とする請求項5記載のプログラム。
- コンピュータに、
選択された前記Webページへのリンクを形成するためのリンク情報と当該Webページの属性を示す属性情報との対応を、所定の順序に並べたリスト構造の構造情報を生成する機能を更に実現させ、
前記ナビゲーションを生成する機能では、前記構造情報に含まれる各属性情報に対して定義された前記テンプレートの部分を、当該部分における所定の記述を前記構造情報に含まれる対応するリンク情報によって置き換えた上で前記所定の順序で並べることにより、前記ナビゲーションを生成することを特徴とする請求項6記載のプログラム。 - 前記構造情報を生成する機能では、前記リンク情報と前記属性情報との対応を、外部から指定された順序に並べることにより、前記リスト構造の構造情報を生成することを特徴とする請求項7記載のプログラム。
- コンピュータに、
選択された前記Webページへのリンクを形成するためのリンク情報を、前記所定のナビゲーションルートをルートとする部分木における当該Webページのレベルに応じて配置した木構造の構造情報を生成する機能を更に実現させ、
前記ナビゲーションを生成する機能では、前記構造情報における各Webページのレベルに対して定義された前記テンプレートの部分を、当該部分における所定の記述を前記構造情報に含まれる対応するリンク情報によって置き換えた上で当該各Webページのレベルに応じて配置することにより、前記ナビゲーションを生成することを特徴とする請求項6記載のプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003284475A JP4602650B2 (ja) | 2003-07-31 | 2003-07-31 | ナビゲーション生成装置およびプログラム |
EP04103536A EP1503305A3 (en) | 2003-07-31 | 2004-07-23 | Method for generating navigation of web site |
US10/901,821 US8078962B2 (en) | 2003-07-31 | 2004-07-29 | Apparatus and method for generating web site navigations |
CNA2004100703569A CN1591425A (zh) | 2003-07-31 | 2004-07-29 | 用于产生网站导航的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003284475A JP4602650B2 (ja) | 2003-07-31 | 2003-07-31 | ナビゲーション生成装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005056028A JP2005056028A (ja) | 2005-03-03 |
JP4602650B2 true JP4602650B2 (ja) | 2010-12-22 |
Family
ID=33535722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003284475A Expired - Fee Related JP4602650B2 (ja) | 2003-07-31 | 2003-07-31 | ナビゲーション生成装置およびプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US8078962B2 (ja) |
EP (1) | EP1503305A3 (ja) |
JP (1) | JP4602650B2 (ja) |
CN (1) | CN1591425A (ja) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7464332B2 (en) * | 2003-11-18 | 2008-12-09 | Aaa News, Inc. | Devices, systems and methods for selecting the appearance of a viewer displaying digital content |
US7281208B2 (en) * | 2004-11-18 | 2007-10-09 | Microsoft Corporation | Image stitching methods and systems |
US20070079242A1 (en) * | 2005-08-03 | 2007-04-05 | Bea Systems, Inc. | System and method for control state management |
US7747677B2 (en) * | 2005-08-03 | 2010-06-29 | Bea Systems, Inc. | System and method for control tree optimization |
US20070067727A1 (en) * | 2005-09-22 | 2007-03-22 | Bea Systems, Inc. | System and method for control tree compression |
US9170987B2 (en) * | 2006-01-18 | 2015-10-27 | Microsoft Technology Licensing, Llc | Style extensibility applied to a group of shapes by editing text files |
US7984389B2 (en) | 2006-01-28 | 2011-07-19 | Rowan University | Information visualization system |
JP4577847B2 (ja) * | 2006-06-30 | 2010-11-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンテンツを作成するためのオーサリング・システム、ソフトウェア、および方法 |
CN101399818B (zh) * | 2007-09-25 | 2012-08-29 | 日电(中国)有限公司 | 基于导航路径信息的主题相关网页过滤方法和系统 |
WO2009059481A1 (en) * | 2007-11-08 | 2009-05-14 | Shanghai Hewlett-Packard Co., Ltd | Navigational ranking for focused crawling |
CN101236571B (zh) * | 2008-03-06 | 2012-05-30 | 北京乾坤化物数字技术有限公司 | 利用树状结构目录管理海量网络子站网页的方法 |
US8051370B2 (en) * | 2008-04-23 | 2011-11-01 | Microsoft Corporation | Intelligent autocompletion |
CN101615178B (zh) * | 2008-06-26 | 2013-01-09 | 日电(中国)有限公司 | 用于建立对象层次结构的方法和系统 |
JP4561905B2 (ja) * | 2008-08-20 | 2010-10-13 | コニカミノルタビジネステクノロジーズ株式会社 | 情報処理プログラム、情報処理方法及び情報処理装置 |
CN101887444B (zh) | 2009-05-15 | 2012-12-19 | 国际商业机器公司 | 用于网页的导航方法和系统 |
US20130173667A1 (en) * | 2010-10-05 | 2013-07-04 | Eric Soderberg | Acyclic graph navigator |
CN102663091B (zh) * | 2012-04-11 | 2014-12-24 | 广东华大集成技术有限责任公司 | 一种web应用导航管理方法及其系统 |
CN103513872A (zh) * | 2012-06-18 | 2014-01-15 | 联想(北京)有限公司 | 一种节点生成方法、页面定位方法及装置 |
US9881100B2 (en) * | 2013-01-14 | 2018-01-30 | International Business Machines Corporation | Scoping searches within websites |
US9727656B2 (en) * | 2013-07-04 | 2017-08-08 | Excalibur Ip, Llc | Interactive sitemap with user footprints |
EP3033692A4 (en) | 2013-08-15 | 2017-03-01 | Nokia Technologies Oy | Apparatus and method for facilitating browser navigation |
CN105635236B (zh) * | 2014-12-01 | 2018-11-27 | 阿里巴巴集团控股有限公司 | 一种页面呈现方法、装置及系统 |
CN104699820B (zh) * | 2015-03-30 | 2018-06-12 | 郑州悉知信息科技股份有限公司 | 一种网页的产品类目导航编辑方法、网页显示方法及装置 |
CN106802893A (zh) * | 2015-11-26 | 2017-06-06 | 财团法人资讯工业策进会 | 网站简化方法及使用其的网站简化装置 |
US10152041B2 (en) | 2015-12-30 | 2018-12-11 | General Electric Company | Method and apparatus for enabling model driven navigation |
CN110309444A (zh) * | 2018-03-21 | 2019-10-08 | 深圳市腾讯计算机系统有限公司 | 一种页面展示方法、装置、介质及服务器 |
US10997357B2 (en) | 2019-06-20 | 2021-05-04 | International Business Machines Corporation | User interface navigation management |
US11212336B2 (en) | 2020-04-30 | 2021-12-28 | Software Ag | Systems and/or methods for dynamically configuring and evaluating rules with dynamic and/or user inputs at runtime |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0823318A (ja) | 1994-07-05 | 1996-01-23 | Nippon Hoso Kyokai <Nhk> | Fm多重放送におけるデータ伝送方法およびデータ伝送システム |
US6035330A (en) * | 1996-03-29 | 2000-03-07 | British Telecommunications | World wide web navigational mapping system and method |
US6003046A (en) * | 1996-04-15 | 1999-12-14 | Sun Microsystems, Inc. | Automatic development and display of context information in structured documents on the world wide web |
US7181438B1 (en) * | 1999-07-21 | 2007-02-20 | Alberti Anemometer, Llc | Database access system |
US7130879B1 (en) * | 1999-08-10 | 2006-10-31 | Alexandre Dayon | System for publishing, organizing, accessing and distributing information in a computer network |
US7904799B1 (en) * | 1999-11-05 | 2011-03-08 | Decentrix Acquisition Corporation | Method and apparatus for generating a link to a presented web page |
WO2001040988A1 (en) * | 1999-11-30 | 2001-06-07 | Maxamine International Pty Ltd | Web map tool |
US6792475B1 (en) * | 2000-06-23 | 2004-09-14 | Microsoft Corporation | System and method for facilitating the design of a website |
GB2368410A (en) * | 2000-10-23 | 2002-05-01 | Navigationzone Ltd | A user interface for assisting navigation through a network |
US7185275B2 (en) * | 2001-02-27 | 2007-02-27 | International Business Machines Corporation | Method and computer system for enabling a user to construct a web-site navigation |
US20020010715A1 (en) * | 2001-07-26 | 2002-01-24 | Garry Chinn | System and method for browsing using a limited display device |
US7293070B2 (en) * | 2001-09-17 | 2007-11-06 | Vignette Corporation | Method and system for deploying web components between portals in a portal framework |
US7191411B2 (en) * | 2002-06-06 | 2007-03-13 | Moehrle Armin E | Active path menu navigation system |
US20030229850A1 (en) * | 2002-06-07 | 2003-12-11 | Calvin Lue | Web browser |
WO2004068320A2 (en) * | 2003-01-27 | 2004-08-12 | Vincent Wen-Jeng Lue | Method and apparatus for adapting web contents to different display area dimensions |
-
2003
- 2003-07-31 JP JP2003284475A patent/JP4602650B2/ja not_active Expired - Fee Related
-
2004
- 2004-07-23 EP EP04103536A patent/EP1503305A3/en not_active Withdrawn
- 2004-07-29 US US10/901,821 patent/US8078962B2/en not_active Expired - Fee Related
- 2004-07-29 CN CNA2004100703569A patent/CN1591425A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US8078962B2 (en) | 2011-12-13 |
CN1591425A (zh) | 2005-03-09 |
JP2005056028A (ja) | 2005-03-03 |
US20050028089A1 (en) | 2005-02-03 |
EP1503305A2 (en) | 2005-02-02 |
EP1503305A3 (en) | 2006-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4602650B2 (ja) | ナビゲーション生成装置およびプログラム | |
US10706091B2 (en) | User driven computerized selection, categorization, and layout of live content components | |
US6792475B1 (en) | System and method for facilitating the design of a website | |
US7085999B2 (en) | Information processing system, proxy server, web page display method, storage medium, and program transmission apparatus | |
KR100919738B1 (ko) | 콘텐츠 작성 시스템, 콘텐츠 작성 방법, 이 콘텐츠 작성방법을 실행시키기 위한 컴퓨터 실행 가능한 프로그램, 이프로그램이 기록된 컴퓨터 판독 가능한 기억 매체,그래피컬 유저 인터페이스 시스템 및 표시 제어 방법 | |
US8935602B2 (en) | Hierarchical drag and drop structure editor for web sites | |
US9514235B2 (en) | Web page authoring tool for structured documents | |
US8387055B1 (en) | System and method for providing information and associating information | |
JP2004030582A (ja) | 構造化文書編集装置、構造化文書編集方法及びプログラム | |
US20070245232A1 (en) | Apparatus for Processing Documents That Use a Mark Up Language | |
JP2008508642A (ja) | 新規フラグメント及び新規スキームを用いたマークアップ言語環境において新規文書を生成するための文書処理及び管理方法 | |
US20080134019A1 (en) | Processing Data And Documents That Use A Markup Language | |
US11288337B2 (en) | Object selection in web page authoring | |
US7908586B1 (en) | Collapse on content property | |
US7685229B1 (en) | System and method for displaying server side code results in an application program | |
US20010032216A1 (en) | Template animation and debugging tool | |
JPWO2006051966A1 (ja) | 文書管理装置及び文書管理方法 | |
JP2009146186A (ja) | ウエブページ作成支援装置 | |
WO2006137564A1 (ja) | 文書処理装置 | |
EP1743254A1 (en) | Processing data and documents that use a markup language | |
JPWO2006051868A1 (ja) | 文書処理装置及び文書処理方法 | |
KR100762516B1 (ko) | 구조화된 하나 이상의 웹 모듈을 이용한 웹 콘텐츠 작성시스템 | |
JP2005196749A (ja) | 付加管理プログラム及び電子文書閲覧装置 | |
JPH04291449A (ja) | 文書編集装置におけるスクロール処理方式 | |
JP2002259360A (ja) | 構造化文書のリンク方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070313 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070717 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071015 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080220 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080407 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20080509 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20100921 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100930 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |