(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022033768
(43)【公開日】2022-03-02
(54)【発明の名称】データリストを利用したウェブサイト構築のデバイス、システム、および方法
(51)【国際特許分類】
H04L 67/02 20220101AFI20220222BHJP
G06F 3/0482 20130101ALI20220222BHJP
【FI】
H04L67/02
G06F3/0482
【審査請求】有
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2021184166
(22)【出願日】2021-11-11
(62)【分割の表示】P 2020129170の分割
【原出願日】2014-03-13
(31)【優先権主張番号】61/781,866
(32)【優先日】2013-03-14
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】515217409
【氏名又は名称】ウィックス.コム リミテッド.
(74)【代理人】
【識別番号】110002952
【氏名又は名称】特許業務法人鷲田国際特許事務所
(72)【発明者】
【氏名】カフマン アミット
(72)【発明者】
【氏名】ホーランダー オーレン
(72)【発明者】
【氏名】アブラハミ ナダヴ
(72)【発明者】
【氏名】トビセク ジリ
(57)【要約】 (修正有)
【課題】構築されるウェブサイトに表示されるコンテンツ項目のプールと、項目を表示するために使用するウェブサイト構築システム(WBS)を提供する。
【解決手段】WBSにおいて、各ビューは、ウェブサイトのウェブページのセクション用のテンプレートであるビューのセットと、コンテンツ項目をウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチング及び適合モジュールと、を備える。動的なマッチング及び適合モジュールは、ビューのセットから、マッチするビューを突き止めること、マッチするビューをオンザフライで構築すること、ビューのセットから、マッチするビューを突き止めて、突き止められたビューを修正すること、のうちの少なくとも1つを実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
構築されるウェブサイトに表示されるコンテンツ項目のプールと、
前記項目を表示するために使用することができるビューのセットであって、各ビューが、前記ウェブサイトのウェブページのセクション用のテンプレートである、ビューのセットと、
前記コンテンツ項目を前記ウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチングおよび適合モジュールと、
を備えるウェブサイト構築システム(WBS)。
【請求項2】
前記動的なマッチングおよび適合モジュールは、
(a)前記ビューのセットから、マッチするビューを突き止めること、
(b)マッチするビューをオンザフライで構築すること、
(c)前記ビューのセットから、マッチするビューを突き止めて、突き止めたビューを修正すること、
のうちの少なくとも1つを実行する、請求項1に記載のウェブサイト構築システム。
【請求項3】
前記ウェブサイト構築システムは、項目型をサポートし、前記ビューのセットの少なくとも1つのビューは、項目型と関連付けられ、前記項目型に属する項目を表示するために使用可能である、請求項1に記載のウェブサイト構築システム。
【請求項4】
前記動的なマッチングおよび適合モジュールは、ビューとコンテンツ項目とのマッチングを、適したビューを前記コンテンツ項目の項目型にマッチングすることにより、実行する、請求項3に記載のウェブサイト構築システム。
【請求項5】
1つまたは複数の条件付き要素を有するビューを作成するビューマネージャをさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項6】
前記コンテンツ項目のプールは、コレクション更新アプリケーション・プログラミング・インターフェース(API)、コレクション更新ウェブサービス、RSSフィード、および、外部のデータソースに基づくコレクション更新用インターフェース、のうちの少なくとも1つを介して更新可能な、少なくとも1つの項目コレクションを含む、請求項1に記載のウェブサイト構築システム。
【請求項7】
ウェブサイトページを、コンテンツ項目についてのビューとして直接利用する、ウェブサイト/ビューコンバータをさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項8】
所与のビューと所与の項目とを関連付ける、事前関連付けモジュールをさらに備え、前記動的なマッチングおよび適合モジュールは、ビューと項目との事前関連付けに基づいて、動的なマッチングを実行する、請求項1に記載のウェブサイト構築システム。
【請求項9】
前記事前関連付けは、前記所与の項目と前記所与のビューとの前記事前関連付けの明示的な特定を含む、請求項8に記載のウェブサイト構築システム。
【請求項10】
前記事前関連付けは、名称属性、コンテキスト属性、のうちの少なくとも1つに基づく、請求項8に記載のウェブサイト構築システム。
【請求項11】
前記マッチングおよび適合モジュールは、
事前に定義されたビューのプール内において、所与の項目にマッチする1つまたは複数のビューを検索する、ビュープールサーチャを含む、請求項8に記載のウェブサイト構築システム。
【請求項12】
前記ビュープールサーチャは、1つまたは複数のキーワードに基づいて、ビューと項目とをマッチさせる、キーワードベースサーチャを含む、請求項11に記載のウェブサイト構築システム。
【請求項13】
前記ビュープールサーチャは、1つまたは複数の属性マッチに基づいて、ビューと項目とをマッチさせる、属性ベースサーチャを含む、請求項11に記載のウェブサイト構築システム。
【請求項14】
前記ビュープールサーチャは、1つまたは複数のフィールドマッチに基づいて、ビューと項目とをマッチさせる、フィールドマッチングサーチャを含む、請求項11に記載のウェブサイト構築システム。
【請求項15】
前記ビュープールサーチャは、1つまたは複数のアプリケーション関係パラメータに基づいて、ビューと項目とをマッチさせる、アプリケーション関係パラメータサーチャを含む、請求項11に記載のウェブサイト構築システム。
【請求項16】
前記動的なマッチングおよび適合モジュールは、前記ウェブサイトを表示するために使用されている電子デバイスのフォームファクタを考慮することにより、1つまたは複数のマッチするビュー候補を除外する、請求項1に記載のウェブサイト構築システム。
【請求項17】
前記構築システムは、既存のビューから特徴を継承する派生ビューを生成可能な、ビュー継承モジュールを介した、ビューの継承をサポートする、請求項1に記載のウェブサイト構築システム。
【請求項18】
所与のビューが所与のコンテンツにとって適切でない場合、ビュー継承ツリーにおいて、適切なビューを上方に検索する親ビューサーチャをさらに備える、請求項17に記載のウェブサイト構築システム。
【請求項19】
項目型に基づいて、派生ビューを自動的に作成するビューマネージャをさらに備える、請求項17に記載のウェブサイト構築システム。
【請求項20】
前記ウェブサイト構築システムは、既存の項目型から特徴を継承する派生項目型を生成可能な、項目型継承モジュールを介した、項目型の継承をサポートする、請求項1に記載のウェブサイト構築システム。
【請求項21】
派生ビューに基づいて、派生項目型を自動的に作成するビューマネージャ、をさらに備える、請求項20に記載のウェブサイト構築システム。
【請求項22】
型継承ツリーにおいて上方に検索を行って、所与の項目型の親の型にマッチするビューを突き止める親サーチャ、をさらに備える、請求項20に記載のウェブサイト構築システム。
【請求項23】
前記マッチングおよび適合モジュールは、親の項目型にマッチする、突き止められたビューを、前記親の項目型から派生項目型になされた修正に従って、適合させる、請求項22に記載のウェブサイト構築システム。
【請求項24】
所与のコンテンツ項目について、潜在的なマッチするビューをランク付けする、ランキングモジュール、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項25】
前記ランキングモジュールは、フィールドのマッチング、キーワードのマッチング、属性のマッチング、のうちの少なくとも1つにランキングを適用する、請求項24に記載のウェブサイト構築システム。
【請求項26】
優先順位値を各ビューに付加する、ビュー優先順位マネージャをさらに備え、
前記動的なマッチングモジュールは、複数のマッチする候補のビューを見つけて、前記複数のマッチする候補のビューから、前記優先順位値に基づいて利用するための1つのビューを選択することができる、請求項1に記載のウェブサイト構築システム。
【請求項27】
前記動的なマッチングモジュールによって突き止められた複数のマッチする候補のビューから、利用するためのビューを選択するための、ビューレイティングコールバックを定義するコールバックマネージャ、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項28】
前記動的なマッチングモジュールは、複数のマッチする候補のビューを見つけて、エンドユーザ選択インターフェース生成部を起動し、エンドユーザが前記複数のマッチする候補のビューを切り替えることを可能にするエンドユーザ選択ユーザインターフェースを生成する、請求項1に記載のウェブサイト構築システム。
【請求項29】
前記コンテンツ項目は、エンドユーザにより切替え可能な2つ以上の表示フォーマットを利用するポリモーフィック表示を使用することにより、可視となっており、前記ポリモーフィック表示での特定の表示フォーマットの前記エンドユーザ選択が、ビューのコンテンツ項目とのマッチングに影響を与える、請求項1に記載のウェブサイト構築システム。
【請求項30】
同じ項目型の項目の所与のセットから表示される、一連の項目のビューの中で、持続性を強制する、ビュー選択持続性エンフォーサ、をさらに備える、請求項3に記載のウェブサイト構築システム。
【請求項31】
前記マッチングおよび適合モジュールは、
所与のコンテンツ項目について、複数のマッチする候補のビューの中の、最上位ランキングの候補を、動的に修正する動的ビューコンストラクタであって、前記マッチングおよび適合モジュールは、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビューを何も見つけない場合に、動的に修正する動的ビューコンストラクタ、を含む請求項1に記載のウェブサイト構築システム。
【請求項32】
前記マッチングおよび適合モジュールは、
所与のコンテンツ項目について、ビューを動的に構築する動的ビューコンストラクタであって、前記マッチングおよび適合モジュールは、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビューを何も見つけない場合に、動的に修正する動的ビューコンストラクタ、を含む、請求項1に記載のウェブサイト構築システム。
【請求項33】
事前に定義されたビューのプールを検索して、マッチするビューを突き止めて、前記ビューをオンザフライで修正し、所与のコンテンツ項目の1つまたは複数の特徴を受け入れる、統合サーチャ/コンストラクタモジュール、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項34】
前記コンテンツ項目の2つ以上の要素をそれぞれ受け入れる、2つ以上の区域に、表示を分割する、ビュー内区域分割部、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項35】
前記ビューの既存のコンポーネントに相対的に定義されるランディングゾーンに基づいて、新しいコンポーネントをビュー内に配置する、ランディングゾーン配置モジュール、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項36】
前記ランディングゾーン配置モジュールは、配置されるべきコンポーネントのプロパティに基づいて、適した前記ランディングゾーンを選択する、請求項35に記載のウェブサイト構築システム。
【請求項37】
前記ランディングゾーン配置モジュールは、
コンテナの端部、
ミニページの端部、
所与の型を有するコンテナの端部、
所与の属性を有するコンテナの端部、
最近のフィールド追加の場所に続けて、
少なくとも所与の量の空の画面空間を有する場所、
新しく作成されたページまたはミニページの中、
のうちの少なくとも1つに基づいて、前記ランディングゾーンを自動的に生成する、請求項35に記載のウェブサイト構築システム。
【請求項38】
1つまたは複数の動的レイアウトルールを、前記特定のビューに適用する、動的レイアウトマネージャ、をさらに備える請求項2に記載のウェブサイト構築システム。
【請求項39】
前記動的レイアウトマネージャは、前記動的レイアウトルールと、動的レイアウトアンカーとを考慮する、請求項38に記載のウェブサイト構築システム。
【請求項40】
(a)マッチしたか、または(b)オンザフライで動的に構築されたか、または(c)オンザフライで動的に適合された、ビューの埋込バージョンを作成する、埋込ビュー作成部、をさらに備える、請求項38に記載のウェブサイト構築システム。
【請求項41】
前記埋込ビュー作成部は、
前記ビュー内の各データコンポーネントを、前記項目のマッチするフィールドにマッピングする、ビュー対フィールドマッチングモジュール、を含む、請求項40に記載のウェブサイト構築システム。
【請求項42】
前記ビュー対フィールドマッチングモジュールは、(a)事前関連付けデータ;(b)ビューコンポーネントと項目フィールドとによって使用される共通の名称;(c)ビューコンポーネントと項目フィールドとに割り当てられたマッチするキーワードを介したクエリ、のうちの少なくとも1つを利用する、請求項41に記載のウェブサイト構築システム。
【請求項43】
前記埋込ビュー作成部は、欠落フィールドをゼロの大きさに、サイズ変更する、コンポーネントサイズ変更モジュールを含む、請求項40に記載のウェブサイト構築システム。
【請求項44】
前記埋込ビュー作成部は、
前記特定のビュー内の少なくとも1つコンポーネントの大きさを最適化して、使用されている表示ユニットのアスペクト比を受け入れるようにする、ビュー表示サイズ調整部、を含む、請求項40に記載のウェブサイト構築システム。
【請求項45】
前記ビュー表示サイズ調整部は、
前記コンポーネントの可能なターゲット幅のセットを生成して、ターゲット幅ごとに対応する高さを判定するために、動的レイアウト計算を行う、ターゲット幅生成部と、
前記使用されている表示ユニットのアスペクト比を最良に受け入れる、1つのターゲット幅を選択する、ターゲット幅選択部と、
を含む、請求項40に記載のウェブサイト構築システム。
【請求項46】
前記所与のビューは、前記ビュー内に含まれたリピータコンポーネントを含み、前記リピータコンポーネントは、前記所与のビューを介して表示されたコンテンツ項目の一次リストに関係する二次リストを表示する、請求項1に記載のウェブサイト構築システム。
【請求項47】
前記一次リストが前記所与のビューに従って有する、同じ名称属性およびコンテキスト属性を使用することにより、前記二次リストを表示する、リピータコンポーネント表示モジュール、をさらに備える、請求項46に記載のウェブサイト構築システム。
【請求項48】
前記コンテンツ項目のプールから取得されたコンテンツを表示するコンテナを含む、リンキングコンポーネントを定義する、リンキングコンポーネントマネージャ、をさらに備える請求項1に記載のウェブサイト構築システム。
【請求項49】
前記リンキングコンポーネントマネージャは、前記コンテンツ項目のプールからの1つのコンテンツ項目を含む、1つのミニページを一度に表示する、請求項48に記載のウェブサイト構築システム。
【請求項50】
前記リンキングコンポーネントマネージャは、ブラウズされたコンテンツ項目間の推移をアニメーション表示する、請求項49に記載のウェブサイト構築システム。
【請求項51】
前記リンキングコンポーネントマネージャは、同時に、コンテンツ項目のギャラリーを表示する、請求項48に記載のウェブサイト構築システム。
【請求項52】
前記リンキングコンポーネントマネージャは、前記リンキングコンポーネントに直接リンクする直接URLに応答して、前記リンキングコンポーネントによってリンクされた、1つまたは複数のコンテンツ項目を表示する、請求項48に記載のウェブサイト構築システム。
【請求項53】
前記リンキングコンポーネントマネージャは、関係リスト連結マネージャと関連付けられて、コンテンツ項目の関係リストに基づいて、2つのリンキングコンポーネントを相互に連結する、請求項48に記載のウェブサイト構築システム。
【請求項54】
前記リンキングコンポーネントマネージャは、アグリゲータフィールド連結マネージャと関連付けられて、2つのリンキングコンポーネントを、前記2つのリンキングコンポーネントのうちの1つの中の項目に基づいて集計された値を計算するアグリゲーション関数に基づいて、相互に連結する、請求項48に記載のウェブサイト構築システム。
【請求項55】
前記リンキングコンポーネントマネージャは、タグクラウド連結マネージャと関連付けられて、2つのリンキングコンポーネントを、前記2つのリンキングコンポーネントのうちの1つと関連付けられたクラウドタグからの、タグの選択に基づいて、相互に連結する、請求項48に記載のウェブサイト構築システム。
【請求項56】
前記リンキングコンポーネントマネージャは、階層ツリー連結マネージャと関連付けられて、2つのリンキングコンポーネントを、少なくとも1つの親/子ポインタを有する階層ツリーに基づいて、相互に連結する、請求項48に記載のウェブサイト構築システム。
【請求項57】
前記リンキングコンポーネントマネージャは、フォーム表示連結マネージャと関連付けられて、2つのリンキングコンポーネントを、第1のリンキングコンポーネントからの、前記第1のリンキングコンポーネントの現在表示されている項目の代替の提示を表示する、という要求に基づいて、相互に連結する、請求項48に記載のウェブサイト構築システム。
【請求項58】
前記ビュー内のコンテンツ項目の提示プロパティに基づいて、前記ビューを含むリンキングコンポーネントのレイアウトを修正する動的レイアウトマネージャ、をさらに備える請求項48に記載のウェブサイト構築システム。
【請求項59】
(a)適用されている特定のビューのコンテキストで、表示されたコンテンツに、1つまたは複数のコンポーネントを加えること、
(b)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを削除すること、
(c)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを修正すること、
のうちの少なくとも1つを実行することにより、特定のコンテンツ項目を適合させる、特定項目適合モジュール、をさらに備える、請求項1に記載のウェブサイト構築システム。
【請求項60】
前記特定項目適合モジュールは、
所与のビューの局所変形を、内部派生ビューとして作成して、前記内部派生ビューに、修正のレイヤを追加する、局所変形作成部、を含む請求項59に記載のウェブサイト構築システム。
【請求項61】
前記内部派生ビューは、前記内部派生ビューが適用される項目のアイデンティフィケーションと共に格納される、請求項59に記載のウェブサイト構築システム。
【請求項62】
前記内部派生ビューは、前記内部派生ビューが適用される項目を含む、現在のリストアプリケーションに格納される、請求項59に記載のウェブサイト構築システム。
【請求項63】
前記特定項目適合モジュールは、
ビューカスタマイゼーションを、所与のビューの全てのインスタンスに適用する、カスタマイゼーションモジュールを含む、請求項59に記載のウェブサイト構築システム。
【請求項64】
前記ウェブサイト構築システムによって生成された1つまたは複数のオブジェクトを、ウェブサイト設計者が取得すること可能にする、アプリケーションストアを管理する、アプリケーションストアマネージャモジュール、をさらに備え、
前記取得することは、(a)ダウンロードすること、(b)ストレージ物品から取得すること、(c)出荷されたストレージ物品から取得すること、(d)前記オブジェクトを格納するサーバコンピュータから取得すること、(e)クラウドコンピューティングサーバから取得すること、のうちの少なくとも1つを含む、請求項1に記載のウェブサイト構築システム。
【請求項65】
前記1つまたは複数のオブジェクトは、ビュー、テンプレート、項目型、項目のコレクション、リストアプリケーション、リンキングコンポーネント、のうちの1つまたは複数を含む、請求項55に記載のウェブサイト構築システム。
【請求項66】
構築されるウェブサイトに表示されるコンテンツ項目のプールを格納することと、
前記項目を表示するために使用することができるビューのセットであって、各ビューが、前記ウェブサイトのウェブページのセクション用のテンプレートである、ビューのセットを格納することと、
前記コンテンツ項目を前記ウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチングおよび適合を実行することと、
を含む、ウェブサイトを構築するためのコンピュータ化された方法。
【請求項67】
(a)前記ビューのセットから、マッチするビューを突き止めること、
(b)マッチするビューをオンザフライで構築すること、
(c)前記ビューのセットから、マッチするビューを突き止めて、突き止められたビューを修正すること、
のうちの少なくとも1つを実行することを含む、請求項66に記載のコンピュータ化された方法。
【請求項68】
所与のビューと所与の項目とを関連付けること、をさらに含み、
前記動的なマッチングおよび適合は、ビューと項目との事前関連付けに基づいて、動的なマッチングを実行することを含む、請求項66に記載のコンピュータ化された方法。
【請求項69】
既存のビューから特徴を継承する派生ビューを生成することにより、ビューの継承をサポートすること、
をさらに含む、請求項66に記載のコンピュータ化された方法。
【請求項70】
所与のコンテンツ項目について、潜在的なマッチするビューをランク付けすること、をさらに含む、請求項66に記載のコンピュータ化された方法。
【請求項71】
前記動的なマッチングおよび適合を実行することは、
所与のコンテンツ項目について、複数のマッチする候補のビューの中の、最上位ランキングの候補を、動的に修正することであって、前記マッチングおよび適合が、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビュー、を何も見つけない場合に、動的に修正すること、を含む、請求項66に記載のコンピュータ化された方法。
【請求項72】
1つまたは複数の動的レイアウトルールを、前記特定のビューに適用すること、をさらに含む、請求項66に記載のコンピュータ化された方法。
【請求項73】
前記所与のビューは、前記ビュー内に含まれたリピータコンポーネントを含み、前記リピータコンポーネントは、前記所与のビューを介して表示されたコンテンツ項目の、一次リストに関係する二次リストを表示する、請求項66に記載のコンピュータ化された方法。
【請求項74】
前記コンテンツ項目のプールから取得されたコンテンツを表示するコンテナを含む、リンキングコンポーネントを定義すること、をさらに含む、請求項66に記載のコンピュータ化された方法。
【請求項75】
(a)適用されている特定のビューのコンテキストで、表示されたコンテンツに、1つまたは複数のコンポーネントを加えること、
(b)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを削除すること、
(c)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを修正すること、
のうちの少なくとも1つを実行することにより、特定のコンテンツ項目を適合させる特定項目適合の実行をさらに含む、請求項66に記載のコンピュータ化された方法。
【請求項76】
ウェブサイト構築システムによって生成された1つまたは複数のオブジェクトを、ウェブサイト設計者が取得すること可能にする、アプリケーションストアを管理すること、をさらに含み、
前記取得することは、(a)ダウンロードすること、(b)ストレージ物品から取得すること、(c)出荷されたストレージ物品から取得すること、(d)前記オブジェクトを格納するサーバコンピュータから取得すること、(e)クラウドコンピューティングサーバから取得すること、のうちの少なくとも1つを含む、請求項66に記載のコンピュータ化された方法。
【請求項77】
機械によって実行されると、前記機械に、
構築されるウェブサイトに表示されるコンテンツ項目のプールを格納することと、
前記項目を表示するために使用することができるビューのセットであって、各ビューが、前記ウェブサイトのウェブページのセクション用のテンプレートである、ビューのセットを格納することと、
前記コンテンツ項目を前記ウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチングおよび適合を実行すること、
を含む方法を実行させる、命令を格納している記憶媒体。
【請求項78】
前記方法は、
(a)前記ビューのセットから、マッチするビューを突き止めること、
(b)マッチするビューをオンザフライで構築すること、
(c)前記ビューのセットから、マッチするビューを突き止めて、突き止められたビューを修正すること、
のうちの少なくとも1つを実行すること、を含む、請求項77に記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブサイト構築の分野に係る。
【背景技術】
【0002】
無数のユーザが、ウェブコンテンツを読むか、または他の方法で消費するために、毎日インターネットを利用する。例えば、ユーザは、オンラインニュースを読む、オンライン動画を観る、他のユーザとソーシャルネットワークを介して対話する、オンラインゲームをする等のために、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、またはタブレットを利用し、典型的にはブラウザを起動してもよい。
【0003】
ウェブサイトには、特に、HTMLコードおよび/またはJavaScript(登録商標)などのコードを手動で記述することにより、構築されるものがあり得る。しかし、ウェブサイトが、より洗練され、さらにリッチでインタラクティブなユーザ経験を提供するようになったため、種々の「ウェブサイトビルダ」ツールが、特定のウェブページの構築、さらにはウェブサイト全体の構築をも容易にしかつ/または自動化するために導入された。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願公開第2013/0219263号明細書
【特許文献2】米国特許出願公開第2014/0282130号明細書
【発明の概要】
【0005】
本発明は、例えば、データリストを利用したウェブサイト構築のためのデバイス、システム、および方法を備えることができる。
【0006】
本発明のいくつかの例示的実施形態によれば、例えば、ウェブサイト構築システム(Website Building System;WBS)は、構築されるウェブサイトに表示されるコンテンツ項目のプールと、前記項目を表示するために使用することができるビューのセットであって、各ビューが、前記ウェブサイトのウェブページのセクション用のテンプレートである、ビューのセットと、前記コンテンツ項目を前記ウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチングおよび適合モジュールと、を備える。
【0007】
いくつかの実施形態において、例えば、前記動的なマッチングおよび適合モジュールは、(a)前記ビューのセットから、マッチするビューを突き止めること、(b)マッチするビューをオンザフライで構築すること、(c)前記ビューのセットから、マッチするビューを突き止めて、前記突き止めたビューを修正すること、のうちの少なくとも1つを実行する。
【0008】
いくつかの実施形態において、例えば、前記システムは、項目型をサポートし、前記ビューのセットの少なくとも1つのビューが、項目型と関連付けられ、前記項目型に属する項目を表示するために使用可能である。
【0009】
いくつかの実施形態において、例えば、前記動的なマッチングおよび適合モジュールは、ビューとコンテンツ項目とのマッチングを、適したビューを前記コンテンツ項目の項目型にマッチングすることにより、実行する。
【0010】
いくつかの実施形態において、例えば、前記WBSは、1つまたは複数の条件付き要素を有するビューを作成するビューマネージャをさらに備える。
【0011】
いくつかの実施形態において、例えば、前記コンテンツ項目のプールは、コレクション更新アプリケーション・プログラミング・インターフェース(API)、コレクション更新ウェブサービス、RSSフィード、および、外部のデータソースに基づくコレクション更新用インターフェース、のうちの少なくとも1つを介して更新可能な、少なくとも1つの項目コレクションを含む。
【0012】
いくつかの実施形態において、例えば、前記WBSは、ウェブサイトページを、コンテンツ項目についてのビューとして直接利用する、ウェブサイト/ビューコンバータをさらに備える。
【0013】
いくつかの実施形態において、例えば、前記WBSは、所与のビューと所与の項目とを関連付ける、事前関連付けモジュールをさらに備え、前記動的なマッチングおよび適合モジュールは、ビューと項目との事前関連付けに基づいて、動的なマッチングを実行する。
【0014】
いくつかの実施形態において、例えば、前記事前関連付けは、前記所与の項目と前記所与のビューとの前記事前関連付けの明示的な特定を含む。
【0015】
いくつかの実施形態において、例えば、前記事前関連付けは、名称属性、コンテキスト属性、のうちの少なくとも1つに基づく。
【0016】
いくつかの実施形態において、例えば、前記マッチングおよび適合モジュールは、事前に定義されたビューのプールにおいて、所与の項目にマッチする1つまたは複数のビューを検索する、ビュープールサーチャを含む。
【0017】
いくつかの実施形態において、例えば、前記ビュープールサーチャは、1つまたは複数のキーワードに基づいて、ビューと項目とをマッチさせる、キーワードベースサーチャを含む。
【0018】
いくつかの実施形態において、例えば、前記ビュープールサーチャは、1つまたは複数の属性マッチに基づいて、ビューと項目とをマッチさせる、属性ベースサーチャを含む。
【0019】
いくつかの実施形態において、例えば、前記ビュープールサーチャは、1つまたは複数のフィールドマッチに基づいて、ビューと項目とをマッチさせる、フィールドマッチングサーチャを含む。
【0020】
いくつかの実施形態において、例えば、前記ビュープールサーチャは、1つまたは複数のアプリケーション関係パラメータに基づいて、ビューと項目とをマッチさせる、アプリケーション関係パラメータサーチャを含む。
【0021】
いくつかの実施形態において、例えば、前記動的なマッチングおよび適合モジュールは、前記ウェブサイトを表示するために使用されている電子デバイスのフォームファクタを考慮することにより、1つまたは複数のマッチするビュー候補を除外する。
【0022】
いくつかの実施形態において、例えば、前記システムは、既存のビューから特徴を継承する派生ビューを生成可能な、ビュー継承モジュールを介した、ビューの継承をサポートする。
【0023】
いくつかの実施形態において、例えば、前記WBSは、所与のビューが、所与のコンテンツにとって適切でない場合、ビュー継承ツリーにおいて、適切なビューを上方に検索する親ビューサーチャをさらに備える。
【0024】
いくつかの実施形態において、例えば、前記WBSは、項目型に基づいて、派生ビューを自動的に作成するビューマネージャをさらに備える。
【0025】
いくつかの実施形態において、例えば、前記システムは、既存の項目型から特徴を継承する派生項目型を生成可能な、項目型継承モジュールを介した、項目型の継承をサポートする。
【0026】
いくつかの実施形態において、例えば、前記WBSは、派生ビューに基づいて、派生項目型を自動的に作成するビューマネージャをさらに備える。
【0027】
いくつかの実施形態において、例えば、前記WBSは、型継承ツリーにおいて上方に検索し、所与の項目型の親の型にマッチするビューを突き止める、親サーチャをさらに備える。
【0028】
いくつかの実施形態において、例えば、前記マッチングおよび適合モジュールは、親の項目型にマッチする突き止められたビューを、前記親の項目型から、派生項目型に対してなされた修正に従って、適合させる。
【0029】
いくつかの実施形態において、例えば、前記WBSは、所与のコンテンツ項目について、潜在的なマッチするビューをランク付けする、ランキングモジュール、をさらに備える。
【0030】
いくつかの実施形態において、例えば、前記ランキングモジュールは、フィールドのマッチング、キーワードのマッチング、属性のマッチング、のうちの少なくとも1つにランキングを適用する。
【0031】
いくつかの実施形態において、例えば、前記WBSは、優先順位値を各ビューに付加する、ビュー優先順位マネージャをさらに備え、前記動的なマッチングモジュールは、複数のマッチする候補のビューを見つけて、前記複数のマッチする候補のビューから、前記優先順位値に基づいて利用するための1つのビューを選択する。
【0032】
いくつかの実施形態において、例えば、前記WBSは、前記動的なマッチングモジュールによって突き止められた、複数のマッチする候補のビューから、利用するためのビューを選択するための、ビューレイティングコールバックを定義するコールバックマネージャ、をさらに備える。
【0033】
いくつかの実施形態において、例えば、前記動的なマッチングモジュールは、複数のマッチする候補のビューを見つけて、エンドユーザ選択インターフェース生成部を起動し、エンドユーザが前記複数のマッチする候補のビューを切り替えることを可能にするエンドユーザ選択ユーザインターフェースを生成する。
【0034】
いくつかの実施形態において、例えば、前記コンテンツ項目は、エンドユーザにより切り替え可能な2つ以上の表示フォーマットを利用するポリモーフィック表示を使用することにより、可視となっており、前記ポリモーフィック表示での特定の表示フォーマットの前記エンドユーザ選択が、ビューとコンテンツ項目のマッチングに影響を与える。
【0035】
いくつかの実施形態において、例えば、前記WBSは、同じ項目型の項目の所与のセットから表示される一連の項目のビューの中で持続性を強制するビュー選択持続性エンフォーサをさらに備える。
【0036】
いくつかの実施形態において、例えば、前記マッチングおよび適合モジュールは、所与のコンテンツ項目について、複数のマッチする候補のビューの中の最上位ランキングの候補を動的に修正する動的ビューコンストラクタであって、前記マッチングおよび適合モジュールは、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビューを何も見つけない場合に、動的に修正する動的ビューコンストラクタを含む。
【0037】
いくつかの実施形態において、例えば、前記マッチングおよび適合モジュールは、所与のコンテンツ項目について、ビューを動的に構築する動的ビューコンストラクタであって、前記マッチングおよび適合モジュールが、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビューを何も見つけない場合に、動的に修正する動的ビューコンストラクタを含む。
【0038】
いくつかの実施形態において、例えば、前記WBSは、事前に定義されたビューのプールを検索して、マッチするビューを突き止めて、前記ビューをオンザフライで修正し、所与のコンテンツ項目の1つまたは複数の特徴を受け入れる、統合サーチャ/コンストラクタモジュールをさらに備える。
【0039】
いくつかの実施形態において、例えば、前記WBSは、表示を、前記コンテンツ項目の2つ以上の要素をそれぞれが受け入れる2つ以上の区域に分割するビュー内区域分割部をさらに備える。
【0040】
いくつかの実施形態において、例えば、前記WBSは、前記ビューの既存のコンポーネントに相対的に定義されるランディングゾーンに基づいて、新しいコンポーネントをビュー内に配置するランディングゾーン配置モジュールをさらに備える。
【0041】
いくつかの実施形態において、例えば、前記ランディングゾーン配置モジュールは、配置されるべきコンポーネントのプロパティに基づいて、適した前記ランディングゾーンを選択する。
【0042】
いくつかの実施形態において、例えば、前記ランディングゾーン配置モジュールは、コンテナの端部、ミニページの端部、所与の型を有するコンテナの端部、所与の属性を有するコンテナの端部、最近のフィールド追加の場所に続けて、少なくとも所与の量の空の画面空間を有する場所、新しく作成されたページまたはミニページの中、のうちの少なくとも1つに基づいて、前記ランディングゾーンを自動的に生成する。
【0043】
いくつかの実施形態において、例えば、前記WBSは、1つまたは複数の動的レイアウトルールを前記特定のビューに適用する動的レイアウトマネージャをさらに備える。
【0044】
いくつかの実施形態において、例えば、前記動的レイアウトマネージャは、前記動的レイアウトルールと、動的レイアウトアンカーとを考慮する。
【0045】
いくつかの実施形態において、例えば、前記WBSは、(a)マッチした、または(b)オンザフライで動的に構築された、または(c)オンザフライで動的に適合された、ビューの埋込バージョンを作成する埋込ビュー作成部をさらに備える。
【0046】
いくつかの実施形態において、例えば、前記埋込ビュー作成部は、前記ビュー内の各データコンポーネントを前記項目のマッチするフィールドにマッピングするビュー対フィールドマッチングモジュールを含む。
【0047】
いくつかの実施形態において、例えば、前記ビュー対フィールドマッチングモジュールは、(a)事前関連付けデータ;(b)ビューコンポーネントと項目フィールドとによって使用される共通の名称;(c)ビューコンポーネントと項目フィールドとに割り当てられたマッチするキーワードを介したクエリ、のうちの少なくとも1つを利用する。
【0048】
いくつかの実施形態において、例えば、前記埋込ビュー作成部は、欠落フィールドをゼロの大きさにサイズ変更するコンポーネントサイズ変更モジュールを含む。
【0049】
いくつかの実施形態において、例えば、前記埋込ビュー作成部は、前記特定のビュー内の少なくとも1つコンポーネントの大きさを最適化して、使用されている表示ユニットのアスペクト比を受け入れるようにするビュー表示サイズ調整部を含む。
【0050】
いくつかの実施形態において、例えば、前記ビュー表示サイズ調整部は、前記コンポーネントの可能なターゲット幅のセットを生成して、ターゲット幅ごとに対応する高さを判定するために、動的レイアウト計算を行う、ターゲット幅生成部と、使用されている前記表示ユニットの前記アスペクト比を最良に受け入れる1つのターゲット幅を選択する、ターゲット幅選択部と、を含む。
【0051】
いくつかの実施形態において、例えば、前記所与のビューは、前記ビュー内に含まれたリピータコンポーネントを含み、前記リピータコンポーネントは、前記所与のビューを介して表示されたコンテンツ項目の一次リストに関係する二次リストを表示する。
【0052】
いくつかの実施形態において、例えば、前記WBSは、前記一次リストが前記所与のビューに従って有する、同じ名称属性およびコンテキスト属性を使用することにより、前記二次リストを表示する、リピータコンポーネント表示モジュール、をさらに備える。
【0053】
いくつかの実施形態において、例えば、前記WBSは、前記コンテンツ項目のプールから取得されたコンテンツを表示するコンテナを含む、リンキングコンポーネントを定義する、リンキングコンポーネントマネージャ、をさらに備える。
【0054】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、前記コンテンツ項目のプールからの1つのコンテンツ項目を含む、1つのミニページを一度に表示する。
【0055】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、ブラウズされたコンテンツ項目間の推移をアニメーション表示する。
【0056】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、同時に、コンテンツ項目のギャラリーを表示する。
【0057】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、前記リンキングコンポーネントに直接リンクする直接URLに応答して、前記リンキングコンポーネントによってリンクされた、1つまたは複数のコンテンツ項目を表示することができる。
【0058】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、関係リスト連結マネージャと関連付けられて、コンテンツ項目の関係リストに基づいて、2つのリンキングコンポーネントを相互に連結する。
【0059】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、アグリゲータフィールド連結マネージャと関連付けられて、2つのリンキングコンポーネントを、前記2つのリンキングコンポーネントのうちの1つの中の項目に基づいて集計された値を計算するアグリゲーション関数に基づいて、相互に連結する。
【0060】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、タグクラウド連結マネージャと関連付けられて、2つのリンキングコンポーネントを、前記2つのリンキングコンポーネントのうちの1つと関連付けられたクラウドタグからの、タグの選択に基づいて、相互に連結する。
【0061】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、階層ツリー連結マネージャと関連付けられて、2つのリンキングコンポーネントを、少なくとも1つの親/子ポインタを有する階層ツリーに基づいて、相互に連結する。
【0062】
いくつかの実施形態において、例えば、前記リンキングコンポーネントマネージャは、フォーム表示連結マネージャと関連付けられて、2つのリンキングコンポーネントを、第1のリンキングコンポーネントからの、前記第1のリンキングコンポーネントの現在表示されている項目の代替の提示を表示する、という要求に基づいて、相互に連結する。
【0063】
いくつかの実施形態において、例えば、前記WBSは、前記ビュー内のコンテンツ項目の提示プロパティに基づいて、前記ビューを含む、リンキングコンポーネントのレイアウトを修正する、動的レイアウトマネージャ、をさらに備える。
【0064】
いくつかの実施形態において、例えば、前記WBSは、(a)適用されている特定のビューのコンテキストで、表示されたコンテンツに、1つまたは複数のコンポーネントを加えること、(b)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを削除すること、(c)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを修正すること、のうちの少なくとも1つを実行することにより、特定のコンテンツ項目を適合させる、特定項目適合モジュール、をさらに備える。
【0065】
いくつかの実施形態において、例えば、前記特定項目適合モジュールは、所与のビューの局所変形(local variant)を、内部派生ビューとして作成して、内部派生ビューに、修正のレイヤを追加する、局所変形作成部、を含む。
【0066】
いくつかの実施形態において、例えば、前記内部派生ビューは、前記内部派生ビューが適用される前記項目のアイデンティフィケーションと共に格納される。
【0067】
いくつかの実施形態において、例えば、前記内部派生ビューは、前記内部派生ビューが適用される前記項目を含む、現在のリストアプリケーションに格納される。
【0068】
いくつかの実施形態において、例えば、前記特定項目適合モジュールは、ビューカスタマイゼーションを、所与のビューの全てのインスタンスに適用する、カスタマイゼーションモジュールを含む。
【0069】
いくつかの実施形態において、例えば、前記WBSは、前記ウェブサイト構築システムによって生成された1つまたは複数のオブジェクトを、ウェブサイト設計者が取得すること可能にする、アプリケーションストアを管理する、アプリケーションストアマネージャモジュール、をさらに備え、前記取得することは、(a)ダウンロードすること、(b)ストレージ物品から取得すること、(c)出荷されたストレージ物品から取得すること、(d)前記オブジェクトを格納するサーバコンピュータから取得すること、(e)クラウドコンピューティングサーバから取得すること、のうちの少なくとも1つを含む。
【0070】
本発明のいくつかの例示的実施形態によれば、例えば、前記ウェブサイトを構築するためのコンピュータ化された方法は、構築されるウェブサイトに表示されるコンテンツ項目のプールを格納することと、前記項目を表示するために使用することができるビューのセットであって、各ビューが、前記ウェブサイトのウェブページのセクション用のテンプレートである、ビューのセットを格納することと、前記コンテンツ項目を前記ウェブサイトに表示するために、各コンテンツ項目について適したビューを動的に提供する、動的なマッチングおよび適合を実行することと、を含む。
【0071】
いくつかの実施形態において、例えば、前記方法は、(a)ビューの前記セットから、マッチするビューを突き止めること、(b)マッチするビューをオンザフライで構築すること、(c)ビューの前記セットから、マッチするビューを突き止めて、前記突き止められたビューを修正すること、のうちの少なくとも1つを含む。
【0072】
いくつかの実施形態において、例えば、前記方法は、所与のビューと所与の項目とを関連付けること、をさらに含み、前記動的なマッチングおよび適合が、ビューと項目との事前関連付けに基づいて、動的なマッチングを実行することを含む。
【0073】
いくつかの実施形態において、例えば、前記方法は、既存のビューから特徴を継承する派生ビューを生成することにより、ビューの継承をサポートすること、をさらに含む。
【0074】
いくつかの実施形態において、例えば、前記方法は、所与のコンテンツ項目について、潜在的なマッチするビューをランク付けすること、をさらに含む。
【0075】
いくつかの実施形態において、例えば、前記方法は、所与のコンテンツ項目について、複数のマッチする候補のビューの中の、最上位ランキングの候補を、動的に修正することであって、前記マッチングおよび適合が、閾値より大きいマッチングスコアの前記コンテンツ項目とマッチする、事前に定義されたマッチするビューを何も見つけない場合に、動的に修正すること、を含む。
【0076】
いくつかの実施形態において、例えば、前記方法は、1つまたは複数の動的レイアウトルールを、前記特定のビューに適用すること、を含む。
【0077】
いくつかの実施形態において、例えば、前記所与のビューは、前記ビュー内に含まれたリピータコンポーネントを含み、前記リピータコンポーネントは、前記所与のビューを介して表示されたコンテンツ項目の、一次リストに関係する二次リストを表示する。
【0078】
いくつかの実施形態において、例えば、前記方法は、前記コンテンツ項目のプールから取得されたコンテンツを表示するコンテナを含む、リンキングコンポーネントを定義すること、を含む。
【0079】
いくつかの実施形態において、例えば、前記方法は、(a)適用されている特定のビューのコンテキストで、表示されたコンテンツに、1つまたは複数のコンポーネントを加えること、(b)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを削除すること、(c)適用されている特定のビューのコンテキストで、表示されたコンテンツの1つまたは複数のコンポーネントを修正すること、のうちの少なくとも1つを実行することにより、特定のコンテンツ項目を適合させる特定項目適合の実行を含む。
【0080】
いくつかの実施形態において、例えば、前記方法は、前記ウェブサイト構築システムによって生成された1つまたは複数のオブジェクトを、ウェブサイト設計者が取得すること可能にする、アプリケーションストアを管理すること、を含み、前記取得することは、(a)ダウンロードすること、(b)ストレージ物品から取得すること、(c)出荷されたストレージ物品から取得すること、(d)前記オブジェクトを格納するサーバコンピュータから取得すること、(e)クラウドコンピューティングサーバから取得すること、のうちの少なくとも1つを含む。
【0081】
いくつかの実施形態では、例えば、機械によって実行されると、前記機械に、本発明による方法を実行させる、命令を格納した記憶媒体、を含んでもよい。
【0082】
いくつかの実施形態において、例えば、前記1つまたは複数のオブジェクトは、ビュー、テンプレート、項目型、項目のコレクション、リストアプリケーション、リンキングコンポーネント、のうちの1つまたは複数を含む。
【0083】
本発明は、他のおよび/または追加的な恩恵または利点を提供し得る。
【0084】
説明を分かり易く、明確にする目的のため、図面に示される要素は、必ずしも正確な縮尺で描かれてはいない。例えば、いくつかの要素の寸法は、表示を明確にする目的で、他の要素に比較して、実際よりも大きくされていることがある。さらに、参照番号が、図面間で繰り返し使用されて、対応または類似する要素を示すことがある。以下で、図面を列挙する。
【図面の簡単な説明】
【0085】
【
図1】本発明のいくつかの例示的実施形態に係る、ウェブサイトを構築するために使用され得る、ウェブサイト構築システム(WBS)の概略ブロック図を例示する図である。
【
図2】本発明のいくつかの例示的実施形態に係る、特にコンポーネントとそのコンテンツを示す、WBSの概略ブロック図を例示する図である。
【
図3】本発明のいくつかの例示的実施形態に係る、特にオブジェクト間の継承を例示する、WBSの概略ブロック図を例示する図である。
【
図4】本発明のいくつかの例示的実施形態に係る、特にテンプレート例示する、WBSの概略ブロック図を例示する図である。
【
図5】本発明のいくつかの例示的実施形態に係る、特に項目型を例示する、WBSの概略ブロック図を例示する図である。
【
図6】本発明のいくつかの例示的実施形態に係る、特にコレクションおよび項目を例示する、WBSの概略ブロック図を例示する図である。
【
図7】本発明のいくつかの例示的実施形態に係る、特にリンキングコンポーネント(Linking Component;LC)を例示する、WBSの概略ブロック図を例示する図である。
【
図8】本発明のいくつかの例示的実施形態に係る、特にビューおよびそのビューを管理するモジュールを例示する、WBSの概略ブロック図を例示する図である。
【
図9】本発明のいくつかの例示的実施形態に係る、特にビューおよびそのビューを管理するモジュールを例示する、WBSの概略ブロック図を例示する図である。
【
図10】本発明のいくつかの例示的実施形態に係る、特に3段階の処理であるビューのマッチング/構築および書込みのモジュールを例示する、WBSの概略ブロック図を例示する図である。
【
図11】本発明のいくつかの例示的実施形態に係る、特にビュー突き止め(または、ビューと項目のマッチング)を例示する、WBSの概略ブロック図を例示する図である。
【
図12】本発明のいくつかの例示的実施形態に係る、特にビューの事前関連付けを例示する、WBSの概略ブロック図を例示する図である。
【
図13】本発明のいくつかの例示的実施形態に係る、特にビュー検索を例示する、WBSの概略ブロック図を例示する図である。
【
図14】本発明のいくつかの例示的実施形態に係る、特に動的なビューの構築を例示する、WBSの概略ブロック図を例示する図である。
【
図15】本発明のいくつかの例示的実施形態に係る、特にビューの選択およびポリモーフィック表示を例示する、WBSの概略ブロック図を例示する図である。
【
図16】本発明のいくつかの例示的実施形態に係る、特に埋込ビューの作成を例示する、WBSの概略ブロック図を例示する図である。
【
図17】本発明のいくつかの例示的実施形態に係る、埋込ビューの動的レイアウトおよび調整を例示する、WBSの概略ブロック図を例示する図である。
【
図18】本発明のいくつかの例示的実施形態に係る、ランディングゾーンの配置および修正を例示する、WBSの概略ブロック図を例示する図である。
【
図19】本発明のいくつかの例示的実施形態に係る、特にビューの修正を例示する、WBSの概略ブロック図を例示する図である。
【
図20】本発明のいくつかの例示的実施形態に係る、特にLCの連結管理を例示する、WBSの概略ブロック図を例示する図である。
【
図21】本発明のいくつかの例示的実施形態に係る、特にアプリストアの統合を例示する、WBSの概略ブロック図を例示する図である。
【
図22】本発明のいくつかの例示的実施形態に係る、レストランのリストアプリケーション(LA)の明示的なコレクション更新をサポートする例示的なユーザインターフェース(UI)を示す図である。
【
図23A】本発明のいくつかの例示的実施形態に係る、1つのLC内に複数のコレクションからの項目の階層を表示する、例示的なレストランのLAを示す図である。
【
図23B】本発明のいくつかの例示的実施形態に係る、例示的なレストランのLAの注釈付きのバージョンを示す図である。
【
図24】本発明のいくつかの例示的実施形態に係る、1つの拡大された項目を表示するサンプルのLCを示す図である。
【
図25】本発明のいくつかの例示的実施形態に係る、マルチカラムのギャラリースタイルフォーマットで複数の項目ビューを表示するサンプルのLCを示す図である。
【
図26】本発明のいくつかの例示的実施形態に係る、システムによって生成されたものとして、リストに含まれるべき項目を選択するために使用される一例の検索ボックスを示す図である。
【
図27】本発明のいくつかの例示的実施形態に係る、サンプルのLAにおいて、ビューインスタンス間の間隔に関して、「項目の間隔」の値を増加させる例示的な効果を示す図である。
【発明を実施するための形態】
【0086】
以下の詳細な説明では、いくつかの実施形態の全体的な理解を提供するために、多数の特定の詳細について記載される。しかし、いくつかの実施形態が、これらの特定の詳細が与えられなくとも実践され得ることを、当業者は理解するであろう。他の例において、周知の方法、手順、構成要素、ユニットおよび/または回路について、詳細には説明せず、検討が不明瞭にならないようにした。
【0087】
本発明は、本明細書において説明されるような、リストコンポーネントおよびリストアプリケーションが実装され得るウェブサイト構築システム(WBS)を備えてもよい。WBSは、設計者もしくはプログラマまたはウェブサイトを構築したい他の人、により使用されてよい。WBSのいくつかの実施形態は、初心者ユーザもしくは素人ユーザにも、または、必ずしも、プログラミングの高度なスキルを(またはどんなスキルも)有していない、および、必ずしもプログラミング言語に熟練していない、ウェブサイト作成者にも、適切に構成され得る。WBSの直接ユーザは、ウェブサイトを作成するためにWBSを利用できるユーザであり、「設計者」といい得、一方、ウェブサイト自体は、構築されて公開された後で、「エンドユーザ」により使用され得る。
【0088】
本発明によれば、WBSは、項目および項目コレクション;項目型;ビュー(条件付き要素、被算出要素、および他の要素を含む);テンプレートおよび継承(派生ビューおよび派生型を含む);リンキングコンポーネント(LC);項目、型、およびビューの間の動的なマッチング;派生ビューに基づく項目型の自動作成およびその逆のサポート;カスタマイゼーションおよび自動的に生成されるカスタマイゼーションダイアログのサポート;特定項目の適合のサポート;関係LC間の連結の作成のサポート;全ての上記の特徴に関するアプリケーションストアの統合のサポート、の特徴を備えてもよく、かつ/または、可能にしてもよい。
【0089】
本発明のいくつかの実施形態は、2013年2月20日に出願され、米国特許出願公開第2013/0219263号として公開された「Web Site Design System Integrating Dynamic Layout and Dynamic Content」という名称の特許文献1に記載される、システム、方法、モジュール、および/または、コンポーネントと併せて利用され得、参照によりその出願全体が本明細書に援用される。
【0090】
ページ、コンテナ、およびコンポーネント
【0091】
図1を参照すると、本発明のいくつかの例示的実施形態に係る、ウェブサイト110を構築するために使用され得る、ウェブサイト構築システム(WBS)100の概略ブロック図が例示される。WBS100は、ウェブサイト110を構築、創作、編集および/または生成するために使用されてよく、ウェブサイト110は、コンポーネント120(例えば、テキスト、画像、ビデオ)を含み得るページ111を備えてもよい。
【0092】
コンポーネント120は、例えば、アトミックコンポーネント121および/またはコンテナコンポーネント122であってよい。例えば、コンテナコンポーネント122は、シングルページコンテナ123またはマルチページコンテナ124(お互いに分離された複数のミニページ125を含む)であってよい。これらが、単なる非制限的な、例示的な例であることは明らかである。特に、
図1は、コンポーネントおよびコンテナの特定の構成を例示するが、多数の類似の構成が可能である。
【0093】
マルチページコンテナ124は、一度に単一のミニページ125を表示してもよいし(単一ページ表示)、または、複数または全てのミニページ125を表示してもよい(例として、例えば、
図25に例示するように、ギャラリー表示またはカルーセル表示またはコレクション表示として実装される)。マルチページコンテナ124は、固定の表示モード(例えば、ギャラリー表示のみ)を有してもよく、または、ユーザに複数の表示モードの切替えを可能にしてもよい。
【0094】
マルチページコンテナ124を含むページを閲覧するとき、ユーザは、1つまたは複数の適切な機構、例えば、ナビゲーションボタン(例えば、最初、前、次、最後)および/または複数の可視のミニページ125(または、そのサムネール、縮小表示)からの視覚的な選択、を使用して、所与のマルチページコンテナ124に含まれる種々のミニページ125間を進むことができる。
【0095】
図2を参照すると、本発明のいくつかの例示的実施形態に係る、特にコンポーネント120(例えば、ウェブサイト110のページ111のコンポーネント120)とそのコンテンツ130を示す、WBS100の概略ブロック図が例示される。
【0096】
コンポーネント120は、コンテンツ130、例えば、テキストコンポーネントのテキストコンテンツ、画像コンポーネントの画像、ビデオプレーヤコンポーネントのビデオコンテンツなど、を有してもよい。コンポーネント120は、属性131、例えば、表示属性132(例えば、色、フレーム)、およびレイアウト属性133(例えば、大きさおよび位置)など、を有してもよい(または、それらと関連付けられてもよい)。
図2が、非制限的、例示的な実施形態を示すこと、ならびに、種々の属性131、132および/または133が、必ずしもコンテンツ130に「応じて決まる」わけではないこと、は明らかである。例えば、WBS100内のコンポーネントのうちのいくつかは、属性131、132および/または133を有してもよい(または、それらと関連付けられてもよい)が、必ずしもコンテンツ130を有するわけではない。同様に、いくつかのコンポーネント型では、属性131、132および/または133は、特定のコンテンツと、または、任意のコンテンツとも、完全に別個のものであってよい(および/または、独立していてよい)。他のコンポーネント型では、コンテンツは、属性と関連付けられてよく、例えば、1つまたは複数の特定のフォント型および/または色が、テキストコンポーネント内に示されるテキストの要素と関連付けられてよい。
【0097】
WBS100は、動的レイアウトマネージャ(Dynamic Layout Manager;DLM)101によって扱われ得る、動的レイアウトルール(例えば、複数のコンポーネントのエッジを連結するアンカー)を含み得る、ページ定義を生成してもよい。例えば、DLM101は、動的レイアウト(Dynamic Layout;DL)のトリガが起動される際にはいつも起動されてよく、例えば、ページレイアウトに影響を与える変更(例えば、コンポーネントを追加する、コンポーネントを削除する、コンポーネントの大きさに影響を与える方法でコンポーネントのコンテンツを変更する、コンポーネントを移動する、コンポーネントの大きさを変更する)、外部のコンテンツを反映するコンポーネントについてコンテンツの変更、などがトリガとなる。他の適切なトリガまたはトリガ機構が、使用されてよく、例えば、上記特許文献1に詳細に記載されている。
【0098】
継承関係
【0099】
図3を参照すると、本発明のいくつかの例示的実施形態に係る、特にオブジェクト間の特定の継承を例示する、WBS100の概略ブロック図を例示が例示される。WBS100は、特にテンプレート(ページを含んでよい)、項目型、およびビュー等のエンティティ型を含む、所与のエンティティ型のエンティティ間の継承関係をサポート可能な、継承サポートマネージャ102を備えてもよい。
【0100】
エンティティAがエンティティBから継承するとき、Aの下位要素が、Bの下位エンティティから、コピーまたはインポートされる。例えば、エンティティBは、「親エンティティB」(141が付される)と称されてよく、一方、エンティティAは、「子エンティティA」または「継承エンティティA」(142が付される)と称されてよい。エンティティAが、新しい下位要素の追加、コピーされた下位要素の削除、コピーされた下位要素のプロパティの変更、を(制限することなく)含む、Bからコピーされた下位要素に対する局所的な修正を含んでもよいことに留意されたい。局所的な修正は、継承エンティティAに適用されるだけであり、親エンティティBには適用されない。
【0101】
継承サポートマネージャ102は、1つまたは複数の継承有効化モジュール、例えば、コピーによる継承モジュール103、および/または、フル継承モジュール104(後続の修正が親エンティティBに対して行われると、継承の連係が、継承エンティティAに継続的に影響を与えるため、「継続継承」モジュールとも呼ばれてよい)、を備えてもよく、または、利用してもよく、または、それらと関連付けられてもよい。いくつかの実施形態において、WBS100が、コピーによる継承のみをサポートしてもよく、一方、他の実施形態において、WBS100が、フル継承のみをサポートしてもよい、ことに留意されたい。従って、いくつかの実施形態において、WBS100は、フル継承またはコピーによる継承の両方ではなく、いずれかをサポートしてもよい。
【0102】
コピーによる継承モジュール103は、コピーによる継承を可能にし得るため、エンティティAは、親エンティティBに基づいて、親エンティティBの構造および下位要素をコピーすることにより作成された、別個のエンティティとなる。しかし、当該コピーは別個のエンティティであり、継承エンティティAの作成の後に親エンティティBに対して行われる変更を反映しない。
【0103】
フル継承モジュール104は、フル継承を可能にし得るため、継承されたエンティティAが、(たとえ修正されたときでも)親エンティティBのインスタンスであり続ける。例えば、継承エンティティAが作成された後に、親エンティティBが修正される場合、親エンティティBに対して行われた変更が、自動的に継承エンティティAにおいて反映され、継承エンティティAに対して行われる局所的な修正と組み合わせられる。
【0104】
継承サポートマネージャ102および/またはそのモジュールは(継承をサポートするエンティティ型ごとに)、(a)正規の継承、これにおいてはAがBから継承する;(b)複数レベルの継承、これにおいてはAがBから継承し、BがCから継承する;(c)多重の継承、これにおいてはAがBとCとの両方から継承し、両方からの下位要素を組み合わせる;(d)ダイアモンド継承、これにおいてはAがBとCとの両方から継承し、BとCとの両方が、別のエンティティDから継承する、継承型のいずれか、またはその組み合わせをサポートしてもよい。
【0105】
テンプレート
【0106】
図4を参照すると、本発明のいくつかの例示的実施形態に係る、特にテンプレート例示する、WBS100の概略ブロック図が例示される。WBS100は、ページテンプレート128を管理することが可能なテンプレートマネージャ105を備えてもよい。例えば、テンプレート128は、編集されている正規のウェブサイトの一部ではない、特別な型のページ(またはミニページ)であってよい。テンプレート128は、正規のページに埋め込まれてもよいし、そのようなページのコンテンツに加えられてもよいし、加えてまたは代替として、テンプレート128は、新しいページの作成のための基礎として使用されてもよい。いくつかの実施形態において、テンプレート128のこれらの機能の両方が、特定のテンプレートから継承するページを定義することにより実装されてもよい。任意選択で、ページには、複数のテンプレートが含まれてもよく、この複数のページは全て、ページのコンテンツと一緒に組み合わせられてもよい。
【0107】
WBS100はさらに、1つのコンポーネントのプロパティを記述する、シングルコンポーネントテンプレート129をサポートしてもよく、他のテンプレートおよびページの構築の際に使用されてもよい。ページテンプレート128が、追加的なページレベルのプロパティ(例えば、動的レイアウトアンカー)を有する、複数のコンポーネントテンプレートとして見なされてもよいことに留意されたい。
【0108】
いくつかの実施形態において、WBS100は、ページテンプレート128;シングルコンポーネントテンプレート129;リストアプリケーションテンプレート127;ビューテンプレート126等のテンプレート型を可能にしてもよく、または、サポートしてもよい。上記にて例示の目的で記載される種々の型のテンプレートが、大きく異なった範囲、および/または、複雑さ、および/または、特徴、を有し得るオブジェクトに関係することに留意されたい。例えば、リストアプリケーションテンプレートは、ターンキーレストランサイト(例えば、
図21に例示される)、ターンキーニュース報道ウェブサイト、などのような、完全なアプリケーション環境またはそのかなりの部分について記述し得る。そのようなものとして、リストアプリケーションテンプレートは、全て実際のウェブサイトの作成または生成に使用される、複数の項目型、項目、コレクション、ビュー、およびページ、を含んでもよい。
【0109】
任意選択で、WBS100は、修正されたテンプレートがベースのテンプレートから派生され得るように、テンプレート間の継承関係をサポートしてもよく、または可能にしてもよい。本発明のこの特徴は、ページとテンプレートとの間の継承関係(例えば、特定のページが、1つまたは複数のテンプレートから継承する)に加えられてもよい。
【0110】
項目型
【0111】
図5を参照すると、本発明のいくつかの例示的実施形態に係る、特に項目型を例示する、WBS100の概略ブロック図が例示される。WBS100は、「型」すなわち項目型135を管理することが可能な型マネージャ106を備えてよく、型は、項目を記述するデータレコード定義(例えば、項目スキーマ)であってよい。例えば、例示の項目型135は、フィールド136のセット(例えば、テキスト、番号、画像)を備えてもよい。任意選択で、1つの可能なフィールド型は、項目(または項目のセット)に対するポインタ137であり、項目の階層(ポインタを介して親へ)、項目チェイン(ポインタを介して次の項目へ)、または、2つ以上の項目間の他の項目間関係、を作成するために使用されてよい。さらに別の可能なフィールド型は、タグのセット(所与のフィールドについてタグのリストから選択される)であり、タグクラウドのような機構を介した回収用に項目をマークするために使用され得る。
【0112】
項目型135は、追加、削除、および修正が任意選択で加えられた他の項目型135から継承してよい。例えば、「シャツ」項目型は、「衣服」項目型から継承してもよく、追加的なフィールド「袖(半袖/長袖)」を有してもよい。
【0113】
項目型135のプールは、コレクションレベル、アプリケーションレベル、設計者レベル、またはWBSレベルで、定義されてもよい。任意選択で、WBS100は、1つまたは複数の適切なレベルで、1つまたは複数の項目型プール138をサポートしてもよい。
【0114】
コレクションおよび項目
【0115】
図6を参照すると、本発明のいくつかの例示的実施形態に係る、特にコレクションおよび項目を例示する、WBS100の概略ブロック図が例示される。WBS100は、項目145の1つまたは複数のコレクション144を含み得るバックエンドデータベース143を、備えてよく、または、それらと関連付けられてよい。各コレクション144は、1つまたは複数の項目145を備えてもよい。各項目145は、指定の項目型136と関連付けられ得る。コレクションは、統一的であってもよいし(例えば、そのコレクションの全ての項目が、同じ項目型を有する)、非統一的であってもよい(例えば、そのコレクション内の項目のうちの少なくとも2つが、2つの異なる項目型を有する)。
図6が、例示の目的で、そのデータベース143が、コレクション144と項目145の両方を備えることを示すことに留意されたい。いくつかの実施形態において、コレクションが項目を備えるため、コレクションおよび項目が、階層関係を有し得る。
【0116】
コレクション更新
【0117】
項目145のコレクション144は、例えば、項目145を追加すること、項目145を削除すること、および/または、項目145を修正することにより、更新されてよい。例えば、WBS100は、ユーザ(例えば、設計者、開発者、ウェブサイト作成者)が、コレクション144の更新または編集に使用してもよい、自動的に生成される画面を提供することが可能なコレクションマネージャ146を任意選択で備えてよく、例えば、
図22に例示するような、一例のUIが、レストランのリストアプリケーション用のコレクション更新(例えば、メニュー/セクション/料理の追加、削除または編集)をサポートする。加えてまたは代替として、開発者は、自分自身のコレクション更新フォーム147を作成して、ランタイムコレクションの更新のためにエンドユーザに提供することができる。
【0118】
いくつかの実施形態において、WBS100は、作成されたウェブサイトが、コレクションマネージャ146とインターフェースで直接接続して、コレクション144を更新し得る、プログラマチックインターフェース(例えば、コレクション更新API148)を提供してもよい。任意選択で、WBSは、外部アプリケーション(例えば、ウェブアプリケーション、モバイルアプリケーション、デスクトップアプリケーション、クラウドベースのアプリケーションなど)が、構築されたウェブサイトを介してコレクション144にアクセスする必要なく、コレクション144にアクセスして、コレクション144を直接更新することができるようにする、インターフェース(例えば、コレクション更新ウェブサービス149)を提供してもよい。いくつかの実施形態において、WBS100は、外部のデータソース(例えば、RSSフィード)に基づく、コレクション更新用インターフェース150を、所与のコレクション144に付加するように提供してもよく、WBS自身が、入力されるデータフィードに基づいて、コレクション144の更新の責任を負ってもよい。
【0119】
任意選択で、コレクション144は、外部のシステムまたはデータセットに存在するデータを、例えば、「仮想コレクション」151として、表す(または指し示す)ように、構築されてもよい。この場合、下層にあるシステムまたはデータセットにおける変更が、仮想コレクション144にて自動的に反映される。
【0120】
リンキングコンポーネント
【0121】
図7を参照すると、本発明のいくつかの例示的実施形態に係る、特にリンキングコンポーネント(LC)を例示する、WBS100の概略ブロック図が例示される。WBS100は、リンキングコンポーネント(LC)152を備えてもよく、またはその利用を可能にしてもよく、リンキングコンポーネント152は、LCマネージャ106モジュールを介して管理されまたは扱われてよい。各LC152は、各項目に動的または静的に関連付けられたビューを介して、1つまたは複数のコレクションから取得される項目を表示する、特別な型のマルチページコンテナであってよく、各ミニページは、関連付けられたビューを介して1つの項目を表示する。実装は、(a)1つのミニページ(ならびに、関係項目および関係項目に関連付けられたビュー)を随時表示するLC152;(b)数個のミニページを同時に表示するか(例えば、ギャラリーまたはカルーセル型のコンテナ)、または複数の項目を関連付けられたビューを介して示し得る(例えば、各ビューがミニページ内に表示されるように)、LC152を含む多数の型のLC152をサポートしてもよい。LC152は、直接(例えば、LC152がページまたはミニページ内に含まれることにより)使用されてもよいし、LC152を含むテンプレートを介して(例えば、テンプレートに含まれてよい他のコンポーネントのように)使用されてもよい。1つのページまたはミニページは、複数のLC152を含んでもよい。
【0122】
任意選択で、LCは、特定の項目と直接、または、1つのコレクションの項目と、または、コレクションのセット(例えば、コンテンツのテーブルのような構造を使用して、次々とまたは階層的に表示され得る)と、関連付けられてよい。例えば、(
図23に例示するように)レストランのリストアプリケーション(List Application;LA)は、階層的メニュー体系を表示するメニューLCを使用してもよく、それによって、「メニュー」コレクション(例えば、現在のメニュー名称)、「セクション」コレクション(例えば、メニューセクション名称「サラダ」、「副菜&最初の一品」など)、および「料理」コレクション(例えば、特定の料理の名称と価格)から、項目を表示する。そのようなLCは、本明細書においては、複合LCと称されてもよい。
【0123】
いくつかの実施形態において、仮想ミニページ生成部107は、LC152と関連付けられた1つまたは複数のコレクションの項目ごとに、仮想ミニページを自動的に生成してもよい。1つのLC152が、複数のコレクションと関連付けられてもよく、複数のコレクションのうちのあるものは仮想であってよいし、あるものは仮想でなくてもよい、ことは明らかである。LC152が表示されると、設計者およびユーザは、そのLCの複数の表示されるミニページ間を手動で、例えば、スクロールバーまたはナビゲーションボタン(例えば、最初、前、次、最後)を使用することにより、ナビゲートしてもよい。設計者およびユーザはまた、本明細書において説明するように、追加的な操作を実行することができる。
【0124】
本発明によれば、WBS100は、LC152との直接リンクを可能にし得るLC直接アクセスモジュール153を備えてよく、例えば、LCを含むページが、URLを使用して直接アクセスされることができるようにし得る。そのような例示的な直接URLには、例えば以下のものがあり得る。
【0125】
www.MySite.com/prefix/MyPage.html?MyItem
【0126】
www.MySite.com/prefix/MyPage.html?LC1=MyItem1&LC2=MyItem2
【0127】
www.MySite.com/prefix/MyPage.html?LC1=MyFilterQueryString
【0128】
かかる直接リンクを使用することで、LC152が、要求された項目を既に表示している状態で、または、クエリおよびパラメータが、(例えば、PHPプログラムによる処理のために渡されるために)正規のURLに加えられるのと同様の方法で、所与のクエリが使用されて項目がフィルタリングされた状態で、WBS100に、(LC152を含む)特定のページを開いてもよい。
【0129】
LC152が、URLに由来するクエリの結果を表示した状態で、WBS100が、LC152を含むページを開くと、LC152は、クエリの結果を、クエリ結果構造108として表示し、クエリ結果構造108は詳述されたものでも要約されたものでもよい。結果リストは、単独では必ずしも、ページでもミニページでもないが、WBS100によって定義される任意のまたは事前に定義された構造を有してよい。詳細な結果リストは、複数のミニページ(例えば、各見つかった結果について、1つのミニページ)を任意選択で含んでよく、これは、LC152が1つまたは複数のミニページを随時表示する正規の状況とは、異なることがある。
【0130】
任意選択で、WBS100は、そのような直接リンクまたはディープリンクを、特定のLC152、または、特定のLC型に制限するように構成されてもよい。例えば、LCリンキング制約モジュール154は、LCまたはLC型への直接リンクに関する制約または制限を定義するために、使用されてよく、さらに、そのようなLCリンキング制約を強制する責任を負っていてもよい。
【0131】
いくつかの実施形態において、WBS100は、代替のインターフェース(例えば、ウェブサービスベースのインターフェース、または、メッセージパッシングベースのインターフェース)を備えて、上記で説明した機能のうちの1つまたは複数にアクセスしてもよい。
【0132】
WBS100は、フィルタ検索ボックスのみを表示すること(結果が、他のどこかに表示された状態で);結果リストを表示すること;「タグクラウド」、すなわち、所与のコレクションの項目を分類する(qualify)タグのグループ、を表示すること等の特定の使用のために、特別なLC152を、任意選択で定義および利用してもよい。
【0133】
LC152の例示的な使用には、(a)LC152が、1つの事前に指定された最上位レベルの項目と直接関連付けられる(および表示される)こと(
図24参照);(b)LC152が、1つの事前に指定された最上位レベルの項目と直接関連付けられ、この項目を、1つまたは複数の含まれた関係リストと一緒に表示すること(関係リストは、関係項目を、同じまたは異なるコレクションから示す(
図23A参照));(c)LC152が、(項目の所与のセットをリストから選択したフィルタによって)フィルタリングされたコレクションと関連付けられ、手動による事前の項目選択、または、実際の動的なクエリ、を実装することのうちの1つまたは複数が含まれ得る。
【0134】
リストでのナビゲーション(上記で説明した)に加えて、WBS100は、設計者/ユーザの許可および特権に応じて、リストがLC152に表示されるときに起動され得る追加的な操作を可能にしてもよい。そのような追加的な操作には、(a)追加項目フォーム(例えば、本明細書において説明されるように、項目追加モードで使用されるビュー)に飛ぶこと;(b)拡大項目ページに飛ぶこと;(c)関係リストに飛ぶこと;(d)項目編集に飛ぶこと等が含まれ得る。
【0135】
ビュー
【0136】
図8~9を参照すると、本発明のいくつかの例示的実施形態に係る、特にビューおよびそのようなビューを管理するモジュールを例示する、WBS100の概略ブロック図が例示される。各ビュー155は、コレクションからの項目を表示するために使用される特別な型のテンプレートであってもよい。各ビュー155は、1つの項目を表示し、一方、複数の項目表示は、LC152内に、複数のビューを使用して達成することができる。
【0137】
WBS100は、同じコレクションの異なる項目ごとに異なるビュー155を利用することができるビューマネージャ156を備えてよい。例えば、ユーザが、複数のフォーマット(例えば、テキストエントリー、画像エントリー、ビデオエントリー)を有するブログレコード間を進む場合、表示に使用されるビュー155は、項目ごとに変更され、その過程で表示されるフォーマットを変えてもよい。
【0138】
ビュー155は、表示ビューに常に適用される(または表示ビューに含まれる)固定ビュー要素157、および/または、ビュー条件159と関連付けられてよい、条件付きビュー要素158、を含むことができる。例えば、条件付きビュー要素158は、(a)下層にある項目に所与のデータフィールドが存在すること;(b)下層にある項目の所与のデータフィールドの値;(c)データフィールドの値とデータフィールドの値の間の関係とに関与する事前に特定された方式;(d)表示LC152のパラメータ(例えば、リスト型のギャラリーで表示するときのみ、所与のフィールドを表示する);(e)ユーザプロファイルまたは他のソースから取得される、ユーザの属性(例えば、ある組織内の内部ユーザ、または、特定の区域にいるユーザのみ、に対してだけ、特定のフィールドを表示する);(f)使用モード(例えば、作成、編集、または表示に使用されているビュー155である)、のうちの1つまたは複数に応じて決まってもよい。
【0139】
例示的な実施形態において、ビュー155は、(a)正規または固定のビュー要素157(例えば、ページタイトル、背景画像);(b)表示項目(例えば、売家の価格、そのような家の画像、説明のテキスト)からのデータで埋められた、データコンポーネント162;(c)ビュー内に関係リストを表示するために使用される、リピータコンポーネント163(本明細書において説明したように);(d)表示項目からのコンテンツに基づいて計算された情報(例えば、数値の価格フィールドから得られた価格の付加価値税(VAT)の値)を表示する、計算済みコンポーネント164;(e)条件付きビュー要素158であって、表示でのその内包物(または、その属性)が、ビュー条件159に応じて決まる、条件付きビュー要素158(例えば、フィールド「今日のおすすめ」に事前に定義された値を有する、レストランの項目について、色付きのリボンを表示する);(f)ビュー条件159に応じて決まってもよい、データ検証ルール161;(g)ビュー条件159に応じて決まってもよい動的レイアウトルールおよびアンカーであってもよい、条件付き動的レイアウト要素165、のうちの1つまたは複数の要素を含んでもよい。
【0140】
WBS100は、ビュー155が、追加、削除、および変更が適用された状態で、1つまたは複数の他のビュー155から継承されることを可能にする、ビュー継承モジュール166を備えてよい。例えば、「シャツ」ビューは、「衣服」ビューから継承してもよく、また、追加的なコンポーネント「袖(半袖/長袖)」を有してもよく、それによって、派生ビュー167を作成してもよい。
【0141】
ビューおよび項目型は、異なるエンティティであり、異なるプールに存在するが、両方とも、フィールドのような下位エンティティを備えてよく、また、継承関係(項目は、項目プールの他の項目から継承することができ、ビューは、ビュープールの他のビューから継承することができる)を有してもよい、ことに留意されたい。項目型は、どのフィールドが、項目に含まれるのかを定義し、一方、ビューは、これらのフィールドをどのように表示するのかを定義する。WBS100は、下層にあるテンプレート型の情報と、表示されている特定の項目とに基づいて、ビューの動的な構築を可能にする、動的ビューコンストラクタ169を備えてよい。
【0142】
1つまたは複数のビューのプール168が、アプリケーションレベル、設計者レベル、またはWBSレベルで、実装されてもよい。任意選択で、ビュー155は、項目型と関連付けられるように事前に定義されてもよく、特定のビュー155が、所与の項目型(または、そこから継承された項目型)に、常に「属する」ものでなければならないようにすることができる。
【0143】
項目表示に関するビューの使用
【0144】
WBS100は、事前に定義されたアルゴリズムを使用することにより項目を表示してもよい、項目表示モジュール170を備えてよい。まず、項目表示にマッチするビューが、突き止められる(または、オンザフライで作成される)。例えば、項目表示モジュール170は、項目と事前に関連付けられたビュー、または、利用可能なビューのプールを検索することにより選択されたビュー、を突き止めてもよい。また、適切なビューが突き止められない場合、項目表示モジュール170は、項目定義に基づいて、適切なビューを「オンザフライ」で自動的に構築することができる。第2に、項目表示モジュール170は、(a)(可能であれば)各データコンポーネントを、項目のフィールドとマッチングし、マッチするフィールドのコンテンツを使用すること;(b)全ての計算済みコンポーネントの値を判定すること;(c)条件付きビュー要素が含まれるべきかどうかを判定すること、により選択されたビューの埋込バージョンを作成してもよい。続いて、項目表示モジュール170は、動的レイアウトを埋込ビューに対して実行することができ、それによって、変更の結果得られたレイアウト修正を、フィールドコンテンツ、条件付きビュー要素などに適用し、そして、埋込ビューの表示に進んでもよい。
【0145】
例えば、複数のコレクション項目を同時に表示する、ギャラリー型のマルチページコンテナであるLC152を表示する際には、処理が、複数のコレクション項目について実行されてよいことに留意されたい。
【0146】
リピータコンポーネント、および、ビュー内でのビューの使用
【0147】
ビュー155は、1つまたは複数のリピータコンポーネント163を含んでもよい。各リピータコンポーネント163は、全体としてLC152と同様であってよいが、ビュー155内に含まれる。各リピータコンポーネント163は、所与のリストを表示し、典型的には、ビュー155に表示されている主項目に関係するリストを表示してもよい。例えば、人物項目は、他の人物項目(例えば、その人物の友人)、および、車項目(例えば、その人物が所有する車)に関係してよい。人物ビューは、これらのリスト(「友人」リストおよび「車」リスト)を表示する、2つのリピータコンポーネント163を含んでもよい。これら2つのリピータコンポーネント163は、主要な人物をビューするLC152において、ビューまたはハイライトされている現在の人物と関連付けられた、特定のリストを表示する。リピータLCは、上記で説明した(かつ、
図23Aに例示される)ような複合LCとは、区別されるべきであり(すなわち、リピータLCは、異なる関係リストを、異なるLCに表示して)、一方、複合LCは、1つのLC内に表示される複数のリストを含むことに留意されたい。
【0148】
特定の構成パラメータによりオーバーライドされないかぎり、リピータコンポーネント表示モジュール171は、確実に、リピータコンポーネント163が、主コンポーネントの表示に使用されるビュー155と同じビュー属性(例えば、名称、コンテキスト)を使用して、リストを表示するようにしてもよい。例えば、型Aに関するXYZという名前のビューを使用して、型Aの項目を表示することができ、型Aの項目のそれぞれが、型Bの項目セットにリンクされ、型Bの項目のリスト(現在の型Aに関係する)が、型Bに関するXYZという名前のビューを使用して、(他に構成されないかぎり、デフォルトとして)リピータコンポーネント163に表示される。
【0149】
項目表示に関するウェブサイトページの使用
【0150】
本発明のいくつかの実施形態において、LC内に項目を表示するために使用されるビューの代わりに、システムは、ウェブサイトページがビューであるかのように、ウェブサイトページを直接利用してもよい。そのような場合、システムは、関連付けられた項目から得たデータを、ウェブサイトページに含まれるデータコンポーネント内に直接表示することができる。例えば、設計者は、正規のウェブサイトページ内にデータコンポーネントを含めてよく、また、コンポーネントのデータをどの項目から得るべきかを特定してもよい。任意選択で、ウェブページをビューとして利用するための変換または調整を実装するために、ウェブページ/ビューコンバータ172が、WBS100に備えられてもよい。
【0151】
データソースとして使用される項目は、データコンポーネントごとに、例えば(a)ウェブサイトページと明確に関連付けられた項目(従って、現在のページから継承した別のページにおいてなど、この項目が変更されると、このことが全てのデータコンポーネントに影響を与える);(b)この特定のコンポーネントについて事前に関連付けられた項目;(c)ページレベルまたはコンポーネントレベルで特定されたクエリに回答する項目等の候補の項目から、1つまたは複数の適切な方法で選択されてよい。データコンポーネントはまた、直接使用されるデータフィールドを指定してもよいし、フィールドの発見/クエリ機構を使用してもよい。
【0152】
任意選択で、そのようなページを、テンプレートに構築および形成して、手動で構築されたページセット内の異なる項目を表示するために再利用してもよい。設計者は、代わりの項目がページと関連付けられるときに、いずれのコンポーネントが変更されたのかを特定するのみでもよい。
【0153】
3段階の処理
【0154】
図10を参照すると、本発明のいくつかの例示的実施形態に係る、特に3段階の処理であるビューのマッチング/構築および書込みのモジュールを例示する、WBS100の概略ブロック図が例示される。WBS100は、例えば、(a)表示される項目にマッチするビューを検索して突き止めてもよく、適切な事前に定義されたビューが見つからない場合に、オンザフライでビューを動的に構築してもよいビュー対項目マッチングモジュール109A、(b)ビューのフィールドおよび項目のフィールドに基づいて、埋込ビューを作成してもよいビューフィラーモジュール109B、および(c)動的レイアウトを埋込ビューに適用してもよいDLアプリケータ109C、を備えてよい。
【0155】
段階1:項目(または項目型)にマッチするビューを突き止める
【0156】
図11を参照すると、本発明のいくつかの例示的実施形態に係る、特にビュー突き止め(または、ビューと項目のマッチング)を例示する、WBS100の概略ブロック図が例示される。これを、上記で言及した3段階の処理のうちの第1の段階としてもよい。
【0157】
項目にマッチするビューを突き止める段階は、(i)ビューを、項目および/または項目型と事前に関連付けるための、ビュー事前関連付けモジュール112A;(ii)利用可能なビューのプールを検索するためのビューサーチャモジュール112B;および/または(iii)適切なビューを「オンザフライ」で動的に構築するための、オンザフライ動的ビューコンストラクタ112C等によって実行され得る。
【0158】
ビューを、項目および/または項目型と事前に関連付ける
【0159】
図12を参照すると、本発明のいくつかの例示的実施形態に係る、特にビューの事前関連付けを例示する、WBS100の概略ブロック図が例示される。WBS100は、ビュー(または、複数のビュー)と特定の項目および/または特定の項目型との事前関連付けを可能にする、ビュー事前関連付けモジュール173(上記で言及したビュー事前関連付けモジュール112Aと同様であってもよい)を備えてよい。これは、特定の項目および/または項目型の、作成中または編集中に、または、項目および項目型の継承の、作成中または編集中に行われてもよい。
【0160】
1つのビュー関連付けは、ビューを任意の所与の項目型と明示的に関連付けてもよい、設計者によって実行されてもよく、その関連付けは、該所与の項目型を有する全ての項目に使用される。関連付けは、さらに、該所与の項目型から継承した全ての項目型について、項目型が自身の明示的に割り当てられたビューを有していないかぎり、使用され得る。設計者はまた、ビューを、任意の特定の項目と明示的に関連付けてもよく、それによって、該所与の項目の項目型と関連付けられたビューをオーバーライドしてもよい。
【0161】
任意選択で、属性ベース事前関連付けモジュール113Aは、属性パラメータ113Dを介して、ビューを事前に関連付けることを可能にしてもよい(以下でさらに説明するように、コンテキストベースの関連付け、型の特定の名称と継承に適合する関連付け、の使用を含む)。例えば、属性ベースの事前関連付けは、システムが、一般的な名称、コンテキスト、分類、または他のパラメータに従って、ビューにリンクする必要があるときに、使用されてもよい。属性ベース事前関連付けモジュール113Aは、(a)システムが、ビュー対する特定の属性を定義する(例えば、名称、コンテキスト);(b)ビュー作成者が、これらの属性に値を割り当てる;(c)設計者(リストおよびビューを使用する)が、所与の属性について値を特定する;(d)提供された属性の値(例えば、名称、コンテキスト)に基づいて、ビューが選択される、というように属性ベースの事前関連付けをサポートしてもよい。
【0162】
例示的な一例において、システムは、ビューごとに、各項目型に固有の、名称属性113Eを含んでもよい。設計者は、LC(またはウェブページ)を定義する際に使用するビューの名称を指定してもよい。項目型ごとに、所与の名称を有し、所与の項目型と関連付けられたビューが、使用される。異なる項目型について同じ名称を有する複数のビューがあってよく、従って、ビューの名称を特定することで、複数の関連付け関係が、(例えば、本明細書において、リピータコンポーネントに関して説明したように)実際に作成され得ることに留意されたい。
【0163】
別の例示的な例において、システムは、コンテキスト属性113Fに、可能な値「サムネールモード」および「ズームモード」を割り当ててもよい。設計者は、所与のLC(または、リピータコンポーネントもしくはウェブページ)に関して、ビュー選択のためのコンテキスト(例えば、サムネールモードまたはズームモード)を特定してもよく、(型ごとの)選択されたビューは、所与のコンテキストを有するビューである。例示的な例が、
図23Aおよび25に示され、3つのコレクションである、メニュー、セクション、および料理(および、マッチする項目型)を含む同じレストランのリストアプリケーションが示される。しかし、3つの型のそれぞれと関連付けられた複数のビューがあり、これらが、レイアウトとして配列され、各レイアウトが、3つの型のそれぞれについて特定のビューを定義する。これらの図から分かるように、ユーザは、レイアウト選択領域(例えば、
図23B内のレイアウト[x]、
図25内のレイアウト[y])内の、レイアウトを選択してもよく、このことが、3つの項目型のそれぞれに使用されるビューに影響を与える。レイアウトの名称/コードは、この場合、コンテキスト変数としての役割を果たす。
【0164】
代替として、複数のビューが、所与の項目または項目型と明示的に関連付けられてもよい。そのような場合、条件付きセレクタモジュール173Bは、関連付けられたビューのうちの1つが選択されるための、1つまたは複数の条件を、定義および/または強制してもよい。そのような条件には、(a)項目を表示するために使用される、LCの型(例えば、大領域コンテナが、詳細なビュー(多くのフィールドを表示する)を使用してもよく、一方で、ギャラリー型コンテナが、サムネールおよび説明のテキストのみを含む、より小さいビューを使用してもよい);(b)表示されている項目の特定の「セレクタ」フィールドのコンテンツ;(c)コレクションにアクセスするユーザのアイデンティティ、または、アクセスしているユーザのユーザプロファイルの特定のプロパティ(例えば、オンラインストア従業員は、訪問ゲストユーザに対して表示されるコンテンツと比較して、追加フィールドにあるより多くの情報を閲覧することができる)等が含まれ得る。
【0165】
任意選択で、機能ごとのビュー関連付けモジュール173Cを使用して、異なるビューを、異なる機能について関連付けて、その関連付けを強制してもよい。例えば、WBS100は、項目閲覧、項目作成、項目更新について、異なるビューを割り当ててもよい。設計者は、これらのビューを定義してもよく、また、所与のビューが複数の機能に使用されることを(例えば、項目作成および項目更新の両方に使用されることを)、特定してもよい。
【0166】
利用可能なビューのプールの検索
【0167】
図13を参照すると、本発明のいくつかの例示的実施形態に係る、特にビュー検索を例示する、WBS100の概略ブロック図が例示される。WBS100は、ビュープールサーチャ174(ビューのプールを検索するためのサーチャモジュール)を備えてよく、ビュープールサーチャ174は、マッチするビューを突き止めるために、ビューのプール上で検索クエリを実行してもよい。適用可能なビューのプールは、任意の適切なレベルで、例えば、システムレベル、アプリケーションレベル、項目コレクションレベル、または項目型レベルで、定義され得る。適用可能なビューのプールは、(例えば、異なるレベルで定義された)いくつかのプールの組み合わせとしてもよい。
【0168】
ビュープールサーチャ174は、1つまたは複数の適切なクエリ型、例えば、キーワードベース、フィールドマッチング、属性マッチング、アプリケーション関係パラメータ、または、他の適切な型のクエリ、を利用してもよい。ビュープールサーチャ174は、クエリの方法の2つ以上を組み合わせることができ、例えば、マッチするフィールドを有するビューの中から選択して、特定の条件をビュー属性に適用してもよい。
【0169】
キーワードベースのビュー検索は、キーワードベースビューサーチャ174Aのモジュールまたは下位モジュールを使用して実装されてよく、キーワードベースのビュー検索では、項目型とビューの両方が、付加されたまたは関連付けられたキーワード(例えば、事前に定義されたリストから選択され得る1つまたは複数のキーワード)を有することができる。マッチングアルゴリズムは、項目型キーワードリストとの最大のキーワードマッチを有するビューを、突き止めようと試みる。
【0170】
フィールドマッチングビュー検索では、フィールドマッチングサーチャ174Bのモジュールまたは下位モジュールが、項目のフィールドのセットに最もマッチするコンポーネントのセット、を有するビューを求めて検索してもよい。マッチングは、フィールドの名称、属性、または特別なマッチングIDに従って実行されてよい。マッチの等級付けまたはスコアリングまたはランキングは、スコアリング/ランキングモジュール175によって、例えば、マッチするフィールドの数を比較することにより、または、フィールドごとの重みを使用して、重み付けされたスコアを計算することにより、実行され得る。
【0171】
任意選択で、フィールドデータ辞書176は、(例えば、システムレベル、アプリケーションレベル、または別のレベルで)項目型フィールドとビューコンポーネントの両方の作成のために、定義され使用され得る。マッチングは、フィールドデータ辞書176を使用することにより、行われてもよく、例えば、ビューコンポーネントと、マッチする下層のデータ辞書フィールドを有する項目フィールドと、を突き止めるために、辞書サーチャ177を利用することにより行われ得る。
【0172】
属性ベースサーチャ178は、属性ベースの検索を実行してもよい。例えば、ビューは、ビューと項目とのマッチングを補助するために、ビューに割り当てられた追加的な属性を有してよい。項目型(または項目)は、クエリ(適切なクエリまたは式言語を使用すること)を含んでもよく、このクエリは関連するまたは利用可能なビューに適用されて、ビュー属性のうちの1つまたは複数に基づいて、いずれのビューが、項目に対して最良のマッチングなのかが選択される。クエリは、完全に特定されてもよいし(例えば、全ての条件を含んでもよいし)、パラメータで表されて、(a)項目に特定の値(例えば、クエリは、項目型レベルで特定されるが、項目が埋め込まれた特定のパラメータを有する);(b)項目データフィールドの値(例えば、特定の項目のデータフィールドに基づくパラメータ);(c)例えば、LCの大きさおよびコンテナ型で、いずれのビューの大きさが最適であるかを判定し得るLC型(例えば、ビューが表示されるべき特定のLCに応じて決まる、パラメータ);および/または(d)一般環境値(例えば、ユーザ分類および特権)等のパラメータの1つまたは複数を含んでもよい。属性ベースの検索は、上記で説明した、(例えば、名称/コンテキストを介した)ビュー属性の事前関連付けの一般化バージョンとして実装されてもよい。
【0173】
任意選択で、ビューと項目型とのマッチングは、アプリケーション関係パラメータに基づくことにより、アプリケーション関係パラメータサーチャ179を利用することにより、実行され得る。従って、ビュー検索は、アプリケーション関係パラメータを考慮してもよく、例えば、異なるビューが、フィルタクエリの結果において、最初と最後の項目について動的に選択され得る。このように、「次」および「前」のナビゲーションボタンを、必要に応じて動的に表示することができる。
【0174】
上記で説明したマッチング技術のいくつかが、特定の項目の表示用の、複数の候補ビューを生み出し得るため、複数マッチング結果ハンドラ180は、複数の結果を扱ってもよい。そのような場合、マッチレイティングを使用して(例えば、検索エンジンのランキングと全体的には同様である)、候補結果の中から、使用する最良のビューを選択してもよい。さらに、複数マッチング結果ハンドラ180は、見つかった最良のマッチを使用することを選んでもよいが、候補ビューのリストを保持してもよく、ユーザが、表示を切り替えて、見つかった他のビュー候補のうちの1つを利用することができるようにする、GUI要素を提供してもよい。
【0175】
フォールバックハンドラ181は、親の項目型へのフォールバックを確実にし得る。例えば、項目型は、他の項目型と修正のセットとに基づいて、継承処理を通して作成されてもよい。所与の項目および項目型について、結果(または、「良好な」結果、または、高品質なマッチ、または、高スコアリングマッチ)が見つからない場合、フォールバックハンドラ181は、同じ項目データ値(関連がある場合)を使用したマッチング処理の再実行を命令してもよいが、現在の項目型の親である項目型を使用するよう命令してもよい。例えば、「シャツ」項目型は、親の項目型「製品」から派生し得る。型「シャツ」の項目についてマッチするビュー(または、高スコアリングのマッチするビュー)が見つからない場合、マッチング処理が自動的に繰り返されて、今度は、項目型「シャツ」ではなく、親の項目型「製品」が使用され得る。
【0176】
動的なビューの構築
【0177】
図14を参照すると、本発明のいくつかの例示的実施形態に係る、特に動的なビューの構築を例示する、WBS100の概略ブロック図が例示される。WBS100は、動的ビューコンストラクタ182を備えてよく、必要な場合、または、好ましい場合に、既存のビューのプールを検索する代わりに、または、既存のビューを検索することに加えて(例えば、ビューの既存のプール内にマッチが見つからない場合、または、低スコアリングのマッチしか見つからない場合)、項目フィールドを表示するために、1つまたは複数のビューを「オンザフライ」で動的に生成してもよい。自動的なビュー構築の命令は、フィールド定義と共に、事前に定義されても提供されてもよい。
【0178】
例示的な実施形態において、例えば、動的ビューコンストラクタ182は、表示領域を、複数の区域に分割するのみの多数の抽象的、一般的ビューテンプレートを実装してもよい。このテンプレートは、ビュー内区域分割部182Aのモジュールまたは下位モジュールを使用して実装される。各項目型は、そのような一般的テンプレートのいずれを使用するのかを特定してもよい。各フィールドが特定し得るのは、例えば、フィールドが置かれるべき区域、および、フィールドがどこに追加されるべきかを示すアラインメントコード(例えば、左上、下部中央)、ならびに、区域の同じ領域内の前のフィールドに、フィールドがどのように関係し得るのか(例えば、前のフィールドの後に接合;新しい線;同じ方法で、下方だが左に合わせて)、などである。フィールドはまた、動的レイアウト型のアンカーまたは他のレイアウトルール(例えば、2つの特定のフィールドが、水平方向に並ぶように特定するルール)を特定し得る。動的ビューコンストラクタ182は、従って、与えられた命令およびルールに基づいて、自動的に、各項目型に適したビューを作成してもよい。これは、データエントリーフォーム、更新フォーム、および/または他のフォームの自動作成に、特に有用であり得る。
【0179】
統合されたビュー検索/動的構築
【0180】
上記で説明したように、WBS100は、ビューを(事前関連付けまたは検索を使用して)突き止めてもよいし、ビューを動的に作成してもよい。さらに、WBS100はまた、2つの方法を統合してもよく、上記に記載した動的なビューの構築技術(例えば、ランディングゾーン)を使用して、ベースのビューを突き止め、それを拡大(必要に応じて)または、他の方法で修正(突き止められたビュー修正モジュール182Bを介して)することにより、統合してもよい。これは、サーチャ/コンストラクタモジュール183を使用することにより実装されてもよく、比較的固定されたベースのフォーマット(および、フィールドのセット)を有する項目については特に有用であり得る。また、この項目には、追加的なフィールドも動的に追加される(例えば、任意選択のフィールドを有するRSSフィード)。
【0181】
ビューの選択およびポリモーフィック表示
【0182】
図15を参照すると、本発明のいくつかの例示的実施形態に係る、特にビューの選択およびポリモーフィック表示を例示する、WBS100の概略ブロック図が例示される。いくつかの場合、複数のビュー(例えば、ビュー155A、155Bおよび155C)が、同じ項目の閲覧に利用可能であることがある。これは、例えば、設計者が、複数のビューを同じ項目(または項目型)に事前に関連付けすること、または、ビュー選択クエリの結果、複数のマッチするビューが得られること、により起こり得る。可能なマッチするビューのセットは、事前に分かっていてもよく(例えば、該ビューが項目と事前に関連付けられていた場合)、または、動的に判定されてもよい(例えば、マッチングクエリを使用して突き止められたビューの場合)。
【0183】
そのような場合、WBS100は、(a)ビュー優先順位マネージャ184Aを利用して、優先順位値を種々のビューに付加し(それらのビューが予め分かっていることを前提とする)、WBS100が、最高の優先順位値を有するビューを選択するようにすること;(b)フック/コールバックマネージャ184Bを使用して、フックまたはコールバックをアプリケーションに定義し、このことで、アプリケーションが、使用すべき正しいビューを選択できるようにすること;(c)エンドユーザ選択UI生成部184Cを使用して、複数のビューオプションをエンドユーザに提示し、エンドユーザが、所与の項目に使用されるべきビューを選択できるようにする(例えば、デフォルトのビューを使用し、表示内に「ビューを変更する」ドロップダウンメニューまたはコンボボックスウィジェットを含めること)等の1つまたは複数のオプションを設計者に提供してもよい。
【0184】
第1の例示的な例では、ビュー選択持続性エンフォーサ184Dが、ビュー選択が持続することを確実にすることができる。例えば、項目表示は典型的には、エンドユーザが、コレクションの表示項目間を進むことができるようにする(例えば、前または次の項目にナビゲートする)。表示項目は、表示項目を表示するために使用する異なるビューを有してよい。ビュー選択持続性エンフォーサ184は、設計者が、所与の項目型を表示するためのビューの選択が持続すること、を指定できるようにし得る。従って、エンドユーザが、コレクションの項目全体を進み、同じ項目型に戻る場合、同じビュー(複数の可能なビューの中で)が、それを再使用しないという特別な理由がない限り(閲覧された項目についての、別個の区別されたビューの関連付けなど)、使用され得る。
【0185】
第2の例示的な例では、ポリモーフィック表示生成部185が、ポリモーフィック表示を可能にしてもよい。例えば、エンドユーザは、項目を表示するためにLCが使用する主要な表示型(例えば、マルチページコンテナ型)を変更することにより、ビューの選択に影響を与え得る。設計者は、エンドユーザが、所与のリストを、「リストモード」(1項目につき1~2行の情報を表示する)で閲覧するのか、または、「ページモード」(所与の項目からのページ全面の情報を表示する)で閲覧するのか、を決めることができるようにしてもよい。同様に、設計者は、グリッド型のギャラリー(グリッド状に配列された項目を表示する)から、スライダ型ギャラリー(スライドショーのような配列で項目を表示する)への間を、エンドユーザがLC表示を切り替えることができるようにしてもよい。LC表示モードの選択は、表示用に選択されたビューにも同様に影響を与え得る。ポリモーフィック表示生成部185は、ユーザが、複数のビュー(または、LC表示)の切替えを確実にするために使用されてよく、このことは、設計者がこの目的で、予め指定したものである。
【0186】
段階2:ビューおよび項目のフィールドに基づいて、埋込ビューを作成する
【0187】
図16を参照すると、本発明のいくつかの例示的実施形態に係る、特に埋込ビューの作成を例示する、WBS100の概略ブロック図が例示される。WBS100、マッチされたビューまたは動的に構築されたビュー、の埋込バージョンを作成する、埋込ビュー作成部186を備えてよい。埋込ビューが、ビューエンティティのインスタンスであり得、項目によって供給されるデータに基づいて、動的に構築される、ことは明らかである。
【0188】
まず、埋込ビュー作成部186は、ビュー対フィールドマッチングモジュール186Aまたは下位モジュールを利用して、ビュー内の各データコンポーネントを、項目型(および下層にある項目)のマッチするフィールドにマッピングしてもよい。これは、(a)設計者による明示的な事前関連付け;(b)ビューコンポーネントと項目フィールドとで使用される、共通の名称;(c)特別な関連付けID;(d)ビューコンポーネントと項目フィールドとに割り当てられた、マッチするキーワードを介したクエリ;(e)マッチする項目のフィールドの事前に指定された属性を検索する、データコンポーネントに関して定義されるクエリ等の1つまたは複数を使用して、行い得る。データコンポーネントがない場合は(例えば、タイトルテキスト)、そのようなマッチングは不要であり得る。
【0189】
欠落フィールドハンドラ187は、欠落フィールドを扱ってもよい。欠落フィールドとは、マッチする項目のフィールドが見つからなかった(コンテンツが埋め込まれるべき)、ビューのフィールドのことである。例えば、マッチするフィールドが見つからなかった場合、欠落フィールドハンドラ187は、(データコンポーネント自身またはWBS100によって提供される)ビューコンポーネントの位置に、適したテキストまたは画像を表示してもよい。これは、設計中、またはランタイム中(例えば、項目がRSSフィードによって提供され、いくつかの必要なフィールドが欠落しているようなとき)に起こり得る。任意選択で、目立たないメッセージ、または控えめな警告メッセージが、提供されてもよく、または表示されてもよく、またはログが取られてもよい。示される実際の表示メッセージは、呼び出しまたはユーザログインで使用されるURLによって決まってよく、例えば、設計者が、さらに包括的なメッセージを受け取れるようにしてもよい。
【0190】
コンポーネントが、アンカーまたは他のDLに関係する関連付けを有する場合、欠落フィールドハンドラ187は、コンポーネントを削除しなくてもよく、むしろ、コンポーネントサイズ変更モジュール187Aを利用して、その大きさをゼロの大きさに変更してもよい。コンポーネントが、アンカーまたは他のDLに関係する関連付けを有していない場合、欠落フィールドハンドラ187は、コンポーネントを、これに付加された、レイアウトに関係するいずれのスペーサとも一緒に削除してもよく、フィールドが存在すれば追加されてしまう余分な空間が、残らないようにする。
【0191】
第2に、埋込ビュー作成部186は、コンポーネント値算出部186Bを利用して、例えば、フィールドの値に基づいて計算され、特に、データコンポーネントに埋め込まれた値を含む、全ての計算済みコンポーネントの値を判定してもよい。第3に、埋込ビュー作成部186は、条件付きコンポーネントが含まれるべきかどうかを判定してもよく、例えば、ビューが、内包物が1つまたは複数の条件に応じて決まる、条件付きコンポーネントを含んでもよい。
【0192】
段階3:動的レイアウトを埋込ビューに適用する
【0193】
図17を参照すると、本発明のいくつかの例示的実施形態に係る、埋込ビューの動的レイアウトおよび調整を例示する、WBS100の概略ブロック図が例示される。例えば、DLM101は、DL処理を、埋込ビューに基づいて、LCを含む完全なページ(またはミニページ)に適用してもよい。このDL処理は、埋込ビューに使用する最良の表示サイズを判定することと共に、行われてもよい。
【0194】
DL処理は、(a)LCを含む、下層にある項目;(b)ビュー定義に含まれる固定のDL情報;(c)指定されたビュー条件に応じて適用可能なビュー定義に含まれる、条件付きDL情報等に由来する、指定のDLルール101Aおよび/またはDLアンカー101Bを考慮してもよい。
【0195】
DL処理は、LCを含むページ全体に影響を与えてもよい。例えば、LCを使用して、所与のテキストフィールドが、現在の表示項目より大きい、新しい項目をビューする場合、DLM101は、表示されたミニページ全体(ビューを含む)の大きさを増大または増加させ、それによって、LCを増大させ、また、コンポーネントの、当該コンポーネントが含まれるページ内での移動または再突き止めを引き起こし得る。
【0196】
DLM101は、アニメーションおよび推移の効果を適用してもよく、LCにおいて項目(および、可能であればビュー)を切り替えた結果得られる変更が、急激な変化ではなく、滑らかなアニメーション的変化を介して、提示され得る。
【0197】
ビューの表示サイズの判定と調整
【0198】
特定の埋込ビューインスタンスが必要とする表示領域は、変動してよく、また、ビュー表示サイズ調整部188によって、判定および/または調整(例えば、修正)されてもよい。ビュー内のデータコンポーネント(例えば、テキスト、画像)が、ビューの異なるインスタンスごとに、異なる量のデータを含み得るからである。ビューは典型的には、WBS100においてビュー用に定義される大きさを使用して表示される。しかし、いくつかの場合、大きさが、特定の画面、ブラウザ、またはデバイス構成に対して最適化されてもよい。そのような場合、ビュー表示サイズ調整部188は、特定の埋込ビューデータを考慮してビューに割り付けられた領域を調整してもよい。
【0199】
例えば、ビューの幅の変更は、ビューの高さに影響を与えてもよい。特に、(水平方向に)より狭い領域に適合することが必要なテキスト表示コンポーネントは、垂直方向に増大して、(例えば、より多くの行に分解して)同じ量のテキストを表示してもよい。
【0200】
ビュー表示サイズ調整部188は、美的に最も心地よい結果のために表示ビューを最適化してもよい。例えば、ビュー表示サイズ調整部188は、ビュー(および、結果として得られるレイアウト)の最良の大きさを見つけることを試みて、(a)表示ビューのアスペクト比をアプリケーションのブラウザ表示ウィンドウにできるだけ近づけること;(b)全体のビューを見るために必要なスクロール量を最小限にすること(例えば、ビューが、垂直方向に下方に拡大してスクロールを必要とする場合);(c)ビューに対して特定される全てのDLルールおよびアンカーを順守すること等の1つまたは複数の(相反する可能性もある)ターゲットを達成または最適化する。
【0201】
例示的な実施形態において、ビュー表示サイズ調整部188は、(a)元のビューインスタンス幅を取ること;(b)ターゲット幅生成部188Aを利用して、可能なターゲット幅のセットを作成することであって、元の幅から始めて、事前に定義された値のパラメータ(例えば、100画素)まで下げ、それによって、可能な「ターゲット幅」(例えば、設定する大きさを、大きさ間の最小差によって制限することにより計算されるターゲット幅)のセットを作成すること;(c)ターゲット幅のそれぞれについてビューインスタンスのDL計算を実行し、ターゲット幅のそれぞれについて、結果として得られる高さを取得すること;(d)ターゲット幅選択部188Bモジュールまたは下位モジュールを使用して、包囲するページ表示ウィンドウのアスペクト比に最も近いが、利用可能な画面の高さを超えない、結果として得られる高さと幅とのセットを見つけて選択すること;(e)ターゲット幅の各1つについて、高さが、利用可能な画面の高さを超える場合、最も小さい高さを有するターゲット幅を選択すること等の操作を実行してもよい。
【0202】
ビューの修正および派生ビュー
【0203】
ビュー修正モジュール189は、設計者が、表示されたコンポーネントを追加、削除および/または修正することにより、ビューを修正することを可能してもよい。システムは、設計者が、修正「インプレース」を適用する(例えば、実際のビューと、これを使用する全ての項目に影響を与える)こと、または、編集(修正)されたビューから、派生した(継承された)ビューを作成できるようにしてもよい。
【0204】
派生ビューは、親ビューの継承ベースの変形として見なされてもよい。例えば、「シャツ」ビューは、「製品」ビューの派生した子であるが、追加的な「色」属性/フィールドを有してもよい。ビューが、所与の項目型(または型)と関連付けられている場合、派生ビューを作成することで、同様に修正された項目型(または型)が作成されてもよく、修正された項目型(または型)を使用して、関連付けられたコレクションまたは他のコレクションの項目を作成してもよい。
【0205】
本発明によれば、WBS100は、所与のビューが項目に関連する場合、この所与のビューを使用してもよく、また、所与のビューを使用することができない場合、WBS100は、親ビューサーチャ190を起動して、継承ツリー(または、継承チェイン)を上方に進み、所与の項目の表示に、より高いレベルのビューを使用してもよい。いくつかの実施形態において、マッチするビューが見つからない場合、WBS100は、項目型継承ツリーを(例えば、フォールバックハンドラ181を使用して)上方に進んでもよく、一方、他の実施形態において、マッチするビューが見つからない場合、WBS100は、ビュー継承ツリーを(例えば、親ビューサーチャ190を使用して)上方に進んでもよい。他の実施形態では、両方の方法の組み合わせを、どのマッチング方法が好ましいのか、または、どのマッチ結果が好ましく、かつ、利用すべきなのかを、オンザフライで判定する機構と共に、利用してもよい。
【0206】
作成(修正)されたビューは、他の項目にも同様に利用可能である。派生ビューを、作成または修正するとき、派生ビューは、既存の項目または項目型に適用されてもよい(または、事前に関連付けられてもよい)。
【0207】
WBS100は、さらに逆のオプションを提供してもよく、設計者が、派生型を作成できるように、かつ、WBS100に派生ビュー生成部191を自動的に起動させて、マッチする派生ビューも同様に自動的に作成することができるようにし、例えば、(派生ビューに基づいて派生型を作成するのではなく)派生型に基づいて派生ビューを作成してもよい。
【0208】
設計者は、シングルコンポーネントテンプレートに基づいて、新しいコンポーネントを作成してもよい。ビュー作成部は、さらに、そのようなシングルコンポーネントテンプレートを、作成されたビューと共に含んでもよく、そのようなコンポーネントテンプレートが、テンプレートの修正を望む設計者に対して提案され得る。
【0209】
コンポーネントランディングゾーン
【0210】
図18を参照すると、本発明のいくつかの例示的実施形態に係る、ランディングゾーンの配置および修正を例示する、WBS100の概略ブロック図が例示される。WBS100は、ランディングゾーンをサポートしてもよく、その結果、ビューに加えられる新しいコンポーネントが、ランディングゾーン配置モジュール192によって、ビュー内に、自動的または半自動的に配置され得る。ビュー設計者は、ビューテンプレート内に、多数のランディングゾーンを定義してもよい。例えば、コンポーネントは、複数の列で配列されてもよく、ランディングゾーンが、各カラムの底部に作成されるか、または代替的に、コンポーネントは、特定のコンテナ階層で配列されてもよく、ランディングゾーンが、コンテナのうちのいくつか(全てではない)の底部に定義されてもよい。元のビューの設計者は、ランディングゾーンエディタ193を使用して、明示的に特定されるランディングゾーンを指定してもよく、定義された「ランディングゾーン」に名称を割り当ててもよく、かつ、種々のランディングゾーン属性を特定してもよい。新しいコンポーネントが、ビューに加えられるとき、ランディングゾーンの名称のリスト(例えば、ドロップダウンリスト)が示され、設計者は、新しいコンポーネントについてターゲット領域を選択してもよい。
【0211】
ランディングゾーンには、マッチするコンポーネントテンプレートを見つけるためのルールを定義する、設計者による特定の属性が含まれてよい。例えば、設計者が、新しいコンポーネントが幅の広いカラムに追加されることを特定した場合、システムは、幅の広いフォーマットのコンポーネントテンプレートを推奨してもよい。この効果は、両方向に作用し得るため、ランディングゾーン選択が、推奨されたコンポーネントテンプレートに影響を与えてもよく、その逆も同様である。
【0212】
任意選択で、ランディングゾーン生成部194は、例えば(a)各コンテナまたはミニページの端部に;(b)所与の型または属性を有するコンテナの端部に;(c)最近のフィールド追加がなされた場所に続けて;(d)少なくとも所与の量の空の画面空間を有する場所に;(e)新しく作成されたページまたはミニページの中に(例えば、コンポーネントをマルチページコンテナの追加のページに加えることにより)ランディングゾーンを自動的に生成することができる。コンポーネントが(ランディングゾーンを使用して、または他の方法で)ビューに加えられると、ビューのレイアウトは、動的レイアウトの使用を通じて再計算される。
【0213】
派生ビューの適用
【0214】
図19を参照すると、本発明のいくつかの例示的実施形態に係る、特にビューの修正を例示する、WBS100の概略ブロック図が例示される。ビューを修正する際、WBS100は、修正されている既存のビューから継承する派生ビューを作成してもよい。既存のビューは、多数の項目型と関連付けられてもよく(複数のコレクションの複数の項目によって使用される可能性がある)、また、複数のコレクションの複数の項目と直接関連付けられてもよい。そのような場合、WBS100は、「一括検索・再関連付け」モジュール195を起動して、型および/または項目の大量(または、一括、またはバッチ)再関連付けを実行してもよい。
【0215】
例えば、「一括検索・再関連付け」モジュール195は、既存のビューと、直接または間接的に関連付けられた全ての型および/または項目を検査してもよく、それら型および/または項目を、派生ビューと再関連付けしてもよい。再関連付けの基準には、(a)項目フィールドのコンテンツに基づく条件;(b)項目フィールドの存在に基づく条件;(c)型/項目属性に基づく条件;(d)上記の基準の組み合わせ等の条件が含まれ得る。任意選択で、いずれの型/項目を再関連付けすべきかに関して、手動の確認が、設計者から要求されてもよい(例えば、型ごと、または項目ごとに要求されてもよい)。
【0216】
例示的な一例において、「製品」項目型から派生した「シャツ」項目型を作成する際、設計者は、製品コレクションが、検査されること、および、単語「シャツ」をタイトルに有し、かつ、最近の2カ月に作成された、全ての「製品」項目が、自動的に「シャツ」型に変換されること、を指定してもよい。
【0217】
カスタマイゼーションおよびカスタマイゼーションダイアログ
【0218】
WBS100は、カスタマイゼーションモジュール201を備えてよく、カスタマイゼーションモジュール201によって、カスタマイゼーションダイアログを作成することができ、カスタマイゼーションダイアログは、設計者(可能性としては、エンドユーザ)によって使用され、表示されるリストアプリケーションにおいて種々のパラメータおよび属性をカスタマイズすることができる。
【0219】
例えば、参照によりその全体が本明細書に援用される、本明細書と同日(2014年3月13日)に出願された、発明の名称が「A System and Method for Dialog Customization」の、特許文献2(代理人整理番号P-12939-PC)に記載されるように、カスタマイゼーションモジュール201が種々の特徴および/または技術および/または下位モジュールおよび/または処理、を含んでよく、またはこれらと関連付けられてよく、またはこれらを利用してよく、またはこれらを実装してよいことが理解されるであろう。
【0220】
そのようなカスタマイゼーションは、ビュー、項目、および、ビュー/項目の組み合わせ(例えば、所与の項目がある方法で、ただし所与のビューに表示されるときにのみ、カスタマイズされる)、を含む、ウェブサイト要素に適用されてもよい。このカスタマイゼーションは、作成されたウェブサイトに含まれるサードパーティアプリケーションに適用されてもよい。カスタマイゼーションオプションは、設計者、または、恐らくは、特定の設計/修正の特権を有するアプリケーションのダウンストリームユーザにも、利用可能であり得る。
【0221】
カスタマイゼーションは、特定の項目、または関与するビューの属性および要素のみならず、これらに関係する(例えば、含むこと、または、継承することを介して関係する)他のオブジェクト、に影響を与えてもよい。カスタマイゼーションには、(a)システムが、所与のコンポーネントを表示するのか(はい、または、いいえ);(b)固定のコンテンツ(例えば、タイトルテキスト);(c)特定のコンポーネントの表示属性(例えば、フォント、大きさ、色);(d)画面の距離(例えば、料理名とその説明の間の距離);(e)カウント(例えば、マルチカラム表示のカラムの数);(f)一般的パラメータ(これは、表示を扱うコンポーネント/要素に渡される);および/または、他の適切なカスタマイゼーション等のカスタマイゼーションを含んでもよい。
【0222】
WBS100は、カスタマイズの対象である属性を含む生成されたダイアログの使用を通して、カスタマイゼーションをサポートする。そのようなダイアログは、カスタマイゼーションダイアログビルダ201Aを使用して生成され、カスタマイゼーションダイアログ表示部201Bを使用して、ユーザに対して表示され(かつ、ユーザとの対話を可能にし)、そして、カスタマイゼーションダイアログ結果アプリケータ201C使用して、影響を受ける要素に適用される。
【0223】
多くの場合、1つのカスタマイゼーション値が、複数の要素に影響を与えるべきである。例えば、同じ色の調節が、調和を保つ必要がある表示ビュー内の複数のコンポーネント適用されるべきであり、ビューの右端と、2つの別個のコンポーネントとの間の距離は、調整されてよいが、両コンポーネントに対して同一に保たれなければならい。さらに、カスタマイゼーションは、例えば、特定の表示ビュー、(所与の型、または全ての型の)全ての表示ビュー、所与のビューまたは所与の範囲内のビューの全てのインスタンス(たとえ現在表示されていなくても)、または、設計者によって明示的に選択されたような特定のビューインスタンス、に影響を与えてもよい。
【0224】
カスタマイゼーションの効果は、全ての影響を受けるオブジェクト上で同一でなくてもよい。例えば、コンポーネントAとBは、特定のレイアウトを維持する必要がある場合があり、例えば、ビューの上端からコンポーネントBまでの距離が、ビューの上端からコンポーネントAまでの距離の2倍にするような場合である。そのような場合、カスタマイゼーションは、必要に応じて個々に(オブジェクトに特定の式を使用して)適用されてよい。
【0225】
一例のカスタマイゼーションダイアログが、
図23Aに示される。この例では、レストランのリストアプリケーション(LA)は、3つのコレクション(メニュー、セクション、および料理)から項目を、1つのLC内に階層的に表示する。システムは、図示のカスタマイゼーションダイアログを生成し、これには、「セクション画像高さ」、「セクション画像を表示」、「セクションセパレータを表示」、「料理の説明を表示」、「料理の価格を表示」、および「項目の間隔」、のカスタマイゼーションが含まれる。このダイアログを介して入力される値は、現在のLCに表示される全てのビューに影響を与える。
【0226】
この例に続いて、
図27は、カスタマイゼーション値「項目の間隔」(A)を、15画素(
図23Aに示す)から123画素に変更することで、「料理」ビューの複数のインスタンス間の間隔(B)がどのように増加するのか、を例示する。
【0227】
生成されたダイアログは、事前に特定されるか、自動的に生成されてよい。また、生成されたダイアログをスタンドアロンのUI要素としてもよいし、残りのWBS100UIと統合してもよい。生成されたダイアログはまた、自動的に表示されてもよいし、設計者による明示的な起動を必要としてもよい。
【0228】
特定項目の適合
【0229】
WBS100は、特定項目適合モジュール196を備えてよく、特定項目適合モジュール196は、例えば、(例えば、ドラッグアンドドロップで)特定のコンポーネントを、項目レベルで、および、特定のビューのコンテキストで、表示項目に追加することにより、特定の項目に対する適合を作成する。これを使用して、例えば、「デコレーション」要素を、特定の項目に追加してもよく、または、別個の項目型およびビューを作成する必要なく、利用可能であるだけの追加的な情報を、ある特定の項目に追加してもよい。
【0230】
例えば、WBS100は、局所変形作成部196Aを利用して、ビューの局所変形、または、「内部」派生ビュー、を自動的に作成してもよい。適合は、派生ビューのこの局所変形内に、存在するビューに対する修正の「レイヤ」として、格納されてもよい。WBS100は、この派生ビューを、サイトレベル、またはページレベル、またはLCレベルで、この適合が適用される項目のIDと共に、格納してもよい。適合は、インスタンスがサイトにおいて使用される、同一のリストアプリケーションを用いて格納されてもよい。同一のLCまたはページが、複数の項目に対する複数の適合を格納してもよい。WBS100は、項目が、特定のビューを用いて特定のLCに表示されるときはいつも、適合を適用する。
【0231】
いくつかの実施形態において、任意選択で、特定項目適合モジュール196は、同一のビューを使用する同一のLC内の他の項目、または、他のビューに、同一の適合を適用する能力を提供してもよい。
【0232】
適合が、サイトレベルで格納される場合、適合は、異なるLC(またはリピータコンポーネント)内の、同一のビューに表示されている同一の項目のインスタンスに適用される。適合は、項目カスタマイゼーションとは異なる。例えば、適合は、追加の要素およびコンポーネントを、既存の項目に加えることに関与し、一方、カスタマイゼーションは、事前に定義された可能なカスタマイゼーションに基づいて、項目(またはビュー)のうちの1つのパラメータおよび属性の変更に関与する、ことに留意されたい。カスタマイゼーションが、「コンポーネントXを表示するまたは表示しない」を含んでもよく、このことが、カスタマイゼーションを新しいコンポーネントの追加のように見せ得ることに留意されたい。
【0233】
フィルタおよび検索ボックス
【0234】
任意選択で、検索ボックス作成部197は、所与の検索基準(例えば、フィールドに適用された所与のクエリ、または、他のフィルタ)に従って選択された、関連付けられたコレクションの項目のサブセットを、所与のLCが表示することを、設計者が指定することを可能にすることができる。設計者はさらに、そのような検索ボックスが、エンドユーザに対して、LCをビューする際に、表示されることを指定することができ、それによって、エンドユーザが、表示されたコンテンツを選択的にフィルタリングまたは検索することができるようにする。そのような検索ボックスの一例が、
図26に示される。
【0235】
LC連結
【0236】
図20を参照すると、本発明のいくつかの例示的実施形態に係る、特にLCの連結管理を例示する、WBS100の概略ブロック図が例示される。例えば、LC連結マネージャ198は、同じページまたはテンプレートに存在するLCが、1つまたは複数の適切な方法で連結される(または、相互に連結)ことを可能にしてもよい。連結されたLCは、ページ内の、異なるコンテナ(または、コンテナレベル)に存在してよい。これらの連結は、ネットワークを形成してもよく、その結果、特定のLCが複数の他のLCと連結され得る。LC連結マネージャ198は、種々のタイプのLC連結、例えば、関係リストの連結、アグリゲータフィールド連結、タグクラウド連結、項目ツリー連結、および/または、フォーム表示連結、をサポートしてもよい。
【0237】
関係リスト連結は、関係リスト連結マネージャ198Aによって管理されても扱われてもよく、関係リスト連結において、第1のLC「A」が「マスタ項目」コレクション(例えば、ホテルのリスト)を表示し、一方、第2のLC「B」が、「従属項目」コレクション(例えば、各ホテルのゲストレビュー)を表示する。LC「A」内の現在の項目の事前に特定されたフィールドを使用して、LC「B」に表示されているコレクションにクエリを行って、従属項目を選択してもよい。LC「B」は、LC「A」内の現在の項目にマッチする、選択された項目を表示するだけである。設計者は、従属項目コレクションに関してクエリを行う(例えば、最初のK個のレビューのみを選択する、特定のレイティング範囲を含むレビューのみを選択する)ための、追加のフィルタリングおよび/またはソートの基準を定義してもよい。これは、フルクエリ言語(例えば、SQL)を使用することを含む、任意の適切な様式で、実装されてもよい。1つの「マスタ項目」LCが、複数の関係リストLCと連結されてもよく、例えば、上位10レビューおよび/または下位10レビューの、関係リスト表示を加えることができる。これは、別個の関係LCではなく、ビューに含まれるリピータコンポーネントを使用して、達成されてもよい。
【0238】
アグリゲータフィールド連結は、アグリゲータフィールド連結マネージャ198Bによって管理されても扱われてもよく、関係リスト連結が定義済みのときに適切であり得る。設計者は、従属リスト内の項目の特定のフィールドに適用されたアグリゲーション関数の値を表示する、マスタ項目LC「A」での表示に、計算済みフィールドを追加してもよい。そのようなアグリゲーション関数には、例えば、カウント、合計値、平均値、中央値、最小値、最大値、または、他の適切な関数が含まれてよい。
【0239】
タグクラウド連結は、タグクラウド連結マネージャ198Cによって管理されても扱われてもよく、タグクラウドLCおよび正規のLCの両LCが同じコレクションと関連付けられた状態で、タグクラウドLCを、正規のLCに、連結してもよい。タグクラウドLCには、関連付けられたリスト(またはリストのフィルタリング基準に基づく一部、)内の既存の項目から派生したタグが、自動的に埋め込まれてもよい。ユーザは、タグクラウドLCから、多数のタグを多重選択してもよい。選択されたタグは、クエリの形成に使用され、このクエリが、フィルタとしての役割を果たし、いずれの項目を第2のLC「B」に示すのかを決めてもよい。これは、「関係クエリLC」(クエリを行うためだけに使用される関係LC)のプライベートな場合であってよい。
【0240】
項目ツリー連結は、項目ツリー連結マネージャ198Dによって管理されても扱われてもよく、項目ツリー連結において、LCは、組織図または家系図等の項目の下位階層(例えば、項目ツリー)を表示してもよい。階層は、項目のポインタフィールドの存在、例えば、親項目に対するポインタ、兄弟項目に対するリンクされたポインタのセット、を介して定義されてもよい。ミニページ(それぞれが、1つの項目を閲覧するために使用される1つのビューを含む)を表示するために、ツリー状構造を使用する以外に、構造は、他のカルーセル型LC(同じく、複数の項目を表示する)と同様であってもよい。
【0241】
フォーム表示連結は、フォーム表示連結マネージャ198Eによって管理されても扱われてもよく、フォーム表示連結において、LC[a]は、自動的に選択されたビュー、または、特定のビュー[d]のいずれかを使用して、所与の項目[b]が所与の二次的なLC[c]内で開かれることを、要求してもよい。これを使用して、例えば、LC[a]内に現在表示される項目の代替バージョンを表示すること、例えば、同じ項目の詳細バージョンをさらに詳細なビューを用いて表示すること、または、同じ情報の代替の提示を表示すること(例えば、文字列の住所を表示する代わりに、ポップアップの地図上で場所を表示すること)、ができる。同様に、この方法を使用して、新しい項目を作成するために「項目を追加」を表示してもよい。または、「項目を更新」もしくは「項目を削除」のフォームを表示してもよい。
【0242】
アプリストアの統合
【0243】
図21を参照すると、本発明のいくつかの例示的実施形態に係る、特にアプリストアの統合を例示する、WBS100の概略ブロック図が例示される。WBS100は、アプリケーションストア(「アプリストア」)199を備えてよく、または、これと関連付けられてよく、アプリケーションストア199は、アプリストアマネージャモジュール199Aを介して操作または管理されてもよい。例示の目的で、外部のアプリストア199が図示されるが、アプリストア199が、任意選択で、WBSベンダーまたはサードパーティによって運営されてよく、かつ、WBS100の内部であっても外部であってもよい、1つまたは複数のアプリケーションストアを備えてよい、ことは明らかである。いずれのレベルの開発者も(例えば、正規のサイト開発者、または、独立のサードパーティ開発者)、他のユーザによる購入および/またはダウンロード用に、(例えば、開発者の許可に応じて)1つまたは複数のオブジェクトを、アプリストア199に含めてもよい。そのようなオブジェクトには、リストアプリケーション;ビュー;(全てのレベルの)テンプレート;項目型;コレクション(例えば、コレクションそのものよりも、コレクションへのアクセスを販売すること);コンポーネント(例えば、完全な関連付けを伴う特定の複数のLC)等が含まれ得る。
【0244】
開発者は、さらに、アイコン、マーケティング資料、価格、検索キーワード、および、種々の属性を、アプリストア199内に提供されるオブジェクトに、定義または付加してもよい。提供されるオブジェクトは、自らが必要とする他のオブジェクトのカプセル化バージョンを、含んでもよく、例えば、ビューオブジェクトは、ビューオブジェクトの操作に必要となり得る多数の項目型オブジェクトを、含んでもよい。
【0245】
提供されるオブジェクトは、任意選択で、含まれないオブジェクトを参照してもよく、例えば、リストアプリケーションは、リストアプリケーションと共に含まれない特定のビューに依存してもよく、そのようなビューは、ウェブサイトを含むことによって提供され得る。WBS100は、欠落リファレンスハンドラ117を利用して、(a)欠落リファレンスの名称および型による自動的解決;(b)設計者に、明示的な解決方法を提供するように要求すること;(c)利用可能な情報(型、名称、属性値)に基づいて、欠落リファレンスオブジェクトの「ドラフトバージョン」を作成し、公開前に、設計者が後から完結させなければならないことをマークしておくこと等のうちの1つまたは複数の適切な方法によって、そのような欠落リファレンスを、オブジェクトを含める際に、解決してもよい。欠落リファレンスハンドラ117は、(例えば、同様の名称、同様のプロパティ、特定の検索属性、に基づいて)見込みのある候補の検索を実行してもよく、設計者に、可能性のあるマッチのランク付けされたリストを提供してもよい。
【0246】
例えば、「処理する」、「算出する」、「計算する」、「判定する」、「確立する」、「分析する」「チェックする」、などの用語を利用した、本明細書における検討が、コンピュータのレジスタおよび/またはメモリ内の物理量(例えば、電子的な量)で表されるデータを、コンピュータのレジスタおよび/またはメモリ内、もしくは、操作および/または処理を実行させる命令を格納し得る他の情報記憶媒体内の、同様に物理量で表される他のデータに、操作および/または変換する、コンピュータ、コンピューティングプラットフォーム、コンピューティングシステム、または、他の電子コンピューティングデバイスの、操作および/または処理を指してもよい。
【0247】
本発明のいくつかの実施形態は、完全なハードウェアの実施形態、完全なソフトウェアの実施形態、または、ハードウェア要素とソフトウェア要素の両方を含む実施形態を取り得る。本発明のいくつかの実施形態は、ソフトウェア、ファームウェア、常駐ソフトウェア、マイクロコード、ユーザによってダウンロードおよび/またはインストールされ得るアプリケーション、ブラウザで稼働し得るアプリケーション、クライアントサイドのアプリケーション、サーバサイドのアプリケーション、クライアント-サーバアプリケーション、などにおいて実装されてもよい。本発明のいくつかの実施形態は、コンピュータまたは任意の命令実行システムにより、またはコンピュータまたは任意の命令実行システムと併せて使用するためのプログラムコードを提供する、コンピュータによって使用可能な媒体またはコンピュータによって読取可能な媒体がアクセスすることができる、コンピュータプログラム製品の形態を取り得る。例えば、コンピュータによって使用可能な媒体またはコンピュータによって読取可能な媒体は、命令実行システムまたはデバイスにより、または、命令実行システムまたはデバイスと併せて使用するためのプログラムを、含み、格納し、通信し、伝播し、または、転送することが可能な任意の装置であってよく、または、該任意の装置を含んでもよい。本発明のいくつかの実施形態は、例えば、機械によって実行されると、機械(例えば、コンピュータまたは電子デバイス)に、本明細書に記載される方法および/または操作を実行させる、命令または命令のセットを格納することができる、機械によって読取可能な媒体または物品を使用して、実装されてもよい。
【0248】
本発明のいくつかの実施形態は、例えば、プロセッサ、中央処理装置(CPU)、デジタルシグナルプロセッサ(DSP)、コントローラ、集積回路(IC)、メモリユニット、記憶ユニット、入力ユニット、出力ユニット、有線および/または無線の通信ユニット、オペレーティングシステム、および、他の適切なハードウェアコンポーネントおよび/またはソフトウェアモジュール、を含んでもよく、またはこれらを利用してもよい。
【0249】
いくつかの実施形態は、スマートフォンまたはタブレットまたは携帯用コンピューティングデバイス用の、アプリケーションまたは「アプリ」として、またはこれを利用して実装されてもよく、アプリケーションまたは「アプリ」は、「アプリストア」またはアプリケーションのオンラインマーケットから、そのような電子デバイスにダウンロードおよび/またはインストールされ得る。
【0250】
本発明の1つまたは複数の実施形態を参照して、本明細書において記載される機能、操作、構成要素、および/または特徴は、本発明の1つまたは複数の他の実施形態を参照して、本明細書に記載される1つまたは複数の他の機能、操作、構成要素、および/または特徴、と組み合わせられてもよく、または、これらと組み合わせて利用されてもよい。
【0251】
本発明の特定の特徴について、本明細書において例示し説明したが、当業者には、多くの修正、置換、変更、および、均等物、が着意されるであろう。従って、特許請求の範囲は、全てのそのような修正、置換、変更、および均等物、を網羅することが意図される。
【0252】
関連出願の相互参照
本出願は2013年3月14日に出願した米国仮出願第61/781,866号からの優先権を主張するものであり、参照によりその全体が本明細書に援用される。
【手続補正書】
【提出日】2021-12-09
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ウェブサイト構築システム(WBS)であって、
構築されるウェブサイト上に表示されるコンテンツ項目のプールを格納し、各ビューが前記ウェブサイトのウェブページのセクション用のテンプレートである、前記コンテンツ項目を表示するのに利用可能なビューのセットを格納し、通常のリンキングコンポーネントとタグクラウドリンキングコンポーネントとを格納するデータベースであって、前記通常のリンキングコンポーネントと前記タグクラウドリンキングコンポーネントとは、前記コンテンツ項目の同一のコレクションと関連付けされ、前記タグクラウドリンキングコンポーネントは、前記コンテンツ項目の同一のコレクションから導出されるタグにより充填される、データベースと、
前記タグクラウドリンキングコンポーネントと前記通常のリンキングコンポーネントとを接続するリンキングコンポーネントマネージャであって、前記リンキングコンポーネントマネージャは更に、前記通常のリンキングコンポーネントにおける表示用の前記タグクラウドリンキングコンポーネントからのタグのユーザ選択に従って前記通常のリンキングコンポーネントに対して前記同一のコレクションのコンテンツ項目を選択する、リンキングコンポーネントマネージャと、
を有するWBS。
【請求項2】
コンテンツ項目によって前記タグクラウドリンキングコンポーネントを充填し、前記通常のリンキングコンポーネントにおける前記表示用のコンテンツ項目を決定するため、前記タグのユーザ選択に対するクエリ能力によってフィルタリングを提供するタグクラウド接続マネージャを含む、請求項1に記載のWBS。
【請求項3】
前記タグのユーザ選択は、少なくとも2つのタグを含む、請求項1に記載のWBS。
【請求項4】
前記リンキングコンポーネントマネージャは、前記データベースからの単一のコンテンツ項目を含む、一度に単一のミニページを表示する、請求項1に記載のWBS。
【請求項5】
前記リンキングコンポーネントマネージャは、ブラウズされるコンテンツ項目の間の遷移をアニメーション化する、請求項1に記載のWBS。
【請求項6】
前記リンキングコンポーネントマネージャは、コンテンツ項目のギャラリを同時に表示する、請求項1に記載のWBS。
【請求項7】
2つのリンキングコンポーネントの一方におけるコンテンツ項目に基づいて集計値を計算するアグリゲーション関数に基づいて、前記2つのリンキングコンポーネントの間を相互接続するアグリゲータフィールド接続マネージャを更に含む、請求項1に記載のWBS。
【請求項8】
前記コンテンツ項目のプールは、コレクション更新API(Application Programming Interface)、コレクション更新ウェブサービス、RSSフィード、及び外部データソースに基づくコレクション更新のためのインタフェースの少なくとも1つを介し更新可能な少なくとも1つの項目コレクションを含む、請求項1に記載のWBS。
【請求項9】
ウェブサイト構築システム(WBS)のための方法であって、
データベースに、構築されるウェブサイト上に表示されるコンテンツ項目のプールと、各ビューが前記ウェブサイトのウェブページのセクション用のテンプレートである、前記コンテンツ項目を表示するのに利用可能なビューのセットと、通常のリンキングコンポーネントとタグクラウドリンキングコンポーネントとを格納するステップであって、前記通常のリンキングコンポーネントと前記タグクラウドリンキングコンポーネントとは、前記コンテンツ項目の同一のコレクションと関連付けされ、前記タグクラウドリンキングコンポーネントは、前記コンテンツ項目の同一のコレクションから導出されるタグにより充填される、格納するステップと、
前記タグクラウドリンキングコンポーネントと前記通常のリンキングコンポーネントとを接続するステップと、
前記通常のリンキングコンポーネントにおける表示用の前記タグクラウドリンキングコンポーネントからのタグのユーザ選択に従って前記通常のリンキングコンポーネントに対して前記同一のコレクションのコンテンツ項目を選択するステップと、
を有する方法。
【請求項10】
コンテンツ項目によって前記タグクラウドリンキングコンポーネントを充填し、前記通常のリンキングコンポーネントにおける前記表示用のコンテンツ項目を決定するため、前記タグのユーザ選択に対するクエリ能力によってフィルタリングを提供するステップを更に含む、請求項9に記載の方法。
【請求項11】
前記タグのユーザ選択は、少なくとも2つのタグを含む、請求項9に記載の方法。
【請求項12】
前記接続するステップと前記選択するステップとは、前記データベースからの単一のコンテンツ項目を含む、一度に単一のミニページを表示する、請求項9に記載の方法。
【請求項13】
前記接続するステップと前記選択するステップとは、ブラウズされるコンテンツ項目の間の遷移をアニメーション化する、請求項9に記載の方法。
【請求項14】
前記接続するステップと前記選択するステップとは、コンテンツ項目のギャラリを同時に表示する、請求項9に記載の方法。
【請求項15】
2つのリンキングコンポーネントの一方におけるコンテンツ項目に基づいて集計値を計算するアグリゲーション関数に従って、前記2つのリンキングコンポーネントの間を相互接続するステップを更に含む、請求項9に記載の方法。
【請求項16】
前記コンテンツ項目のプールは、コレクション更新API(Application Programming Interface)、コレクション更新ウェブサービス、RSSフィード、及び外部データソースに基づくコレクション更新のためのインタフェースの少なくとも1つを介し更新可能な少なくとも1つの項目コレクションを含む、請求項9に記載の方法。