(57)【要約】【課題】  データに対応付ける複数種類の属性の属性値を相互に移動させることができる仕組みを提供する。【解決手段】  データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置であって、第１の属性の属性値と属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得し、第１の属性の属性値と第２の属性の属性値とを構造を用いて表示する。ユーザの移動操作に応じて、第１の属性の属性値を示すオブジェクトを第２の属性として第２の属性の属性値の表示部に移動させ、第２の属性の構造情報を変更し、生成した第２の属性の表示情報を用いて第２の属性を表示する情報処理装置。【選択図】図８
2016029565.tif 000002
【特許請求の範囲】
【請求項１】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置であって、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得手段と、
前記表示情報取得手段により取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示手段と、
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させ、前記属性値表示手段により表示された第２の属性の構造情報を変更する構造変更手段と、
前記構造変更手段により変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成手段と、
前記表示情報生成手段により生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記第１の属性と前記第２の属性のうち少なくとも１つは階層構造を持ち、
前記属性値表示手段は、階層構造を持つ属性の属性値を階層構造を用いて表示する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記データに前記第１の属性の属性値と前記第２の属性の属性値のうち少なくとも１つを対応付ける属性値対応付手段と、
前記第１の属性の属性値または前記第２の属性の属性値を指定し、当該属性値が対応付けられているデータを取得するデータ取得手段と
を更に備えることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させた場合、前記データ取得手段により取得された、移動させた第１の属性の属性値が対応付けられているデータに、移動先の第２の属性の属性値を一括して対応付ける第２属性値一括対応付手段
を更に備えることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させた場合、前記データ取得手段により取得された、移動先の第２の属性の属性値が対応付けられているデータに、移動させた第１の属性の属性値を一括して対応付ける第１属性値一括対応付手段
を更に備えることを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
前記属性値表示手段は、前記データ取得手段により対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、前記データ取得手段により対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止すること
を特徴とする請求項３乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記属性値表示手段は、配下に持つすべての属性値が前記データ取得手段により対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、配下に持つ属性値のうち少なくとも１つが前記データ取得手段により対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止すること
を特徴とする請求項３乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記ユーザの移動操作とは、
前記属性値表示手段により表示された属性の属性値を示すオブジェクトをドラッグし、前記属性値表示手段により表示された属性の属性値の表示領域にドロップする操作であること
を特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記属性値表示手段は、ユーザの移動操作によりドラッグされた属性の属性値をドロップされた位置に表示されている属性の属性値として挿入すること
を特徴とする請求項８に記載の情報処理装置。
【請求項１０】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置と、前記データと前記属性値を管理するサーバからなるデータ管理システムであって、
前記情報処理装置は、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得手段と、
前記表示情報取得手段により取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示手段と、
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させ、前記属性値表示手段により表示された第２の属性の構造情報を変更する構造変更手段と、
前記構造変更手段により変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成手段と、
前記表示情報生成手段により生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示手段と
を備え、
前記サーバは、
前記属性値の表示情報を送信する表示情報送信手段
を備えることを特徴とするデータ管理システム。
【請求項１１】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置における処理方法であって、
前記情報処理装置が、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得ステップと、
前記表示情報取得ステップにより取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示ステップと、
ユーザの移動操作に応じて、前記属性値表示ステップにより表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示ステップにより表示された第２の属性の属性値の表示部に移動させ、前記属性値表示ステップにより表示された第２の属性の構造情報を変更する構造変更ステップと、
前記構造変更ステップにより変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成ステップと、
前記表示情報生成ステップにより生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示ステップと
を実行することを特徴とする処理方法。
【請求項１２】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置と、前記データと前記属性値を管理するサーバからなるデータ管理システムにおける処理方法であって、
前記情報処理装置が、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得ステップと、
前記表示情報取得ステップにより取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示ステップと、
ユーザの移動操作に応じて、前記属性値表示ステップにより表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示ステップにより表示された第２の属性の属性値の表示部に移動させ、前記属性値表示ステップにより表示された第２の属性の構造情報を変更する構造変更ステップと、
前記構造変更ステップにより変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成ステップと、
前記表示情報生成ステップにより生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示ステップと
を実行し、
前記サーバが、
前記属性値の表示情報を送信する表示情報送信ステップ
を実行することを特徴とする処理方法。
【請求項１３】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得手段と、
前記表示情報取得手段により取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示手段と、
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させ、前記属性値表示手段により表示された第２の属性の構造情報を変更する構造変更手段と、
前記構造変更手段により変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成手段と、
前記表示情報生成手段により生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示手段と
として機能させることを特徴とするプログラム。
【請求項１４】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置と、前記データと前記属性値を管理するサーバからなるデータ管理システムで実行可能なプログラムであって、
前記情報処理装置を、
第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得手段と、
前記表示情報取得手段により取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示手段と、
ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させ、前記属性値表示手段により表示された第２の属性の構造情報を変更する構造変更手段と、
前記構造変更手段により変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成手段と、
前記表示情報生成手段により生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示手段
として機能させ、
前記サーバを、
前記属性値の表示情報を送信する表示情報送信手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを管理する情報処理装置とデータ管理システム、その処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、画像データや音楽データなどのファイルに、キーワードなどの属性値を付加することで、これらのファイルの検索を容易にする仕組みが存在する。
【０００３】
特許文献１では、ファイル等のデータの属性情報を階層化して表示するデータ属性表示方法において、目的のデータを容易に見つけることができるようにするシステムが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−３２２１６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１のシステムは、階層化された属性値を検索するシステムであって、階層化された属性値を容易にメンテナンスできないという課題がある。また、複数種類の属性（例えば、カテゴリとタグ）を跨いで属性値を相互に移動させることができないという課題もある。
【０００６】
具体的には、カテゴリ属性に属性値「カテゴリＡ」「カテゴリＢ」、タグ属性に属性値「タグ１」「タグ２」が存在し、かつ、大量の画像ファイルに「カテゴリＡ」「カテゴリＢ」「タグ１」「タグ２」が対応付けられている場合、画像ファイルと属性値との対応付けはそのままに、タグ属性の属性値である「タグ２」をカテゴリ属性の属性値へと変更することはできない。
【０００７】
例えば、タグ属性の属性値として「今月のＰＯＰ」（図８の８１０）があった場合、翌月には「今月のＰＯＰ」というタグ属性をカテゴリ属性の属性値「過去のＰＯＰ」の配下のカテゴリ属性の属性値「２０１４年７月のＰＯＰ」に移動させる、というように複数種類の属性（ここではカテゴリとタグ）を跨いで属性値を移動させたいというケースがある。
【０００８】
また、特許文献１のシステムは、「カテゴリＡ」が対応付けられている画像ファイルのすべてに、「タグ１」を一括して割り当てる、というように、ある属性の属性値が対応付けられているデータに一括して他の属性の属性値を割り当てることもできないという課題もある。
そこで、本発明の目的は、データに対応付ける複数種類の属性の属性値を相互に移動させることができる仕組みを提供することである。
【課題を解決するための手段】
【０００９】
データの種別を示す複数種類の属性の属性値を前記データに対応付けることが可能な情報処理装置であって、第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する表示情報取得手段と、前記表示情報取得手段により取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する属性値表示手段と、ユーザの移動操作に応じて、前記属性値表示手段により表示された第１の属性の属性値を示すオブジェクトを前記第２の属性として前記属性値表示手段により表示された第２の属性の属性値の表示部に移動させ、前記属性値表示手段により表示された第２の属性の構造情報を変更する構造変更手段と、前記構造変更手段により変更された第２の属性の構造情報に従って、前記第２の属性の表示情報を生成する表示情報生成手段と、前記表示情報生成手段により生成された第２の属性の表示情報を用いて、前記第２の属性の属性値を構造を用いて表示する属性値再表示手段とを備えることを特徴とする情報処理装置。
【発明の効果】
【００１０】
本発明によれば、データに対応付ける複数種類の属性の属性値を相互に移動させることができる仕組みを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明のデータ管理システム１００の構成の一例を示す図
【図２】情報処理装置１０１のハードウエア構成の一例を示す図
【図３】情報処理装置１０１の機能構成の一例を示すブロック図
【図４】情報処理装置１０１におけるデータ検索一覧画面４００の一例を示す図
【図５】情報処理装置１０１におけるデータ詳細情報画面５００の一例を示す図
【図６】情報処理装置１０１におけるデータ検索画面６００の一例を示す図
【図７】情報処理装置１０１におけるデータ新規作成画面７００の一例を示す図
【図８】情報処理装置１０１における属性編集画面８００の一例を示す図
【図９】情報処理装置１０１における属性編集画面８００における削除制限の一例を示す図
【図１０】情報処理装置１０１における属性編集確認画面１０００の一例を示す図
【図１１】情報処理装置１０１およびサーバ１０２における属性編集処理（前半）の一例を示すフローチャート
【図１２】情報処理装置１０１およびサーバ１０２における属性編集処理（後半）の一例を示すフローチャート
【図１３】情報処理装置１０１における属性編集処理のＨＴＭＬの一例を示す図
【図１４】情報処理装置１０１における属性編集処理のスクリプトの一例を示す図
【図１５】サーバ１０２におけるデータと属性に関するテーブルの一例を示す図
【図１６】第２の実施形態に係る情報処理装置１０１における属性編集画面１６００の一例を示す図
【図１７】第２の実施形態に係る情報処理装置１０１およびサーバ１０２における属性編集処理（前半）の一例を示すフローチャート
【図１８】第２の実施形態に係る情報処理装置１０１およびサーバ１０２における属性編集処理（後半）の一例を示すフローチャート
【図１９】情報処理装置１０１の機能構成の一例を示す、図３とは別のブロック図
【発明を実施するための形態】
【００１２】
〔第１の実施形態〕
以下、図面を参照して本発明の実施形態を詳細に説明する。
図１は、本発明のデータ管理システム１００の構成の一例を示す図である。
【００１３】
図１に示すように、データ管理システム１００は、情報処理装置１０１、およびサーバ１０２が、ネットワーク１０３により通信可能に接続された構成をとる。情報処理装置１０１は、デスクトップＰＣ、携帯電話、スマートフォン、タブレット端末、ノートＰＣ、およびＰＤＡ端末などの端末であって、ブラウザがインストールされており、ネットワーク１０３を介して、サーバ１０２と通信可能である。
【００１４】
データ管理システム１００のユーザは、情報処理装置１０１にインストールされたウェブブラウザやクライアントソフトウェアなどを介し、サーバ１０２に対して、データ管理システム１００のデータの検索処理やデータや属性値のメンテナンス処理などを行う。
【００１５】
サーバ１０２は、情報処理装置１０１からの要求に応じた処理をおこない、情報処理装置１０１に対して処理結果を送信する。情報処理装置１０１とサーバ１０２間の通信は、ＨＴＴＰのリクエスト・レスポンスでもよいし、ＳＯＡＰなどを利用したウェブサービスのリクエスト・レスポンスでもよい。
以下、図２を用いて、図１に示した情報処理装置１０１のハードウエア構成の一例を示す図について説明する。
【００１６】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等が記憶されている。
【００１７】
２０２はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０３あるいは外部メモリ２１１からＲＡＭ２０２にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００１８】
また、２０５は入力コントローラで、入力装置２０９等からの入力を制御する。２０６はビデオコントローラで、液晶ディスプレイ等のディスプレイ装置２１０への表示を制御する。なお、ディスプレイ装置は、液晶ディスプレイに限られず、ＣＲＴディスプレイなどであっても良い。これらは必要に応じてクライアントが使用するものである。
【００１９】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２０】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク１０３を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２１】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ装置２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ装置２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
ハードウエア上で動作する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
なお、全ての装置がこれらの構成を備えているわけではなく、必要なものを夫々備えていればよい。
【００２２】
図３は、情報処理装置１０１の機能構成の一例を示すブロック図である。
表示情報取得部３０１は、属性値の階層情報を含む表示情報を取得する機能部である。
階層表示部３０２は、表示情報取得部３０１より取得した表示情報を用いて、属性値を階層表示する機能部である。
階層表示変更部３０３は、階層表示部３０２により表示された属性値をユーザの操作に応じて移動させ、階層表示を変更する機能部である。
階層情報生成部３０４は、階層表示変更部３０３により変更された階層表示から、属性値の階層情報を生成する機能部である。
階層情報出力部３０５は、階層情報生成部３０４により生成された属性値の階層情報を出力する機能部である。
対応付判定部３０６は、属性値にデータが対応付けされているか否かを判定する機能部である。
【００２３】
階層表示部３０２は、表示する属性値が対応付判定部３０６により対応付けされていないと判定された場合、当該属性値を削除するための削除ボタンを有効に表示し、表示する属性値が対応付判定部３０６により対応付けされていると判定された場合、当該属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する機能部である。
【００２４】
階層表示部３０２は、表示する属性値が対応付判定部３０６により対応付けされていないと判定された場合、当該属性値の属す階層の上位にあたる階層の属性値について削除するための削除ボタンを有効に表示し、表示する属性値が対応付判定部３０６により対応付けされていると判定された場合、当該属性値の属す階層の上位にあたる階層の属性値について削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する機能部である。
下位対応付判定部３０７は、属性値の属す階層の下位にあたる階層の属性値にデータが対応付けされているか否かを判定する機能部である。
【００２５】
階層表示部３０２は、表示する属性値が下位対応付判定部３０７により対応付けされていないと判定された場合、当該属性値を削除するための削除ボタンを有効に表示し、表示する属性値が下位対応付判定部３０７により対応付けされていると判定された場合、当該属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する機能部である。
階層表示変更部３０３は、ユーザ操作によりドロップされた領域に、ドラッグされた属性値を挿入する機能部である。
属性値指定部３０８は、データを検索する検索条件として、属性値を指定する機能部である。
データ抽出部３０９は、属性値指定部３０８により指定された属性値と対応付けられて記憶されているデータを抽出する機能部である。
【００２６】
属性値指定部３０８により複数の属性値を指定した場合、データ抽出部３０９は、属性値指定部３０８により指定された複数の属性値と対応付けられて記憶されているデータを抽出する機能部である。
【００２７】
図１９は、本実施形態における特徴を示す、情報処理装置１０１の機能構成の一例を示す、図３とは別のブロック図である。
表示情報取得部１９０１は、第１の属性の属性値と属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する機能部である。
【００２８】
属性値表示部１９０２は、表示情報取得部１９０１により取得した第１の表示情報と第２の表示情報とを用いて、第１の属性の属性値と第２の属性の属性値とを構造を用いて表示する機能部である。
【００２９】
構造変更部１９０３は、ユーザの移動操作に応じて、属性値表示部１９０２により表示された第１の属性の属性値を示すオブジェクトを第２の属性として属性値表示部１９０２により表示された第２の属性の属性値の表示部に移動させ、属性値表示部１９０２により表示された第２の属性の構造情報を変更する機能部である。
表示情報生成部１９０４は、構造変更部１９０３により変更された第２の属性の構造情報に従って、第２の属性の表示情報を生成する機能部である。
【００３０】
属性値再表示部１９０５は、表示情報生成部１９０４により生成された第２の属性の表示情報を用いて、第２の属性の属性値を構造を用いて表示する機能部である。
属性値表示部１９０２は、階層構造を持つ属性の属性値を階層構造を用いて表示する機能部である。
属性値対応付部１９０６は、データに第１の属性の属性値と第２の属性の属性値のうち少なくとも１つを対応付ける機能部である。
データ取得部１９０７は、第１の属性の属性値または第２の属性の属性値を指定し、属性値が対応付けられているデータを取得する機能部である。
【００３１】
第２属性値一括対応付部１９０８は、ユーザの移動操作に応じて、属性値表示部１９０２により表示された第１の属性の属性値を示すオブジェクトを第２の属性として属性値表示部１９０２により表示された第２の属性の属性値の表示部に移動させた場合、データ取得部１９０７により取得された、移動させた第１の属性の属性値が対応付けられているデータに、移動先の第２の属性の属性値を一括して対応付ける機能部である。
【００３２】
第１属性値一括対応付部１９０９は、ユーザの移動操作に応じて、属性値表示部１９０２により表示された第１の属性の属性値を示すオブジェクトを第２の属性として属性値表示部１９０２により表示された第２の属性の属性値の表示部に移動させた場合、データ取得部１９０７により取得された、移動先の第２の属性の属性値が対応付けられているデータに、移動させた第１の属性の属性値を一括して対応付ける機能部である。
【００３３】
属性値表示部１９０２は、データ取得部１９０７により対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、データ取得部１９０７により対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する機能部である。
【００３４】
属性値表示部１９０２は、配下に持つすべての属性値がデータ取得部１９０７により対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、配下に持つ属性値のうち少なくとも１つがデータ取得部１９０７により対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する機能部である。
【００３５】
属性値表示部１９０２は、ユーザの移動操作によりドラッグされた属性の属性値をドロップされた位置に表示されている属性の属性値として挿入する機能部である。
【００３６】
図４は、情報処理装置１０１におけるデータ検索一覧画面４００の一例を示す図である。図５は、情報処理装置１０１におけるデータ詳細情報画面５００の一例を示す図である。図６は、情報処理装置１０１におけるデータ検索画面６００の一例を示す図である。図７は、情報処理装置１０１におけるデータ新規作成画面７００の一例を示す図である。図８は、情報処理装置１０１における属性編集画面８００の一例を示す図である。図９は、情報処理装置１０１における属性編集画面８００における削除制限の一例を示す図である。図１０は、情報処理装置１０１における属性編集確認画面１０００の一例を示す図である。
【００３７】
また、図１１は、情報処理装置１０１およびサーバ１０２における属性編集処理（前半）の一例を示すフローチャートである。図１２は、情報処理装置１０１およびサーバ１０２における属性編集処理（後半）の一例を示すフローチャートである。
図４〜図１０の各画面を参照しながら、図１１〜図１２のフローチャートの処理について説明する。
【００３８】
ステップＳ１１０１において、情報処理装置１０１のＣＰＵ２０１は、ユーザによるデータ管理システム１００へのログイン操作を受け付け、ユーザによってログイン要求されたことをサーバ１０２に通知する。
ステップＳ１１０２において、サーバ１０２のＣＰＵ２０１は、データ管理システム１００へのログイン処理を行う。
【００３９】
ステップＳ１１０３において、サーバ１０２のＣＰＵ２０１は、アイテム明細テーブル１５０１（図１５）を検索し、アイテムリストを作成し、情報処理装置１０１に送信する。この実施例におけるアイテムとは、画像・チラシ・文書・音声・動画などの電子ファイルを指すが、これらの電子ファイルに限定するものでなく、その他の電子ファイルや、データベースにおけるレコードなど電子ファイル形式でない「データ」そのものを「アイテム」として取り扱ってもよい。以下においては、「データ」と「アイテム」を同じ意味として使用する。
【００４０】
ステップＳ１１０４において、情報処理装置１０１のＣＰＵ２０１は、サーバ１０２から受信したアイテムリストを用いて、データ検索一覧画面４００を表示する。データ検索一覧画面４００には、アイテムの名称やサムネイル画像などの情報が表示されており、表示されたアイテムの例えばサムネイルを押下（クリック）することで、図５のデータ詳細情報画面５００を表示する。このデータ詳細情報画面５００には、アイテム名やアイテムに対応付けられた属性値（カテゴリ・タグ）を表示する。図５のデータ詳細情報画面５００から、このアイテムにはカテゴリまたはタグが５つ対応付けられていることがわかる。
一旦、フローチャートの説明から逸れるが、図４〜図８について説明しておく。
【００４１】
データ検索一覧画面４００の画面左側にある入力欄４０２に検索条件を入力し、検索ボタン４０３を押下することで、アイテムの検索を行うことができる。検索した結果が、データ検索画面６００である。データ検索画面６００の画面左側にあるカテゴリ・タグ入力欄６０１には、データ検索一覧画面４００において入力したカテゴリ・タグの検索条件６０２を表示し、画面右側には検索条件６０２で検索した検索結果６０３を表示する。すなわち、この処理は、指定された属性値と対応付けられて記憶されているデータを抽出する処理の一例である。また、この処理は、指定された複数の属性値と対応付けられて記憶されているデータを抽出する処理の一例である。
【００４２】
また、データ検索一覧画面４００の右上にあるメンテナンスメニュー４０１の中から、「アイテム新規登録」リンク（不図示）がユーザにより押下されたことを検知すると、データ新規作成画面７００を表示し、この画面において、カテゴリ・タグセレクトボックス７１０から、カテゴリまたはタグを選択することで、図７の７１１と７１２のようなカテゴリ・タグの属性値と対応付いた新たなアイテムを新規登録することができる。すなわち、カテゴリ・タグセレクトボックス７１０は、データに第１の属性の属性値と第２の属性の属性値のうち少なくとも１つを対応付ける一例を示す機能部である。フローチャートの説明に戻る。
【００４３】
ステップＳ１１０５において、情報処理装置１０１のＣＰＵ２０１は、データ検索一覧画面４００（アイテム検索一覧画面）の右上にあるメンテナンスメニュー４０１の中から、「カテゴリ・タグ編集」リンク（不図示）がユーザによって押下されたことを検知し、サーバに通知する。
ステップＳ１１０６において、サーバ１０２のＣＰＵ２０１は、カテゴリ・タグ編集リンクが押下されたことを受付ける。
【００４４】
ステップＳ１１０７において、サーバ１０２のＣＰＵ２０１は、カテゴリマスタテーブル１５０２（図１５）を全件検索し、全レコードを取得する。なお、カテゴリマスタテーブル１５０２には、アイテムに対して付与する属性２種類（カテゴリとタグ）の属性値が記憶されており、「種別」カラム＝の値によって、そのレコードがカテゴリの属性値なのか、タグの属性値なのかを区別している。
【００４５】
つまり、カテゴリマスタテーブル１５０２は、複数種類の属性について、属性値を記憶することができる。また、カテゴリマスタテーブル１５０２は、「アイテム数」カラムを持ち、当該レコード（つまり、カテゴリの属性値、または、タグの属性値）が対応付けられているデータの数が記憶されている。
【００４６】
また、カテゴリマスタテーブル１５０２は、「階層」カラムを持つため、属性値に階層構造を持たせることができる。なお、「階層」カラムの値をすべて同じ値にすることで、階層構造を持たないフラットな構造の属性値とすることもできる。つまり、本実施形態における属性は、「カテゴリ」のように「階層」カラムの値に階層番号を設定することで階層構造として表示することが可能になり、「タグ」のように「階層」カラムの値に同じ値を設定することで階層構造を持たない情報として表示することが可能になる。
【００４７】
また、「並び順１」〜「並び順４」カラムには、各階層（この実施例においては４階層まで）における表示順番が記憶されている。なお、この実施例においては、階層は４つまでとしたが、これに限定するものではなく、「並び順Ｎ」カラムを増やすことで、より多くの階層を持つ属性値を記憶することができる。
【００４８】
ステップＳ１１０８において、サーバ１０２のＣＰＵ２０１は、検索により得た「カテゴリＩＤ」「並び順１」〜「並び順４」「階層」「アイテム数」「カテゴリ名（またはタグ名）」「種別」を用いてカテゴリ・タグリストを作成し、情報処理装置１０１に送信する。
【００４９】
ステップＳ１１０９において、情報処理装置１０１のＣＰＵ２０１は、カテゴリ・タグリストを受信する。すなわち、ステップＳ１１１１は、属性値の階層情報を含む表示情報を取得する処理の一例を示すステップである。また、ステップＳ１１１１は、第１の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第１の表示情報と、第２の属性の属性値と当該属性値を構造を用いて表示するための構造情報とを含む第２の表示情報とを取得する処理の一例を示すステップである。
【００５０】
ステップＳ１１１０において、情報処理装置１０１のＣＰＵ２０１は、カテゴリ・タグリストを解析し、解析したカテゴリ・タグリストをＲＡＭ２０２に記憶しておく。なお、解析処理の詳細については後述する。
【００５１】
ステップＳ１１１１において、情報処理装置１０１のＣＰＵ２０１は、カテゴリ・タグリストの解析結果を用いて、カテゴリ・タグの一覧が表示された、カテゴリ・タグ編集画面８１０を表示する。ステップＳ１１１０の解析処理、およびステップＳ１１１１の画面表示について詳細を説明する。
【００５２】
ステップＳ１１０９にて受信したカテゴリ・タグリストから「種別」を用いてカテゴリとタグを区別し、「並び順１」〜「並び順４」「階層」「アイテム数」「カテゴリ名（またはタグ名）」について、ステップＳ１１１０にて解析し、ステップＳ１１１１にて「カテゴリ名（またはタグ名）」を「並び順１」〜「並び順４」の順番で＜ｌｉ＞タグを用いて、図１３のＨＴＭＬソース（ＤＯＭ階層）１３１５を生成し、ブラウザにカテゴリ・タグ編集画面１３１０のように出力する。なお、直前の「カテゴリ名（またはタグ名）」と「階層」の値が変わる場合は、＜ｏｌ＞タグを用いて、階層が異なることを表現する。
【００５３】
すなわち、ステップＳ１１１１は、取得した表示情報を用いて、属性値を階層表示する処理の一例を示すステップである。また、ステップＳ１１１１は、取得した第１の表示情報と第２の表示情報とを用いて、前記第１の属性の属性値と前記第２の属性の属性値とを構造を用いて表示する処理の一例を示すステップである。また、ステップＳ１１１１は、階層構造を持つ属性の属性値を階層構造を用いて表示する処理の一例を示すステップである。
また、当該「カテゴリ名（またはタグ名）」が対応付けられている「アイテム数」も表示する。
【００５４】
なお、この実施例においては、情報処理装置１０１において、カテゴリ・タグリストを解析してＨＴＭＬを生成するとしたが、この方法に限定するものではなく、サーバ１０２において、カテゴリ・タグリストを解析してＨＴＭＬを生成し、生成したＨＴＭＬを情報処理装置１０１に送信するとしてもよい。また、この実施例においては、ＨＴＭＬによって、ブラウザにデータを出力するとしたが、ＨＴＭＬに限定するものではなく、その他のスクリプト言語などを用いて出力しても良い。
【００５５】
ステップＳ１１１２において、情報処理装置１０１のＣＰＵ２０１は、ユーザ操作を受け付け、削除ボタン８１４が押下された場合は、ステップＳ１１１３に進む。新規レコード入力欄８１１に新規レコードが入力され、新規レコード入力欄８１１がドラッグされ、カテゴリ情報領域またはタグ情報領域にドロップされた場合は、ステップＳ１１１４に進む。既存レコード入力欄（例えば、図８の８１６）がドラッグされ、カテゴリ情報領域またはタグ情報領域にドロップされた場合は、ステップＳ１１１５に進む。既存レコード入力欄（例えば、図８の８１６）の値が変更された場合は、ステップＳ１１２０に進む。また、確認ボタン８１８が押下された場合は、ステップＳ１２０１に進む。
【００５６】
ステップＳ１１１３において、情報処理装置１０１のＣＰＵ２０１は、既存レコードが削除されたことを意味するため、削除ボタンが押下された、カテゴリまたはタグの、ＨＴＭＬソースにおけるカテゴリＩＤの値に削除フラグを設定する。
【００５７】
ステップＳ１１１４において、情報処理装置１０１のＣＰＵ２０１は、新規レコードが登録されたことを意味するため、新規レコード入力欄８１１の値と、カテゴリＩＤを負の整数（例えばー１）にして、ＨＴＭＬソース上に記録する。この処理については、ＪａｖａＳｃｒｉｐｔ（登録商標）、ダイナミックＨＴＭＬ、スタイルシートなどを用いて行う。具体的には、図１３の新規レコード入力欄１３１１に新規レコード「テスト１」が入力され、新規レコード入力欄１３１１がドラッグされ、カテゴリ情報領域１３１３部にドロップされた場合、ドロップが検知された位置にＨＴＭＬソース１３２２のように＜ｌｉ＞タグを追記する。これにより、新規登録されたレコードが、ドラッグ＆ドロップにより、ドロップされた位置に表示されるようになる。
【００５８】
ステップＳ１１１５において、情報処理装置１０１のＣＰＵ２０１は、既存レコードの階層が移動されたことを意味するため、移動元から当該レコードの表示を消去し、移動先に描画する。すなわち、ステップＳ１１１５は、表示された属性値をユーザの操作に応じて移動させ、階層表示を変更する処理の一例を示すステップである。この処理により、階層化された属性値を容易にメンテナンスできる仕組みを提供することができる。
【００５９】
この処理については、ＪａｖａＳｃｒｉｐｔ（登録商標）、ダイナミックＨＴＭＬ、スタイルシートなどを用いて行う。具体的には、ＨＴＭＬのドラッグが開始された位置にある＜ｌｉ＞タグを消去して当該レコードの表示を消去し、ステップＳ１１１４と同様に、ドロップが検知された位置にドラッグ位置に記述されていた＜ｌｉ＞タグをＨＴＭＬソース１３２２のように追記する。
【００６０】
なお、図８においては、既存レコード入力欄８１６がドラッグされ、既存レコード入力欄８１７の上部にドロップされた場合であるが、このように、本実施形態においては、種別の異なる属性を跨いで属性値の移動が可能である。つまり、複数種類の属性を跨いで属性値を移動させることが容易な操作でできる仕組みを提供することができる。
【００６１】
ステップＳ１１１６において、情報処理装置１０１のＣＰＵ２０１は、削除ボタンの表示・非表示を制御するために、移動元と移動先の「並び順」の数字を検出する。この処理については、ＪａｖａＳｃｒｉｐｔ（登録商標）、ダイナミックＨＴＭＬ、スタイルシートなどの技術を用いて行う。具体的には、ＲＡＭ２０２に記憶されたカテゴリ・タグリストの「並び順１」〜「並び順４」を繋げた「並び順」の値と、ドラッグが開始された位置とドロップが検知された位置を用いて、ドラッグが開始された位置（移動元）に表示されていたレコードの「並び順」の値と、ドロップが検知された位置（移動先）のレコードの「並び順」の値を取得する。
【００６２】
ステップＳ１１１７において、情報処理装置１０１のＣＰＵ２０１は、削除ボタンの表示・非表示を制御するために、移動元と移動先のそれぞれの配下のレコードについて、アイテムが対応付けられているか、アイテム数を取得する。すなわち、ステップＳ１１１７は、第１の属性の属性値または第２の属性の属性値を指定し、属性値が対応付けられているデータを取得する処理の一例を示すステップである。具体的には、図９の９１１のレコードをドラッグし、９２１の位置にドロップした場合、移動前に押下可能だった削除ボタン９１２が、移動後はアイテム数を持つレコードが配下に現れたため、削除ボタン９２２のように押下できないよう無効にする。この処理は、スクリプトソース９１３とスクリプトソース９２３を用いて、配下レコードのアイテム数の有無により、ボタンの有効・無効の制御を行う。（ステップＳ１１１８〜ステップＳ１１１９）
【００６３】
なお、ステップＳ１１１８においては、移動元レコードの上位階層のレコードについて、アイテム数＝０であれば、削除ボタンを全て有効にする。ステップＳ１１１９においては、アイテム数を持つレコードを移動した場合は、移動先の上位階層の有効な削除ボタンを全て無効にする。
【００６４】
すなわち、ステップＳ１１１８〜ステップＳ１１１９は、対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する処理の一例を示すステップである。また、ステップＳ１１１８〜ステップＳ１１１９は、配下に持つすべての属性値が対応付けられているデータが存在しないと判定された属性値を削除するための削除ボタンを有効に表示し、配下に持つ属性値のうち少なくとも１つが対応付けられているデータが存在すると判定された属性値を削除するための削除ボタンを無効にする、または削除ボタンの表示を抑止する処理の一例を示すステップである。
【００６５】
なお、この実施形態においては、移動元・移動先の上位階層についてアイテム数を判別して削除ボタンを制御するとしたが、この方法に限定するものではなく、移動元・移動先の下位階層についてアイテム数を判別して削除ボタンを制御するとしてもよい。どちらの方法も、アイテムと対応付けられた属性値がユーザによって削除されることを抑止する仕組みである。
【００６６】
ステップＳ１１２０において、情報処理装置１０１のＣＰＵ２０１は、既存レコードがリネームされたことを意味するため、既存レコード入力欄８１６の変更後の値をＨＴＭＬに追記する。
【００６７】
ステップＳ１１２１において、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１１１３〜ステップＳ１１１５の処理によるＨＴＭＬ書換処理が行われたため、全レコードについて「並び順」を再計算し、ＨＴＭＬソースを書換えることで、カテゴリ・タグ編集画面８１０のカテゴリ・タグ一覧を再描画する。
【００６８】
すなわち、ステップＳ１１２１は、ユーザの移動操作に応じて、第１の属性の属性値を示すオブジェクトを第２の属性として表示された第２の属性の属性値の表示部に移動させ、第２の属性の構造情報を変更する処理の一例を示すステップである。また、ステップＳ１１２１は、変更された第２の属性の構造情報に従って、第２の属性の表示情報を生成する処理の一例を示すステップである。また、ステップＳ１１２１は、生成された第２の属性の表示情報を用いて、第２の属性の属性値を構造を用いて表示する処理の一例を示すステップである。具体的には、図９の９１１をユーザがドラッグドロップによって、９２１に移動させた場合、「並び順」の再計算することで、９２０の様になる。
【００６９】
図１２のフローチャートについて説明する。
ステップＳ１２０１において、情報処理装置１０１のＣＰＵ２０１は、ＨＴＭＬソースのカテゴリ・タグレコードの解析処理を行う。具体的には、図１４のスクリプトソース１４０１を用いて、カテゴリ・タグ一覧部分のＨＴＭＬソースを解析する。ここでは、スクリプトソース１４０２により、ＨＴＭＬから＜ｌｉ＞タグをすべて取得する。
【００７０】
ステップＳ１２０２において、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０３〜ステップＳ１２０９の処理を＜ｌｉ＞タグの数だけ、つまりカテゴリ・タグのレコード数分だけ繰り返す。
【００７１】
ステップＳ１２０３において、情報処理装置１０１のＣＰＵ２０１は、サーバ１０２に送信するために、カテゴリ・タグのレコードを生成する。すなわち、ステップＳ１２０３は、変更された階層表示から、属性値の階層情報を生成する処理の一例を示すステップである。具体的には、スクリプトソース１４０７を用いて、カテゴリマスタテーブル１５０２（図１５）と同じ構成を持つレコード（Ｍ＿ＣａｔｅｇｏｒｙＭａｓｔｅｒ）を生成する。
【００７２】
なお、スクリプトソース１４０７を実行する前の処理について、簡単に説明しておく。スクリプトソース１４０３では、カテゴリ・タグのレコード数分繰り返す。スクリプトソース１４０４は、現在解析しているカテゴリ・タグのレコードの「並び順」の値を取得する。スクリプトソース１４０５は、現在解析しているカテゴリ・タグのレコードの「階層」の値を取得する。スクリプトソース１４０６は、「並び順」を次に解析するレコードに更新する。これにより、画面に表示されていたカテゴリ・タグレコードの階層構造に、正しい「並び順」の値が振られることになる。
【００７３】
ステップＳ１２０４において、情報処理装置１０１のＣＰＵ２０１は、ＨＴＭＬの情報から生成したカテゴリ・タグレコードをサーバ１０２に送信する。具体的には、スクリプトソース１４０８を用いて、生成したカテゴリ・タグレコード（Ｍ＿ＣａｔｅｇｏｒｙＭａｓｔｅｒ）をセッションに埋め込み、サーバ１０２に送信する。すなわち、ステップＳ１２０４は、生成された属性値の階層情報を出力する処理の一例を示すステップである。
ステップＳ１２０５において、サーバ１０２のＣＰＵ２０１は、カテゴリ・タグレコードを受信する。
【００７４】
ステップＳ１２０６において、サーバ１０２のＣＰＵ２０１は、受信したカテゴリ・タグレコードの値をチェックする。具体的には、カテゴリ・タグレコード（Ｍ＿ＣａｔｅｇｏｒｙＭａｓｔｅｒ）に含まれる各要素の値が正常か否かバリデーションチェックを行い、チェック結果をＲＡＭ２０２に記憶する。
【００７５】
ステップＳ１２０７において、サーバ１０２のＣＰＵ２０１は、受信したカテゴリ・タグレコードを、カテゴリマスタテーブル１５０２を更新するために用いるカテゴリ・タグリストに追加する。
ステップＳ１２０８において、サーバ１０２のＣＰＵ２０１は、チェックの結果を情報処理装置１０１に送信する。
ステップＳ１２０９において、情報処理装置１０１のＣＰＵ２０１は、チェックの結果を受信する。
以上のステップＳ１２０３〜ステップＳ１２０９の処理を＜ｌｉ＞タグの数だけ、つまりカテゴリ・タグのレコード数分だけ繰り返す。
【００７６】
ステップＳ１２１０において、情報処理装置１０１のＣＰＵ２０１は、カテゴリ・タグのレコード数分だけ送られてきたチェック結果にエラーが含まれるか判定する。エラーが含まれる場合は、ステップＳ１２１１に進む。エラーが含まれない場合は、ステップＳ１２１２に進む。
【００７７】
ステップＳ１２１１において、情報処理装置１０１のＣＰＵ２０１は、チェック結果にエラーが含まれるため、カテゴリ・タグ編集画面８１０において、エラーメッセージを表示（不図示）し、ステップＳ１１１２に戻る。
【００７８】
ステップＳ１２１２において、情報処理装置１０１のＣＰＵ２０１は、チェック結果にエラーが含まれなかったため、属性編集確認画面１０００（カテゴリ・タグ編集確認画面）を表示するために、エラーが無かったことをサーバ１０２に通知する。
ステップＳ１２１３において、サーバ１０２のＣＰＵ２０１は、エラーが無かったことの通知を受け付ける。
【００７９】
ステップＳ１２１４において、サーバ１０２のＣＰＵ２０１は、ステップＳ１２０７にて、作成してきたカテゴリマスタテーブル１５０２を更新するために用いるカテゴリ・タグリストを情報処理装置１０１に送信する。
ステップＳ１２１５において、情報処理装置１０１のＣＰＵ２０１は、カテゴリ・タグリストを受信する。
【００８０】
ステップＳ１２１６において、情報処理装置１０１のＣＰＵ２０１は、受信したカテゴリ・タグリストを表示する。具体的には、カテゴリ・タグリストを用いて、属性編集確認画面１０００（カテゴリ・タグ編集確認画面）にカテゴリ・タグリスト１００１を表示する。
ステップＳ１２１７において、情報処理装置１０１のＣＰＵ２０１は、ユーザによって完了ボタンが押下されたことを受け付ける。
ステップＳ１２１８において、サーバ１０２のＣＰＵ２０１は、カテゴリ・タグの編集が完了したことを受け付ける。
【００８１】
ステップＳ１２１９において、サーバ１０２のＣＰＵ２０１は、ステップＳ１２２０〜ステップＳ１２２３の処理をカテゴリ・タグのレコード数分だけ、繰り返す。
【００８２】
ステップＳ１２２０において、サーバ１０２のＣＰＵ２０１は、カテゴリ・タグレコードのカテゴリＩＤの値を判定する。負の整数の場合は、ステップＳ１２２１に進む。削除フラグが含まれる場合は、ステップＳ１２２２に進む。カテゴリＩＤの値でカテゴリマスタテーブル１５０２（図１５）を検索し、カテゴリＩＤカラムに既に同じ値が存在する場合は、ステップＳ１２２３に進む。
【００８３】
ステップＳ１２２１において、サーバ１０２のＣＰＵ２０１は、情報処理装置１０１の画面において新規に追加されたレコードのため、カテゴリマスタテーブル１５０２にカテゴリ・タグレコードを追加する。
【００８４】
ステップＳ１２２２において、サーバ１０２のＣＰＵ２０１は、情報処理装置１０１の画面において削除されたレコードのため、カテゴリマスタテーブル１５０２にカテゴリ・タグレコードから削除する。
【００８５】
ステップＳ１２２３において、サーバ１０２のＣＰＵ２０１は、情報処理装置１０１の画面において更新されたレコードのため、カテゴリマスタテーブル１５０２を、カテゴリＩＤをキーにしてカテゴリ・タグレコードで更新する。
以上、ステップＳ１２２０〜ステップＳ１２２３の処理をカテゴリ・タグのレコード数分だけ、繰り返す。
ステップＳ１２２４において、サーバ１０２のＣＰＵ２０１は、カテゴリマスタテーブル１５０２の更新が完了したことを情報処理装置１０１に通知する。
ステップＳ１２１５において、情報処理装置１０１のＣＰＵ２０１は、カテゴリマスタテーブル１５０２の更新が完了したことの通知を受信する。
【００８６】
ステップＳ１２１６において、情報処理装置１０１のＣＰＵ２０１は、カテゴリマスタテーブル１５０２の更新が完了したことを更新完了画面（不図示）として表示する。
以上で、図１１の属性編集処理（前半）の一例を示すフローチャート、図１２の属性編集処理（後半）の一例を示すフローチャートについての説明を終了する。
以上により、階層化された属性値を容易にメンテナンスできる仕組みを提供することができる。
【００８７】
また、図１０〜図１１のフローチャートの処理により、メンテナンスを行った階層化された属性値を、データ検索一覧画面４００の検索条件として検索することができる。
【００８８】
〔第２の実施形態〕
次に、図１６〜図１８を用いて、第２の実施形態について説明する。
図１６は、第２の実施形態に係る情報処理装置１０１における属性編集画面１６００の一例を示す図である。図１７は、第２の実施形態に係る情報処理装置１０１およびサーバ１０２における属性編集処理（前半）の一例を示すフローチャートである。図１８は、第２の実施形態に係る情報処理装置１０１およびサーバ１０２における属性編集処理（後半）の一例を示すフローチャートである。
【００８９】
なお、第２の実施形態では、第１の実施形態における図１１のフローチャートを図１７に、第１の実施形態における図１２のフローチャートを図１８にそれぞれ置き換え、第１の実施形態のステップと同じ処理については、同じステップ番号を付与し説明を省略する。
【００９０】
図１７のステップＳ１１１２において、情報処理装置１０１のＣＰＵ２０１は、ユーザ操作を受け付け、既存カテゴリ（例えば、図１６の１６０１）がドラッグされ、タグ情報領域にドロップされた場合は、ステップＳ１７０１に進む。
【００９１】
ステップＳ１７０１において、情報処理装置１０１のＣＰＵ２０１は、ドラッグしたカテゴリ内のアイテム（当該カテゴリＩＤが対応付けられているアイテム）に対してドロップ先のタグＩＤを一括で対応付けるために、ドラッグしたカテゴリのカテゴリＩＤの末尾にドロップ先のタグＩＤを付加する。
【００９２】
なお、この実施形態においては、既存カテゴリがドラッグされ、タグ情報領域にドロップされた場合としたが、これに限定するものではなく、逆に、既存タグ（例えば、図１６の１６０２）がドラッグされ、カテゴリ情報領域にドロップされた場合もステップＳ１７０１に進むとしてもよい。
【００９３】
図１８のステップＳ１２２０において、サーバ１０２のＣＰＵ２０１は、カテゴリ・タグレコードのカテゴリＩＤの値を判定する。カテゴリＩＤの末尾にタグＩＤが付加されている場合は、ステップＳ１８０１に進む。
【００９４】
ステップＳ１８０１において、サーバ１０２のＣＰＵ２０１は、ステップＳ１２２０のカテゴリＩＤが対応付けられたアイテムに対してタグＩＤを一括で対応付ける。具体的には、カテゴリＩＤの値でアイテム＿カテゴリ関連付けテーブル１５０３（図１５）を検索し、ヒットしたアイテムのアイテムＩＤと付与するタグＩＤを組み合わせたレコードを作成し、カテゴリ関連付けテーブル１５０３に登録する。
【００９５】
すなわち、ステップＳ１８０１は、第１の属性の属性値または第２の属性の属性値を指定し、属性値が対応付けられているデータを取得する処理の一例を示すステップである。また、ステップＳ１８０１は、ユーザの移動操作に応じて、第１の属性の属性値を示すオブジェクトを第２の属性の属性値の表示部に移動させた場合、移動させた第１の属性の属性値が対応付けられているデータに、移動先の第２の属性の属性値を一括して対応付ける処理の一例を示すステップである。
【００９６】
なお、この実施形態においては、ドラッグしたカテゴリ内のアイテム（当該カテゴリＩＤが対応付けられているアイテム）に対してドロップ先のタグＩＤを一括で対応付けるとしたが、これに限定するものではなく、逆に、ドラッグしたカテゴリＩＤをドロップ先のタグＩＤ内のアイテム（当該タグＩＤが対応付けられているアイテム）に対して一括で対応付けるとしてもよい。すなわち、ステップＳ１８０１は、ユーザの移動操作に応じて、第１の属性の属性値を示すオブジェクトを第２の属性の属性値の表示部に移動させた場合、移動先の第２の属性の属性値が対応付けられているデータに、移動させた第１の属性の属性値を一括して対応付ける処理の一例を示すステップである。
以上により、ある属性の属性値が対応付けられているデータに一括して他の属性の属性値を割り当てることができるようになる。
【００９７】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【００９８】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００９９】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【０１００】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０２】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１０３】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０１０４】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１０５】
１００  データ管理システム
１０１  情報処理装置
１０２  サーバ
１０３  ネットワーク
【図１】
2016029565.tif 000003
【図２】
2016029565.tif 000004
【図３】
2016029565.tif 000005
【図４】
2016029565.tif 000006
【図５】
2016029565.tif 000007
【図６】
2016029565.tif 000008
【図７】
2016029565.tif 000009
【図８】
2016029565.tif 000010
【図９】
2016029565.tif 000011
【図１０】
2016029565.tif 000012
【図１１】
2016029565.tif 000013
【図１２】
2016029565.tif 000014
【図１３】
2016029565.tif 000015
【図１４】
2016029565.tif 000016
【図１５】
2016029565.tif 000017
【図１６】
2016029565.tif 000018
【図１７】
2016029565.tif 000019
【図１８】
2016029565.tif 000020
【図１９】
2016029565.tif 000021