(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-01-27
(54)【発明の名称】ユーザがコメントを電子的に投稿できるようにするためのシステム、方法、及びデータ構造
(51)【国際特許分類】
H04L 51/52 20220101AFI20220120BHJP
G06F 16/172 20190101ALI20220120BHJP
G06Q 50/10 20120101ALI20220120BHJP
【FI】
H04L51/52
G06F16/172
G06Q50/10
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021532361
(86)(22)【出願日】2019-12-09
(85)【翻訳文提出日】2021-07-29
(86)【国際出願番号】 AU2019051346
(87)【国際公開番号】W WO2020118356
(87)【国際公開日】2020-06-18
(32)【優先日】2018-12-10
(33)【優先権主張国・地域又は機関】AU
(81)【指定国・地域】
(71)【出願人】
【識別番号】519344774
【氏名又は名称】タイプミー・ホールディングズ・プロプライエタリ・リミテッド
【氏名又は名称原語表記】TIPEME HOLDINGS PTY LTD
【住所又は居所原語表記】23 Agnes Street, Birkdale, Queensland 4159, Australia
(74)【代理人】
【識別番号】100110423
【氏名又は名称】曾我 道治
(74)【代理人】
【識別番号】100111648
【氏名又は名称】梶並 順
(74)【代理人】
【識別番号】100221729
【氏名又は名称】中尾 圭介
(72)【発明者】
【氏名】アイザック、シェーン
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC11
(57)【要約】
ユーザ装置(5)を使ってそれぞれのコメント(4)をユーザ(3)が電子的に投稿できるようにするためのシステム(1)であって、それぞれのコメントは投稿コンテンツのアイテムに関係する。このシステムは、投稿コメント及び被選択投稿データ(11)に対する要求(10)を受け付けるためのインタフェース(8、9)を含む。インタフェース(8)は、装置(5)からのそれぞれの要求(10)に応答してそれらの装置に被選択投稿データ(11)を導く。このシステムは、投稿コンテンツのアイテムごとのコンテンツデータ(16)を記憶するためのデータベース(15)と、ユーザ装置(5)からコメント(4)を受け付けるインタフェース(8)に応答するコメントエンジンと、被選択投稿データ(11)を生成するためにデータにアクセスするための、要求(10)に応答するパブリッシングエンジン(32)とを更に含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
第2のユーザ装置を使って第2のユーザが提供した投稿コンテンツに関係するそれぞれのコメントを、第1のユーザが第1のユーザ装置を使って電子的に投稿できるようにするためのシステムであって、
前記第2のユーザ装置からの前記投稿コンテンツ、それぞれの前記第1のユーザ装置からの前記コメント、及び被選択投稿データに対する前記第1のユーザ装置からの要求を受け付け、
前記第1のユーザ装置からの前記要求に応答して前記被選択投稿データを前記第1のユーザ装置に導くことを可能にする
ためのインタフェースと、
前記投稿コンテンツから導出されるコンテンツデータであって、コンテンツを示すコンテンツフィールド及びカウントデータを記憶するためのカウントフィールドを含む、コンテンツデータ、及び前記コメントから導出されるコメントデータを記憶するためのデータベースと、
前記第1のユーザによって行われる前記コメントのカウントを選択的に求め、前記カウントを示すように前記カウントフィールドを選択的に更新するために、前記それぞれの前記第1のユーザ装置から前記コメントを受け付ける前記インタフェースに応答するカウントエンジンと、
前記被選択投稿データを生成するために前記コンテンツデータ及び前記コメントデータにアクセスする、前記被選択投稿データに対する前記要求に応答するパブリッシングエンジンと
を含む、システム。
【請求項2】
前記コメントの前記カウントであるように前記カウントエンジンが前記カウントフィールドを更新する、請求項1に記載のシステム。
【請求項3】
各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、前記コメントの種類のうちの少なくとも1つのコメント数を示すように前記カウントエンジンが前記カウントデータを更新する、請求項1に記載のシステム。
【請求項4】
選択されたそれぞれのコメントの種類の前記コメント数を示すように前記カウントエンジンが前記カウントデータを更新する、請求項3に記載のシステム。
【請求項5】
それぞれのコメントの種類の前記コメント数を示すように前記カウントエンジンが前記カウントデータを更新する、請求項4に記載のシステム。
【請求項6】
前記第1のユーザの1人が前記投稿コンテンツに対する既存のコメントを有するかどうかを確かめるために、前記データベースにアクセスし前記コメントデータ及び/又は前記コンテンツデータに応答し、
前記既存のコメントを有する場合、投稿コメントと前記既存のコメントとを比較し、
前記投稿コメントと前記既存のコメントとが異なる場合は前記コメントデータ及び前記カウントデータを更新する
ために、前記投稿コンテンツに関して前記第1のユーザの前記1人から前記投稿コメントを受け付ける前記インタフェースに応答するコメントエンジンを含む、請求項1~5の何れか一項に記載のシステム。
【請求項7】
電子的に投稿された第2のユーザのコンテンツに関係するそれぞれのコメントを、第1のユーザが電子的に投稿できるようにするための方法であって、
前記第2のユーザからの前記コンテンツ及びそれぞれの前記第1のユーザからの前記コメントを受け付け、前記第1のユーザが投稿データにアクセスできるようにするためのインタフェースを提供するステップと、
前記コンテンツから導出されるコンテンツデータであって、前記コンテンツを示すコンテンツフィールド及びカウントデータを記憶するためのカウントフィールドを含む、コンテンツデータ、及び前記コメントから導出されるコメントデータをデータベース内に記憶するステップと、
前記第1のユーザによって行われる前記コメントのカウントを選択的に求め、前記カウントを示すように前記カウントフィールドを選択的に更新するために、前記それぞれの前記第1のユーザから前記コメントを受け付ける前記インタフェースに対してカウントエンジンによって応答するステップと、
前記投稿データを生成するために前記コンテンツデータ及び前記コメントデータに応答するパブリッシングエンジンを使用するステップと
を含む、方法。
【請求項8】
前記コメントの前記カウントであるように前記カウントエンジンが前記カウントフィールドを更新するステップを含む、請求項7に記載の方法。
【請求項9】
各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、前記方法は前記コメントの種類のうちの少なくとも1つのコメント数を示すように前記カウントエンジンが前記カウントデータを更新するステップを含む、請求項7に記載の方法。
【請求項10】
選択されたそれぞれのコメントの種類の前記コメント数を示すように前記カウントエンジンが前記カウントデータを更新するステップを含む、請求項9に記載の方法。
【請求項11】
それぞれのコメントの種類の前記コメント数を示すように前記カウントエンジンが前記カウントデータを更新するステップを含む、請求項10に記載の方法。
【請求項12】
前記第1のユーザの1人が前記コンテンツに対して過去にコメントを投稿したかどうかを確かめるために前記データベースにアクセスし、
過去にコメントを投稿している場合、投稿コメントと前記過去に投稿されたコメントとが異なるかどうかを確かめ、
異なる場合は前記コメントデータ及び前記カウントデータを更新する
ために、前記コンテンツに関して前記第1のユーザの前記1人から前記投稿コメントを受け付ける前記インタフェースに応答するコメントエンジンを提供するステップを含む、請求項7~11の何れか一項に記載の方法。
【請求項13】
第2のユーザによって提供されるコンテンツに関係するそれぞれのコメントを、第1のユーザが提供できるようにするためのデータ構造であって、
前記第2のユーザによって提供される前記コンテンツを示すコンテンツフィールド、及び
前記第1のユーザによって行われる前記コメントのカウントを示すカウントデータを記憶するための前記コンテンツフィールドに関連するカウントフィールド
を含む、データ構造。
【請求項14】
前記カウントデータがコメント数から導出される、請求項13に記載のデータ構造。
【請求項15】
各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、前記カウントデータが前記コメントの種類のうちの少なくとも1つの前記コメント数から導出される、請求項14に記載のデータ構造。
【請求項16】
前記カウントデータが全てのコメントの種類のコメント数から導出される、請求項15に記載のデータ構造。
【請求項17】
コメントに関する前記コメントの種類がそれぞれの前記第1のユーザによって選択される、請求項15又は16に記載のデータ構造。
【請求項18】
前記カウントデータがそれぞれの前記第1のユーザ1人当たり最大1つのコメントまで示す、請求項13~17の何れか一項に記載のデータ構造。
【請求項19】
前記第1のユーザの1人がそれぞれのコメントを提供することに応答して前記カウントフィールドが更新される、請求項13~18の何れか一項に記載のデータ構造。
【請求項20】
ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするためのシステムであって、各コメントは投稿コンテンツの複数のアイテムの1つに関係する、システムであり、
前記コメント及び被選択投稿データに対する要求を前記ユーザ装置から受け付け、
前記ユーザ装置からの前記要求それぞれに応答して前記被選択投稿データを前記ユーザ装置に導くことを可能にする
ためのインタフェースと、
投稿コンテンツのアイテムごとのコンテンツデータであって、前記複数のアイテムそれぞれに関する前記投稿コンテンツを示す、コンテンツデータ、並びに前記コメントのそれぞれについて、前記コメント及び前記コメントを行っている前記ユーザを示すコメントデータを記憶するためのデータベースと、
前記コメントデータ及び前記コンテンツデータを選択的に更新するために、それぞれの前記ユーザからコメントを受け付ける前記インタフェースに応答するコメントエンジンと、
前記被選択投稿データを生成するために前記コンテンツデータにアクセスするための、前記被選択投稿データに対する前記要求に応答するパブリッシングエンジンと
を含む、システム。
【請求項21】
前記コンテンツデータがカウントデータを含み、前記アイテムの1つに関して前記ユーザが行ったコメントのカウントを求め、前記カウントを示すように前記カウントデータを更新するために、前記アイテムの1つに関して前記ユーザの1人からコメントを受け付ける前記インタフェースに前記コメントエンジンが応答する、請求項20に記載のシステム。
【請求項22】
各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、
前記コメントの種類のうちの少なくとも1つの前記コメントのカウントを示すように前記コメントエンジンが前記カウントデータを更新する、
請求項21に記載のシステム。
【請求項23】
前記アイテムの前記1つに関して前記ユーザによって選択されるそれぞれのコメントの種類の前記コメントのカウントを示すように前記コメントエンジンが前記カウントデータを更新する、請求項22に記載のシステム。
【請求項24】
前記アイテムの前記1つに関してそれぞれのコメントの種類の前記コメントのカウントを示すようにカウントエンジンが前記カウントデータを更新する、請求項22に記載のシステム。
【請求項25】
前記コメントエンジンが
前記アイテムの1つに関して前記ユーザの1人が以前にコメントを提供しているかどうかを確かめるために前記データベースにアクセスし、
以前にコメントを提供している場合、新たなコメントと前記以前のコメントとを比較し、
ユーザデータを選択的に更新するために前記比較に応答する
ために、投稿コンテンツの前記アイテムの1つに関して前記ユーザの前記1人から前記新たなコメントを受け付ける前記インタフェースに応答する、請求項20~24の何れか一項に記載のシステム。
【請求項26】
前記カウントデータを選択的に更新するために前記コメントエンジンが前記比較に応答する、
請求項21~24の何れか一項に従属する場合の請求項25に記載のシステム。
【請求項27】
ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするための方法であって、各コメントは投稿コンテンツの複数のアイテムの1つに関係する、方法であり、
前記コメント及び被選択投稿データに対する要求を前記ユーザ装置から受け付け、
前記ユーザ装置からの前記要求に応答して前記被選択投稿データを前記ユーザ装置に導くことを可能にする
ためのインタフェースを提供するステップと、
投稿コンテンツのアイテムごとのコンテンツデータであって、前記アイテムそれぞれに関する前記投稿コンテンツを示す、コンテンツデータ、並びに前記コメントのそれぞれについて、前記コメント及び前記コメントを提供している前記ユーザを示すユーザデータをデータベース内に記憶するステップと、
前記ユーザデータを選択的に更新するために、前記ユーザからそれぞれのコメントを受け付ける前記インタフェースに応答するステップと、
前記被選択投稿データを生成するために前記コンテンツデータ及び前記ユーザデータにアクセスするための前記要求に応答するステップと
を含む、方法。
【請求項28】
ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするためのデータ構造であって、各コメントは投稿コンテンツの複数のアイテムの1つに関係する、データ構造であり、
投稿コンテンツのアイテムごとのコンテンツデータであって、前記アイテムそれぞれに関する前記投稿コンテンツを示す、コンテンツデータ、並びに
前記コメントのそれぞれについて、前記コメント及び前記コメントを行っている前記ユーザを示すユーザデータ
を含む、データ構造。
【請求項29】
前記アイテムごとのコンテンツデータが、前記アイテムに対して前記ユーザが行った前記コメントのカウントを示すカウントデータを含む、請求項28に記載のデータ構造。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザがコメントを電子的に投稿できるようにするためのシステム、方法、及びデータ構造に関する。
【0002】
本発明は、とりわけモバイル装置用のソーシャルメディアプラットフォームで使用するために開発されており、以下ではその応用に関して説明する。但し、本発明はその特定の使用分野に限定されず、非モバイル装置用のソーシャルメディアプラットフォームにも、それらのプラットフォームが公衆若しくは私設又はその両方であろうと、適用できることが理解されるであろう。
【背景技術】
【0003】
本明細書の全体を通して、従来技術についての如何なる解説も、かかる従来技術が広く知られていること、又は当分野における共通の一般知識の一部を形成することを、決して認めるものとして考慮されるべきではない。
【0004】
ソーシャルメディアプラットフォームが広範に使用され、その人気が出るにつれ、それらのプラットフォーム上に投稿されたコンテンツにコメントするための、ユーザに与えられる機能を向上させるために多大な努力がなされてきた。かかる向上策は、コンテンツと共に公開される対応するアイコンを1回クリックすることによって、ユーザが投稿コンテンツに対して「いいね」又は「そう思わない」を表明できるようにするような機能を含む。かかるプラットフォームは、コンテンツに対してテキスト、画像、アイコン(顔文字等)の1つ又は複数を投稿することでより複雑なやり方でコメントする能力又はそのような他の仕組みをユーザに与えることもできる。
【0005】
公衆プラットフォームでは、提供される唯一の識別情報がコメントを投稿しているユーザによって採用されるハンドル及び/又はアバタである点で、コメントが典型的にはユーザによって部分的に又は完全に匿名で投稿される。上向きの親指又は下向きの親指等のより簡単なコメントでは、コメントがユーザのために効果的且つ完全に秘匿化される。
【0006】
ソーシャルネットワーキングプラットフォームであるソーシャルメディアプラットフォームでは、コンテンツ及びコメントを投稿するユーザの識別情報が互いに知られる可能性が高まる。従って、投稿コンテンツの各アイテムに関連してユーザが属性付きコメント及び属性なしコメントを行えるようにするための別個の機能が典型的には提供される。
【0007】
所与のプラットフォーム上のユーザ数が増加するにつれ、(ユーザ装置によって定められるクライアント側とは別に)プラットフォームのサーバ側に課せられる計算需要が急激に増加する。このことは、複数のコメント形式に適応するプラットフォームで特に激化するが、上向きの親指及び下向きの親指式のコメント等の割と単純なコメント形式でさえ問題になる。処理の典型的なボトルネックは、直近に行われたコメントでデータベースを更新すること、及びその後そのデータベースにアクセスしてユーザ用の最新データを生成することを含む。プラットフォームのサーバ側により多くの計算力を導入することによってこの問題は一時的に改良され得るが、リアルタイムの更新及び多くの更なる複雑な機能に対するプラットフォームの需要と相まってユーザ数の急激な増加が、かかるプラットフォームに対処するための進行中の技術的問題を引き起こしている。
【0008】
従って、ユーザがコメントを電子的に投稿できるようにするための改善されたシステム、方法、及びデータ構造が求められている。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明の好ましい実施形態の目的は、従来技術の不利点の少なくとも1つを克服し若しくは改良すること又は有用な代替策を提供することである。
【課題を解決するための手段】
【0010】
本発明の第1の態様によれば、第2のユーザ装置を使って第2のユーザが提供した投稿コンテンツに関係するそれぞれのコメントを、第1のユーザが第1のユーザ装置を使って電子的に投稿できるようにするためのシステムが提供され、このシステムは、
第2のユーザ装置からの投稿コンテンツ、それぞれの第1のユーザ装置からのコメント、及び被選択投稿データに対するユーザ装置からの要求を受け付け、
ユーザ装置からのそれぞれの要求に応答して被選択投稿データをユーザ装置に導くことを可能にする
ためのインタフェースと、
投稿コンテンツから導出されるコンテンツデータであり、コンテンツを示すコンテンツフィールド及びカウントデータを記憶するためのカウントフィールドを含む、コンテンツデータ、及びコメントから導出されるコメントデータを記憶するためのデータベースと、
第1のユーザによって行われるコメントのカウントを選択的に求め、そのカウントを示すようにカウントフィールドを選択的に更新するために、それぞれの第1のユーザ装置からコメントを受け付けるインタフェースに応答するカウントエンジンと、
被選択投稿データを生成するためにコンテンツデータ及びコメントデータにアクセスする、被選択投稿データに対する要求に応答するパブリッシングエンジンと、
を含む。
【0011】
一実施形態では、コメントのカウントであるようにカウントエンジンがカウントフィールドを更新する。
【0012】
一実施形態では、各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、コメントの種類のうちの少なくとも1つのコメント数を示すようにカウントエンジンがカウントデータを更新する。
【0013】
一実施形態では、選択されたそれぞれのコメントの種類のコメント数を示すようにカウントエンジンがカウントデータを更新する。
【0014】
一実施形態では、それぞれのコメントの種類のコメント数を示すようにカウントエンジンがカウントデータを更新する。
【0015】
一実施形態では、このシステムがコメントエンジンを含み、
コメントエンジンは、
第1のユーザの1人が投稿コンテンツに対する既存のコメントを有するかどうかを確かめるために、データベースにアクセスしコメントデータ及び/又はコンテンツデータに応答し、
既存のコメントを有する場合、投稿コメントと既存のコメントとを比較し、
投稿コメントと既存のコメントとが異なる場合はコメントデータ及びカウントデータを更新する
ために、投稿コンテンツに関して第1のユーザの1人から投稿コメントを受け付けるインタフェースに応答する。
【0016】
本発明の第2の態様によれば、電子的に投稿された第2のユーザのコンテンツに関係するそれぞれのコメントを、第1のユーザが電子的に投稿できるようにするための方法が提供され、この方法は、
第2のユーザからのコンテンツ及びそれぞれの第1のユーザからのコメントを受け付け、ユーザが投稿データにアクセスできるようにするためのインタフェースを提供するステップと、
コンテンツから導出されるコンテンツデータであって、コンテンツを示すコンテンツフィールド及びカウントデータを記憶するためのカウントフィールドを含む、コンテンツデータ、及びコメントから導出されるコメントデータをデータベース内に記憶するステップと、
第1のユーザによって行われるコメントのカウントを選択的に求め、そのカウントを示すようにカウントフィールドを選択的に更新するために、それぞれの第1のユーザからコメントを受け付けるインタフェースに対してカウントエンジンによって応答するステップと、
投稿データを生成するためにコンテンツデータ及びコメントデータに応答するパブリッシングエンジンを使用するステップと
を含む。
【0017】
一実施形態では、この方法は、コメントのカウントであるようにカウントエンジンがカウントフィールドを更新するステップを含む。
【0018】
一実施形態では、各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、この方法は、コメントの種類のうちの少なくとも1つのコメント数を示すようにカウントエンジンがカウントデータを更新するステップを含む。
【0019】
一実施形態では、この方法は、選択されたそれぞれのコメントの種類のコメント数を示すようにカウントエンジンがカウントデータを更新するステップを含む。
【0020】
一実施形態では、この方法は、それぞれのコメントの種類のコメント数を示すようにカウントエンジンがカウントデータを更新するステップを含む。
【0021】
一実施形態では、この方法はコメントエンジンを提供するステップを含み、コメントエンジンは、
第1のユーザの1人がコンテンツに対して過去にコメントを投稿したかどうかを確かめるためにデータベースにアクセスし、
過去にコメントを投稿している場合、投稿コメントと過去に投稿されたコメントとが異なるかどうかを確かめ、
異なる場合はコメントデータ及びカウントデータを更新する
ために、コンテンツに関して第1のユーザの1人から投稿コメントを受け付けるインタフェースに応答する。
【0022】
本発明の第3の態様によれば、第2のユーザによって提供されるコンテンツに関係するそれぞれのコメントを、第1のユーザが提供できるようにするためのデータ構造が提供され、このデータ構造は、
第2のユーザによって提供されるコンテンツを示すコンテンツフィールド、及び
第1のユーザによって行われるコメントのカウントを示すカウントデータを記憶するためのコンテンツフィールドに関連するカウントフィールド
を含む。
【0023】
一実施形態では、カウントデータがコメント数から導出される。
【0024】
一実施形態では、各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、カウントデータがコメントの種類のうちの少なくとも1つのコメント数から導出される。
【0025】
一実施形態では、カウントデータが全てのコメントの種類のコメント数から導出される。
【0026】
一実施形態では、コメントに関するコメントの種類がそれぞれの第1のユーザによって選択される。
【0027】
一実施形態では、カウントデータがそれぞれの第1のユーザ1人当たり最大1つのコメントまで示す。
【0028】
一実施形態では、第1のユーザの1人がそれぞれのコメントを提供することに応答してカウントフィールドが更新される。
【0029】
本発明の第4の態様によれば、ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするためのシステムが提供され、各コメントは投稿コンテンツの複数のアイテムの1つに関係し、このシステムは、
コメント及び被選択投稿データに対する要求をユーザ装置から受け付け、
ユーザ装置からのそれぞれの要求に応答して被選択投稿データをユーザ装置に導くことを可能にする
ためのインタフェースと、
投稿コンテンツのアイテムごとのコンテンツデータであって、それぞれのアイテムに関する投稿コンテンツを示す、コンテンツデータ、並びにコメントのそれぞれについて、コメント及びコメントを行っているユーザを示すコメントデータを記憶するためのデータベースと、
コメントデータ及びコンテンツデータを選択的に更新するために、それぞれのユーザからコメントを受け付けるインタフェースに応答するコメントエンジンと、
被選択投稿データを生成するためにコンテンツデータにアクセスするための、被選択投稿データに対する要求に応答するパブリッシングエンジンと
を含む。
【0030】
一実施形態ではコンテンツデータがカウントデータを含み、アイテムの1つに関してユーザが行ったコメントのカウントを求め、そのカウントを示すようにカウントデータを更新するために、アイテムの1つに関してユーザの1人からコメントを受け付けるインタフェースにコメントエンジンが応答する。
【0031】
一実施形態では、
各コメントがコメントの種類の所定の一覧から選択されるコメントの種類を有し、
コメントの種類のうちの少なくとも1つのコメントのカウントを示すようにコメントエンジンがカウントデータを更新する。
【0032】
一実施形態では、アイテムの1つに関してユーザによって選択されるそれぞれのコメントの種類のコメントのカウントを示すようにコメントエンジンがカウントデータを更新する。
【0033】
一実施形態では、アイテムの1つに関してそれぞれのコメントの種類のコメントのカウントを示すようにカウントエンジンがカウントデータを更新する。
【0034】
一実施形態では、コメントエンジンが、
アイテムの1つに関してユーザの1人が以前にコメントを提供しているかどうかを確かめるためにデータベースにアクセスし、
以前にコメントを提供している場合、新たなコメントと以前のコメントとを比較し、
ユーザデータを選択的に更新するために比較に応答する
ために、投稿コンテンツのアイテムの1つに関してユーザの1人から新たなコメントを受け付けるインタフェースに応答する。
【0035】
一実施形態では、カウントデータを選択的に更新するためにコメントエンジンが比較に応答する。
【0036】
本発明の第5の態様によれば、ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするための方法が提供され、各コメントは投稿コンテンツの複数のアイテムの1つに関係し、この方法は、
コメント及び被選択投稿データに対する要求をユーザ装置から受け付け、
ユーザ装置からのそれぞれの要求に応答して被選択投稿データをユーザ装置に導くことを可能にする
ためのインタフェースを提供するステップと、
投稿コンテンツのアイテムごとのコンテンツデータであって、それぞれのアイテムに関する投稿コンテンツを示す、コンテンツデータ、並びにコメントのそれぞれについて、コメント及びコメントを提供しているユーザを示すユーザデータをデータベース内に記憶するステップと、
ユーザデータを選択的に更新するために、それぞれのユーザからコメントを受け付けるインタフェースに応答するステップと、
被選択投稿データを生成するためにコンテンツデータ及びユーザデータにアクセスするための要求に応答するステップと
を含む。
【0037】
本発明の第6の態様によれば、ユーザ装置を使ってそれぞれのコメントをユーザが電子的に投稿できるようにするためのデータ構造が提供され、各コメントは投稿コンテンツの複数のアイテムの1つに関係し、このデータ構造は、
投稿コンテンツのアイテムごとのコンテンツデータであって、それぞれのアイテムに関する投稿コンテンツを示す、コンテンツデータ、並びに
コメントのそれぞれについて、コメント及びコメントを行っているユーザを示すユーザデータ
を含む。
【0038】
一実施形態では、アイテムごとのコンテンツデータが、そのアイテムに対してユーザが行ったコメントのカウントを示すカウントデータを含む。
【0039】
本明細書の全体を通して、「一実施形態」、「一部の実施形態」、又は「実施形態」への言及は、その実施形態に関して説明する特定の特徴、構造、又は特性が本発明の少なくとも1つの実施形態に含まれることを意味する。従って、本明細書の全体にわたる様々な箇所における「一実施形態では」、「一部の実施形態では」、又は「実施形態では」という語句の出現は必ずしも全てが同じ実施形態に言及するとは限らないがその可能性もある。更に1つ又は複数の実施形態では、本開示から当業者に明らかになるように特定の特徴、構造、又は特性を任意の適切なやり方で組み合わせることができる。
【0040】
本明細書で使用するとき、別途規定しない限り、共通の対象物を説明するための「第1の」、「第2の」、「第3の」等の順序形容詞の使用は、同様の対象物の様々な例が参照されていることを示すに過ぎず、そのように記載する対象物が時間的に、空間的に、順位において、重要度において、又は他の任意のやり方で所与の順番になければならないことを含意することは意図しない。
【0041】
文脈が明確に必要としない限り、添付の特許請求の範囲及び本明細書の説明では「comprising(~を含んでいる)」、「comprised of(~で構成される)」、又は「which comprises(~を含む)」という用語は何れも「後続の要素/特徴を少なくとも含むが他を排除しない」ことを意味する非限定語である。従って特許請求の範囲で使用する場合、「comprising(~を含んでいる)」という用語はその後に列挙される手段、又は要素、又はステップに限定されると解釈すべきではない。例えば「a device comprising A and B(AとBとを含む装置)」という表現の範囲は、要素A及び要素Bだけで構成される装置に限定すべきではない。本明細書で使用するとき、「including(~を含んでいる)」、「which includes(~を含む)」、又は「that includes(~を含む)」という用語の何れもやはり「その用語の後に続く要素/特徴を少なくとも含むが他を排除しない」ことを意味する非限定語である。従って「including(~を含んでいる)」という用語は「comprising(~を含んでいる)」と同意語であり、それを意味し、且つそれと交換可能に使用することができる。
【0042】
本明細書で使用するとき、「例示的」という用語は、本質を示すこととは対照的に例を与えることを意味する。つまり「例示的実施形態」とは、必ず例示的本質の実施形態であることとは対照的に一例として与えられる実施形態である。
【図面の簡単な説明】
【0043】
次に、本発明の好ましい実施形態を添付図面に関して専ら例として記載する。
【
図1】本発明の一実施形態によるシステムの概略図である。
【
図2】
図1のシステムで使用されるデータ構造の概略図である。
【
図3】
図1のシステムの例示的動作を示すフローチャートである。
【
図4】システム1にアクセスするユーザ装置の説明のための一連のスクリーンショットである。
【発明を実施するための形態】
【0044】
ユーザがコメントを電子的に投稿できるようにするためのシステム、方法、及びデータ構造を本明細書に記載する。
【0045】
ソーシャルメディアプラットフォームは、ソーシャルネットワーキングプラットフォーム、ブログ、マイクロブログ、ビデオ共有プラットフォーム、インターネットフォーラム等を含む。これらのインターネット又はコンピュータネットワーク対応プラットフォームは、「投稿コンテンツ」であるデジタルコンテンツの共有を可能にし、更には一般にユーザがコンテンツに対してコメントを提供することも可能にする。この文脈において、コメント自体を投稿コンテンツとすることができ、そのコンテンツに対して更なるコメントを行えることが理解されよう。デジタルコンテンツは、テキスト、1つ又は複数の画像ファイル、1つ又は複数のビデオファイル、他のリンクのハイパーテキスト等のうちの1つ又は複数を含む要素及び/又はファイルの種類の多岐にわたる組み合わせを含むことができる。ユーザによって提供されるコメントは、アイコン、カウントの1つ又は複数等の仕組み、又は投稿コンテンツ内で使用されるような仕組みの何れかを含む多岐にわたる選択肢から選択することもできる。
【0046】
本発明の好ましい実施形態では、コメントはコンテンツに対する「反応」として例示的に示す。これらの反応はより広範な「コメント」という用語のサブセットであり、以下に記載する実施形態の動作及びかかる反応を使用することによって実現可能な有利な機能を示すためにそれらの実施形態で使用する。しかし他の実施形態では、以下に記載する反応以外の又はそれらの反応に加えたコメントが利用される。
【0047】
図1及び
図2を参照し、本発明の一実施形態によるシステム1が示されている。システム1は、ソーシャルネットワーキングプラットフォーム形式のソーシャルメディアプラットフォームをホストするための設備2を含む。システム1は、ユーザ3がユーザ装置5を使って反応4形式のそれぞれのコメントを電子的に投稿できるようにする。各反応4は、ソーシャルネットワーキングプラットフォーム上の投稿コンテンツの複数のアイテム6(
図2参照)の1つに関係する。システム1は、反応4及びそれとは別にプラットフォーム上の被選択投稿データ11に対する要求10の両方を装置5から受け付けるための通信インタフェース8及びウェブインタフェース9形式のインタフェースを含む。データ11は、投稿コンテンツのアイテム6、反応4、若しくは他の投稿材料、又はこれらのうちの何れかから導出されるデータのうちの1つ又は複数を示すことができ、広告等の他のデータを含み得る。インタフェース8は、装置5からのそれぞれの要求10に応答して被選択投稿データ11を装置5に導く。
図2で最もよく示されているように、データベース15は投稿コンテンツのアイテム6ごとにコンテンツデータ16を記憶する。所与のアイテム6のコンテンツデータ16は、アイテム6の投稿コンテンツを示すデータを含むコンテンツフィールド17とカウントフィールド18とを含む。データベース21は、フィールド23及びフィールド24を有するコメントデータ22を反応4のそれぞれについて記憶し、それらのフィールドはそれぞれの反応を示すデータと反応を提供するそれぞれのユーザ3を示すデータとをそれぞれ含む。反応サーバ31形式のコメントエンジンは、データ22を選択的に更新するために、それぞれのユーザ3から反応4を受け付けるインタフェース8に応答する。パブリッシングサーバ32形式のパブリッシングエンジンは、被選択投稿データ11を生成するために、データ16及び22にアクセスするための要求10に応答する。
【0048】
ユーザ3を3人だけ明確に図示しているが、このプラットフォームは数十万人又は数億人ものユーザをサポートすることが理解されよう。
【0049】
設備2は、プラットフォームが機能することを可能にするのに必要なハードウェア及びソフトウェアを維持するオペレータ(不図示)によって制御される。この実施形態では、オペレータは主にユーザ3によって作成されるデータ16の所有者でもある。つまりシステム1は、ユーザ又はオペレータが前に生成したコンテンツに応答して他のユーザが反応4を投稿できるようにする。システム1は、所与の反応に関して更なる反応を後に投稿できるように、所与の反応をコンテンツとして扱うこともできる。
【0050】
他の実施形態では、コンテンツデータ16を生成するための1人又は複数の作者をオペレータが代わりに又は追加で雇い或いは従事させる。更なる実施形態では、コンテンツデータ16の一部がニュースフィード等のフィードから導出される。つまり、詳細に記載する実施形態ではシステム1がソーシャルネットワーキングプラットフォームに適用されるが、システム1はブログ、共同管理ツール、オンライン出版、及びユーザからのコメント(つまり反応)に適応する他のオンラインプラットフォーム等の他のプラットフォームにも適用できることが当業者によって理解されよう。
【0051】
装置5は、ユーザがシステム1と対話できるようにするためのインターネット対応装置である。装置5は、スマートフォン、タブレット、デスクトップコンピュータ、ラップトップコンピュータ等の装置を含む。所与のユーザは典型的にはそのような1台の装置によって任意の所与の時点においてシステム1とのセッションを開始する。但し、そのユーザは後のセッションを開始し、システム1から同じ機能を得るためにそのような任意の他の装置を使用することができる。
【0052】
システム1内に含まれるサーバ31及びサーバ32は、システム1の機能を提供するために動作するサーバシステム33の一部である。システム1用の管理サーバであるシステム33内の例示的なサーバ35は、プロセッサ36とメモリモジュール37とを含み、メモリモジュール37はシステム1の全体的な機能に寄与するためにサーバ35によって実行されるソフトウェア命令38をとりわけ記憶するためのものである。当業者によって理解されるように、システム1内で更なる機能を与えるために他のサーバが含まれる。
【0053】
サーバシステム33は、データベース15、21、及び42、並びに設備2内に含まれる他の任意のデータべース内に保持されるレコードにシステム33がアクセスできるようにするための、及び/又はかかるレコードをシステム33が更新できるようにするための通信バックボーン41も利用する。遠隔設置され又は遠隔制御されるデータベースのデータをシステム1が必要とする限り、そのデータはインタフェース8を介してアクセスされる。
【0054】
他の実施形態では、データ16及びデータ22の一部又は全てが、設備2に対して遠隔設置される1つ又は複数のデータベース(不図示)内に記憶される。
【0055】
図2ではデータ16及びデータ22について3つのレコードしかそれぞれ明確に示していないが、システム1はそのようなレコードを数百万件収容し、システム1の動作によって新たなコンテンツが投稿され、そのコンテンツに対する新たな反応が生じるにつれて、その件数が継続的に増加するように構成される。今度はその動作について
図4の14個の連続したスクリーンショットに関してより詳細に説明する。ここで、1から21までの参照番号はスクリーンショットを覆うそれぞれの円の中に提示されている。これらの参照番号について以下のように詳述する:
スクリーンショット1、参照番号1-登録プロセス(不図示)を成功裏に完了した後、それぞれのユーザ3がシステム1にログインする。システム1にログインすると、各ユーザ3は装置5を使用して要求10を送り、自らの選択のために提供される投稿データ11を見ることができる。一部の実施形態では全てのデータ16が公開される一方、他の実施形態では所与の投稿コンテンツのアクセスを制限するためのグループへとユーザが自己構成される。
図4では投稿コンテンツが参照番号1で示されており、他のユーザによってアップロードされ対話のためにユーザが利用可能な複数のデジタル画像を含む。これらの画像はシステム1への投稿時刻に関して時系列順に配置されている。但し他の実施形態では、ユーザにとっての知覚される関心事、画像の作成日、ユーザが指定したトピックに対する画像の関連性等の異なる序列法が使用される。この例では、提供されるサムネイルをクリックし又はタップすることによってユーザが画像の1つを選択する。この操作は、装置5によって更なる要求10が生成されシステム1に伝えられることをもたらす。
スクリーンショット2、参照番号2-サムネイルを選択すると、より詳細な形式の画像が投稿データ11の更なる例の中で提供される。装置5によって受信されると、このより高解像度の画像が装置5のGUIによってユーザ3に表示される。表示する際、GUIは対話型ボタン又はアイコンもユーザ3に表示する。ユーザ3がこのボタンを1回タップすると、ユーザの予め設定された既定の反応がそれぞれの反応4内でシステム1に伝えられる。このボタンをユーザがタップしホールドすると、更なる反応の選択肢が表示される。
スクリーンショット3、参照番号3-対話型ボタンとのホールドによる対話後、反応の種類及び選択肢の一覧を装置5のGUIがユーザ3に提示する。実施形態のこの例ではユーザのために10種類の反応が列挙されており、それぞれの反応の種類は通常状態及び匿名状態を提示する。システム1に伝えられる反応4は、反応の種類及び反応の状態の両方を示す。ユーザが任意の所与の反応の種類について通常状態を選択する場合、システム1に伝えられる反応4は反応の種類を示すデータだけではなく、投稿データ16に対して且つ反応4を生成する特定のユーザ3に関連して反応を記録し表示すべきであることも含む。或いはユーザ3はトグルスイッチを押すことによって匿名状態を選択することができる。
スクリーンショット4、参照番号4-スクリーンショット3からユーザ3は匿名状態に切り替え、通常状態の反応と区別するためのラベルと共に各反応アイコンが現在提示されている。ユーザ3が匿名状態での反応を選択すると、その反応は投稿コンテンツに対して記録及び表示され、反応を行うユーザ3に関連付けられることはない。投稿コンテンツの所有者であろうと投稿を見ている別のユーザであろうと、別のユーザは匿名の反応を行うユーザを識別することはできない。
スクリーンショット5、参照番号5-スクリーンショット4でユーザ3は匿名の「kiss」型の反応を選択し、その選択は反応4としてシステム1に伝えられる。スクリーンショット5では、反応4を送信したユーザ3は反応が示された投稿コンテンツに再びアクセスし、反応4の結果を見ることができる。つまり反応4を行ったユーザ3は、投稿コンテンツに関して行うことを選択した反応の種類を確認することができる。参照番号5で示す反応アイコンをユーザ3がタップすると、選択された反応の種類を使って対話するための更なる選択肢がユーザ3に提供される。
スクリーンショット6、参照番号6~9-スクリーンショット5で、ユーザ3は既存の可視反応アイコンをタップした。スクリーンショット6では、関連する投稿コンテンツに対してユーザ3が適用した現在の反応が表示されている。参照番号7で示すアイコンの一覧は反応の種類の元の一覧に対応し、反応の種類及び選択肢を変更し又は確認するためにユーザ3がその一覧から選択することを可能にする。更に、投稿コンテンツに対する現在の反応をユーザ3が削除し又は除去することができ、それはこの実施形態では参照番号8で示す削除アイコンを選択することによって行われる。更にユーザ3には、投稿コンテンツに対して自分が前に反応4を送ったことを隠す選択肢も提供される。この機能は、参照番号9で示すアイコンをユーザ3が押すことによって有効にされる。それにより、非反応状態に戻す、さもなければ関連する投稿コンテンツにユーザ3が反応4を送った任意の視覚的形跡をなくす視覚的確認が上記のスクリーンショット5及び6内で与えられる。この機能は、システム1上でユーザのアカウントにアクセス可能であり得る別の人が反応4の存在を検出できることなしに、この例におけるユーザ3(及びより広い意味ではシステム1の全てのユーザ)が投稿コンテンツに反応できるようにする。その特定の反応4は、全反応一覧内で引き続き見ることができる(以下参照)。
スクリーンショット7、参照番号10-スクリーンショット6でユーザ3は参照番号9で示すアイコンを選択し、そのため装置5はその選択の結果をユーザ3に知らせる。具体的には装置5は、関連する反応がシステム1内で引き続き活性状態にあるが、システム1を使用するために正当にログインしていてもユーザ3には見えないことをユーザ3に知らせるための情報提供ポップアップ10を提供するように構成される。一部の実施形態では、システム1はその非表示レコード又は全ての非表示レコードを再び見ることができるようにする選択肢をユーザ3に認める。
スクリーンショット8、参照番号11-連続して9及び10の数字で示すアイコンが選択されると、投稿コンテンツが変更された反応と共にユーザ3に提示される。つまり、参照番号11で示す領域がスクリーンショット2内で提供されるのと同じである点で、前に見ることができた反応(スクリーンショット5)をスクリーンショット7ではもう見ることができない。ユーザ3が参照番号11付近のアイコンをタップしホールドする場合、装置5はローカルに保持されるコードを実行してスクリーンショット8をユーザ3に提示する。
スクリーンショット9、参照番号12及び13-スクリーンショット9は実質上スクリーンショット3と視覚的に同一である。しかしシステム1では、ユーザ3の反応は非表示にされているが引き続き活性状態にあるので、投稿コンテンツに対する反応の(及び各種の反応の)総カウントがユーザ3の反応のカウントを含む。更に、参照番号13で示すアイコンをユーザ3がタップする場合、全部の反応の詳細(この実施形態では各種の反応のカウント)が提示される。一部の実施形態では、ユーザ3による反応の変更に応答してカウント情報の更新が装置5に与えられる一方、他の実施形態ではリフレッシュされたカウントデータはユーザ3がアイコン13を選択するときだけ装置5によってシステム1から求められる。
スクリーンショット10、参照番号14-このスクリーンショット内で例示的に示すように、所与の投稿コンテンツについて現在2つの反応があり、そのうちの1つはスクリーンショット4においてユーザ3によって提供されている。そのコメントは投稿者であるユーザ3に対して非表示にされるが、依然としてカウントされる。
スクリーンショット11、参照番号15-スクリーンショット14から進んだ後、ユーザ3は参照番号15のビューに戻る。この例ではユーザ3が反応の状態を通常状態に再び切り替え、反応の種類を「緑色の上向きの親指」の反応の種類に再び切り替える。
スクリーンショット12、参照番号16-スクリーンショット11で選択された反応の状態及び種類が参照番号16内で表示される。前と同じようにユーザ3はタップすることができ、アイコン16上でホールドして反応の状態及び種類に関する更なる選択肢を見る。
スクリーンショット13、参照番号17~20-反応の状態及び種類の変更、又はそれらの何れか1つの変更、を確認した後、装置5は参照番号17内で示す画像をユーザ3に提示する。この画像は、関連する投稿コンテンツに対するユーザの現在の反応(状態及び種類)を表示する。この例では反応の状態が匿名ではなく通常である。前と同じように、ユーザ3は参照番号18で表すアイコンを使用することによって通常の反応の状態を削除し及び/又は除去する能力を有する。通常の反応に適用するためにアイコン9の機能も利用することができ、参照番号19で表すアイコンとしてスクリーンショット13内に表示されている。ユーザ3がアイコン19をタップすると、スクリーンショット6及び7のプロセスが続く。更に、ユーザ3は参照番号20で示すアイコンをタップして所与の投稿コンテンツに対する反応のカウントデータを見ることができる。
スクリーンショット14、参照番号21。スクリーンショット4において適用され、スクリーンショット6及び7で非表示にされ、スクリーンショット14において見られた過去の匿名の反応は、スクリーンショット11において新たに適用された通常の反応が原因で除去されていることに留意すべきである。つまり(反応の種類及び/又は状態に対して関連ユーザが行った最新の変更である)通常状態の反応はカウントデータに含まれ、その反応を提供したユーザ3の識別情報の指示と共に表示される。
【0056】
上記の実施形態では、所与のユーザは任意の所与の時点において投稿コンテンツの所与のアイテムに対して最大1つの反応を提供する能力を有する。但し、その反応は次の特性、つまり存在(つまり反応は削除可能である)、状態、種類、及び可視性のうちの1つ又は複数を変更することを含む1つ又は複数のやり方で時間と共に変更することができる。従ってシステム1によって使用可能にされるコメント、つまり反応はユーザが新たな入力に応答して自分の個々の反応を知り、調節するための動的な環境を与える。つまり反応は静的ではなく、ユーザ間の関係が変化するにつれて変更の余地がある。上記の機能を効果的且つ効率的に届けることを可能にするために、システム1を含む好ましい実施形態は特定のデータ構造及びデータ操作を利用する。それらの例を以下で示す。
【0057】
[記録される反応]
反応の種類の一覧がシステム1によって要求され、この一覧は例えば以下のようにシステム1内で定められる:
【数1】
【0058】
[投稿内の反応の状態]
システム1は反応について以下の状態の種類を利用する:
「reacted」は、ユーザが選択した反応の種類を定める。
「reactionHide」は、反応のプルーフがログインユーザのユーザインタフェース上で視覚的に表示されるかどうか、反応の表示状態を定める。
「ownerReacted」は、投稿の作成者が自分の投稿に反応したかどうか、及び所有者によって選択される反応の種類を定める。
「ownerReactionHide」は、反応のプルーフが投稿作成者のユーザインタフェースのログインインスタンス上で視覚的に表示されるかどうか、投稿作成者の反応の表示状態を定める。
「reactionAnonymous」は、反応が匿名として印付けされているかどうかを定める。匿名として印付けされている場合、ユーザの識別情報が他のユーザへの反応と共に表示されず又はかかる反応に関連付けられない。
【数2】
【0059】
[反応の更新]
関連するユーザが反応を更新できるようにするために、ユーザ及び反応に関する十分な情報を記憶する必要がある。システム1では、ユーザが反応の種類を更新した場合、特定のパラメータが自動でリセットされ、以下のAPIパラメータが利用される:
【数3】
ここで、
「action」は、ユーザが選択した更新された種類の反応を定める。
「hide」は、更新された種類の反応をログインユーザのアカウント上で非表示にすべきかどうかを定める。
「isAnonymous」は、更新された反応が匿名の反応として行われているのかどうかを定める。
【0060】
システム1の動作をよりよく示すために
図3のフローチャートを参照する。このフローチャートの中の各ステップを示すために使用する参照番号1~18について以下で詳述する。
【0061】
ステップ1-行為者(つまりユーザ3)に、投稿コンテンツに対する反応4を提供するための選択肢が提供される。
【0062】
ステップ2-ユーザ3が反応の種類の所定の一覧から反応を選択する。選択すると、装置5は反応の種類をAPIによってシステム1に渡す。反応の種類をシステム1に渡す前、投稿コンテンツに対してユーザ3が過去に反応を投稿しているかどうかをAPIが判定していることが理解されよう。
【0063】
システム1において、反応4を受け付けることに応答し、以下の表に示すテーブル構造に基づいて、反応のためのテーブルを含めるためにデータ22を更新する:
【表1】
【0064】
投稿コンテンツに対してユーザ3が過去に反応を送っているかどうかを判定する際にAPIは以下を実行する:
【数4】
【0065】
ステップ3-投稿コンテンツに関してユーザ3が過去に反応4を送っていない場合、システム1は投稿コンテンツのための新たな反応レコード(データ22)を作成し、その後ステップ6に進む。ステップ3はより詳細には以下を含む:
【数5】
【0066】
ステップ4-ユーザ3が投稿コンテンツに対して過去に反応4を提供している場合、システム1は以下を実行することによって現行の反応の種類を突き止める:
【数6】
【0067】
ステップ5-ここでシステム1は、ユーザ3によって直近に選択された反応が過去に記録された反応と同じかどうかを判定する。直近に選択された反応が過去に記録された反応と同じである場合、何も変更されていないと判定され、システム1はステップ10に進む。しかし、このステップを完全に完了するために、システム1は装置5にデータを返して成功裏の反応が投稿されていることをユーザ3に知らせる。これは現行の非表示の反応をユーザがオーバライドできるようにするために特に有用である。例えばユーザが投稿コンテンツのアイテムを「like」し、「like」の状態を非表示にし、その後戻って同じ投稿コンテンツを「like」する場合、その投稿コンテンツについて直近に選択された反応が更新され、スキップされない。直近に選択された反応と過去に記録された反応とが異なる場合、システム1はステップ6に進む。これを以下で示す:
【数7】
【0068】
ステップ6-新たな反応又は過去の反応と変えられた反応がユーザによって活性化される場合、その投稿の反応を記録する必要がある。投稿の反応の記録はDB2データベースの構造及び以下の命令文を使用してステップ6で行われる。
【数8】
【0069】
投稿の反応が記録された後、システム1によって実装される2つの同時の又は実質的に同時のタスクがある。かかるタスクは、ステップ7を行って反応が匿名状態属性と共に行われたかどうかを判定すること、及びステップ14を行ってユーザの反応の応答を同期しキャッシュすることを含む。
【0070】
ステップ7-ユーザ3は反応が匿名で表示されるのか、又はシステム1の他のユーザに識別されるのかを選ぶ固有の能力を有する。ステップ7で、反応の匿名状態又は識別状態を検討し処理する。ユーザ3はステップ6の前に反応のための匿名状態を選択することができ、匿名状態はステップ6で記録もされることに留意すべきである。ステップ7で、プロセスを完了しユーザ3にデータを返すためにその状態の検討がある。このプロセスは以下を実行することを含む:
【数9】
【0071】
ステップ8-反応が識別される場合、投稿コンテンツの所有者の装置5に通知を送信する。これは投稿コンテンツに新たな反応が行われていることを(典型的にはシステム1のユーザでもある)所有者にアラートするためである。反応を行っているユーザが識別されることを選ぶ場合、所有者はそのユーザの識別情報の指示を(それがハンドル、ユーザ名、アバタ、又は他のアイコンであろうと)見ることができる。このプロセスは、システム1が以下を実行することを含む:
【数10】
【0072】
ステップ9-反応が匿名状態を有する場合、投稿コンテンツの所有者に新たな反応を知らせる通知を送信する。その反応を提供したユーザの識別情報は与えられず、汎用の「匿名ユーザ」タグ又はアイコンが与えられる。このプロセスは以下のように動作するシステム1によって行われる:
【数11】
【0073】
ステップ10-反応4を行ったユーザに最終カウントデータを渡す前に、システム1は関連する投稿コンテンツに対する反応の総数(総カウント、及びそれぞれの反応の種類のカウント)を明らかにする。このプロセスは、関連する投稿コンテンツに対する反応のカウントデータの正確且つ更新された反映をそのユーザに与える。これを実装するために、システム1はキャッシングシステム15に要求を送信し、反応に関する直近のカウントデータを取得する。このプロセスは以下を実行することによって実現される:
【数12】
【0074】
ステップ11-ユーザ3が反応4を投稿すると、そのユーザはシステム1上のユーザアカウント内で反応4を非表示にする選択肢を有する。つまりユーザ3は、自分が反応4を送ったという如何なる視覚的確認も装置5から効果的に除去することができる。既定で、$isHideの値は0である既定の整数値に等しく、$reactオブジェクトに対する非表示属性がないことをもたらす。このプロセスは以下のようにシステム1によって実装される:
【数13】
【0075】
ステップ12-ユーザ3は非表示状態の値を1に変更することができ、かかる変更は反応4の視覚的レコードがシステム1上のユーザのアカウント上で非表示にされることをもたらす。この反応はシステム1上に残り、投稿コンテンツの関連アイテムのカウントデータを計算する際に含まれるが、システム1上のユーザのアカウントから見たとき、投稿コンテンツのアイテムに対してユーザが如何なる反応も行っていないかのように見える。この実施形態では非表示状態を取り消すことができず、投稿コンテンツのアイテムに対して反応4を提供するためにそのログインアカウントが使用されたかどうかを人が視覚的に検出することを効果的に不可能にしている。
【0076】
ステップ11で任意の整数が0と異なる場合、ステップ12において値を1に変換する。それにより$react->hideが実行され、$isHideが1に設定される。
【0077】
ステップ13-ステップ12がユーザによって行われている場合、その更新のレコードが以下のようにシステム1によって記録される:
【数14】
【0078】
上記のコードは反応の「hide」特性をデータベース内に保存するために使用し、それによりユーザがサーバからデータを取得するたび、ログインユーザがその反応を非表示にすることに決めたかどうかを決定するためのこの値をサーバが返す。
【0079】
ステップ14-ステップ6が完了するや否や、結果が非同期プロセスに転送される。記録されている反応に関する待ち時間をユーザが回避できるように、このプロセスが含まれる。複数のユーザが同じ投稿に対して反応を同時に投稿/変更しているとき、このプロセスはデータベースのロックアップもより上手く回避する。システム1の動作がステップ14に進むときまでに一意の反応(ユーザID/投稿ID)レコードがデータベースに既に保存されている。この非同期プロセスは、キャッシュ状態において投稿に対する新たな全部の反応を計算するためのものである。以下のステップ18でasyncUpdatingReactionsのタスクについてより詳細に説明する。大まかに、システム1は以下のように進行する:
【数15】
【0080】
ステップ15-この実施形態では、キャッシュデータが意図的に非常に単純なデータベース構造を有し、
図3に例示的に示されているようにテーブル構造DB3である。ステップ15で関連データをキャッシュし、そのデータはpost_id、反応の種類、及びそれぞれの反応の種類のカウント等の必要最小限の詳細だけを含み、それらの結果をシステム1がユーザに素早く転送できることを確実にする。
【0081】
ステップ16-ユーザ3によって行われる反応又は反応の変更が非同期プロセスによって承認されると、その反応又は変更がかかる反応/変更の待ち行列に追加される。このように待ち行列に追加することは、同時に又はほぼ同時に行われている複数のユーザID/投稿IDをシステム1が規則的に収容することを可能にする。
【0082】
ステップ17で、ステップ16で形成した待ち行列内の各アイテムをシステム1がFIFOベースで処理する。待ち行列内の反応が成功裏に処理され、(ステップ18で)再カウントされるたび、システム1は処理するための待ち行列内の次の未解決の反応を取得する。投稿ごとの投稿の反応に関するデータベースは成功裏に更新されるまで一時的にロックされ、以下のように進行する:
【数16】
【0083】
ステップ17では、
図3に示すデータ構造DB1を使用する。
【0084】
ステップ18-ステップ17が完了すると、ステップ18でシステム1が投稿コンテンツの関連アイテムに対する反応の総カウントを再計算し、新たなデータでキャッシングシステムを更新し、待ち行列内の次のアイテムをステップ17で処理できるようにデータベースのロックを解除する。次いで、キャッシュデータがシステム1によってDB3データベースの構造内に記憶される。このプロセスは、システム1が以下のように動作することを含む:
【数17】
【0085】
好ましい実施形態によって与えられる利点は以下を含む:
・反応が匿名であることを指定するユーザの選択肢と共に、ユーザが投稿コンテンツに対する反応をオンラインソーシャルメディアプラットフォーム上で投稿できるようにすること。
・プラットフォーム上のユーザのアカウント内からユーザ履歴を見る第三者にとって、又はプラットフォーム上の自分の若しくは独自のアカウントを利用する別個のユーザとして反応が検出不能である選択肢と共に、ユーザが投稿コンテンツに対する反応をオンラインソーシャルメディアプラットフォーム上で投稿できるようにすること。
・単一の反応に複数の状態を関連付けられるようにすること。
・反応を投稿するユーザの判断で反応を識別可能又は匿名にできるようにすること。
・反応を投稿するユーザの判断で反応の状態を非表示/検出不能にできるようにすること。
・コメント機能を提供するプラットフォーム上の競合条件に関連する問題を未然に防ぐデータ構造。
・コメントをロードし、投稿データに対するユーザからの要求を満たす際の遅延を減らすこと。
・ソーシャルメディアプラットフォーム上での更なるコメント機能を可能にするデータ構造を提供すること。
・ユーザが新たな入力に基づいて、並びに関係及び理解の変化に応じて反応を更新することができる動的な反応環境。
・投稿コンテンツに対して行われているコメント(反応)に関する、ユーザへのよりリアルタイムに近いデータ。つまり従来技術の典型的な遅延なしに、データ構造及び動作がより積極的なユーザの参加を可能にする。
・よりリアルタイムに近い配信を可能にするやり方で新たな動作を実装できるようにするデータ構造。
【0086】
特記しない限り、以下の解説から明らかなように本明細書の全体を通して「処理する」、「計算する」、「算出する」、「決定する」、「分析する」等の用語を利用する解説は、電子量等の物理量として表されるデータを物理量として同様に表される他のデータに操作及び/又は変換するコンピュータ若しくは計算システム又は同様の電子計算装置の行為及び/又はプロセスを指すことが理解されよう。
【0087】
同様に「プロセッサ」という用語は、例えばレジスタ及び/又はメモリからの電子データを、例えばレジスタ及び/又はメモリ内に記憶され得る他の電子データに変換するように処理する任意の装置又は装置の一部を指し得る。「コンピュータ」、又は「計算機」、又は「計算プラットフォーム」は1つ又は複数のプロセッサを含み得る。
【0088】
本明細書では「データ要素」に言及した。この用語は、テキスト文字若しくはテキストファイル、又は特殊文字を含むテキスト文字列、及びファイルの組み合わせ又はグループ等、単一のデータ要素を表すために使用した。これらの要素の複数及び様々な種類の要素の組み合わせを単一のメッセージ内に含めることができる。但しこれは所与のメッセージ内に含まれる全てのデータ要素が全て一緒に記憶され又は一緒に伝送される必要があることを含意するものではなく、メッセージがどのように記憶され又は伝送されたとしても、組み立てられ又はアクセスされるとき機能全体を提供することを単に含意する。
【0089】
本明細書に記載した方法論は、一実施形態では、プロセッサの1つ又は複数によって実行されるとき、本明細書に記載した方法の少なくとも1つを行う1組の命令を含むコンピュータ可読(機械可読とも呼ぶ)コードを受け入れる1つ又は複数のプロセッサによって行われ得る。取るべき行動を指定する(連続又は非連続の)1組の命令を実行することができる任意のプロセッサが含まれる。従って、一例は1つ又は複数のプロセッサを含む典型的な処理システムである。各プロセッサは、CPU、グラフィック処理装置、及びプログラム可能DSPユニットの1つ又は複数を含み得る。処理システムは、メインRAM、及び/又はスタティックRAM、及び/又はROMを含むメモリサブシステムを更に含み得る。部品間で通信するためのバスサブシステムが含まれ得る。処理システムは更に、ネットワークによって結合されるプロセッサを有する分散処理システムであり得る。処理システムがディスプレイを必要とする場合、かかるディスプレイ、例えば液晶ディスプレイ(LCD)又は陰極線管(CRT)ディスプレイ、が含まれ得る。手動データ入力が必要とされる場合、処理システムは、キーボード等の英数字入力ユニット、マウス等のポインティング制御装置、タッチスクリーン、手で押すことができる1つ又は複数のボタン等のうちの1つ又は複数等の入力装置も含む。本明細書で使用するとき、メモリユニットという用語は、文脈から明らかな場合及び別途明確に示されない限りディスクドライブユニット等のストレージシステムも包含する。一部の構成における処理システムは音声出力装置とネットワークインタフェース装置とを含み得る。従ってメモリサブシステムは、1つ又は複数のプロセッサによって実行されるとき、本明細書に記載の方法の1つ又は複数を行わせるための1組の命令を含むコンピュータ可読コード(例えばソフトウェア)を搬送するコンピュータ可読キャリヤ媒体を含む。本方法が幾つかの要素、例えば幾つかのステップ、を含む場合、かかる要素の如何なる順序付けも特に明記しない限り含意しないことに留意されたい。ソフトウェアはハードディスク内にあることができ、又はコンピュータシステムによるその実行中にRAM及び/又はプロセッサ内に完全に又は少なくとも部分的にあり得る。従って、メモリ及びプロセッサはコンピュータ可読コードを搬送するコンピュータ可読キャリヤ媒体も構成する。
【0090】
更にコンピュータ可読キャリヤ媒体は、コンピュータプログラム製品を形成し又はコンピュータプログラム製品に含まれ得る。
【0091】
代替的実施形態では、1つ又は複数のプロセッサが独立型装置として動作し、又はネットワーク配備で他のプロセッサに接続、例えばネットワーク接続、され得る。1つ又は複数のプロセッサは、サーバユーザネットワーク環境においてサーバ又はユーザマシンの容量内で、又はピアツーピア若しくは分散型ネットワーク環境においてピアマシンとして動作し得る。1つ又は複数のプロセッサは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、セルラ電話、ウェブ器具、ネットワークルータ、スマートフォン、スイッチ若しくはブリッジ、又はそのマシンによって取られる行為を指定する(連続又は非連続の)1組の命令を実行することができる任意のマシンを形成し得る。
【0092】
本明細書に記載した方法のそれぞれの一実施形態は、1組の命令、例えば1つ又は複数のプロセッサ、例えばウェブサーバ構成の一部である1つ又は複数のプロセッサ、上で実行するためのコンピュータプログラムを搬送するコンピュータ可読キャリヤ媒体の形を取る。従って、当業者によって理解されるように、本発明の実施形態は方法として、専用機器等の機器として、データ処理システム等の機器として、又はコンピュータ可読キャリヤ媒体、例えばコンピュータプログラム製品、として具現化され得る。コンピュータ可読キャリヤ媒体は、1つ又は複数のプロセッサ上で実行されるとき、1つ又は複数のプロセッサに方法を実装させる1組の命令を含むコンピュータ可読コードを搬送する。従って本発明の態様は、方法、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェアの側面とハードウェアの側面とを組み合わせる実施形態の形を取り得る。更に本発明は、その中に具現化されたコンピュータ可読プログラムコードを搬送するキャリヤ媒体(例えばコンピュータ可読記憶媒体上のコンピュータプログラム製品)の形を取り得る。
【0093】
一実施形態では、記憶域内に記憶される命令(コンピュータ可読コード)を実行する処理(即ちコンピュータ)システムの適切なプロセッサ(又は複数のプロセッサ)によって解説した方法のステップが行われることが理解されよう。本発明は、如何なる特定の実装形態又はプログラミング技法にも限定されず、本発明は本明細書に記載の機能を実装するための任意の適切な技法を使用して実装できることも理解されよう。本発明は如何なる特定のプログラミング言語又はオペレーティングシステムにも限定されない。
【0094】
本発明の例示的実施形態についての上記の説明では、本開示を簡素化し、本発明の様々な態様の1つ又は複数の理解を助ける目的で本発明の様々な特徴を単一の実施形態、図面、又はその説明にまとめている場合があることを理解すべきである。但しこの開示方法は、特許請求の範囲に記載する本発明が、それぞれの請求項の中で明確に列挙されるよりも多くの特徴を必要とするという意図を反映するものだと解釈すべきではない。むしろ、添付の特許請求の範囲が反映するように、本発明の態様は上記で開示した単一の実施形態の全ての特徴よりも少ないものにある。従って、詳細な説明に続く特許請求の範囲をこの詳細な説明に明示的に援用し、各請求項は本発明の別個の実施形態として独立している。
【0095】
更に当業者によって理解されるように、本明細書に記載した一部の実施形態は、他の実施形態に含まれる特徴の幾つかを含むがそれ以外の特徴を含まず、様々な実施形態の特徴の組み合わせが本発明の範囲に含まれ、様々な実施形態を形成することが意図される。例えば添付の特許請求の範囲では、特許請求の範囲に記載する実施形態の何れも任意の組み合わせで使用することができる。
【0096】
更に、実施形態の一部はコンピュータシステムのプロセッサによって又は機能を実行する他の手段によって実装され得る方法として又は方法の要素の組み合わせとして本明細書に記載した。従って、かかる方法又は方法の要素を実行するのに必要な命令を有するプロセッサは方法又は方法の要素を実行するための手段を形成する。更に、機器の実施形態について本明細書に記載した要素は、本発明を実行する目的で要素によって行われる機能を実行するための手段の例である。
【0097】
本明細書で示した説明では多くの具体的詳細を記載した。しかし、本発明の実施形態はこれらの具体的詳細なしに実践され得ることが理解されよう。他の例では、本明細書の理解を不明瞭にしないために周知の方法、構造、及び技法は詳細には示していない。
【0098】
同様に、特許請求の範囲で使用するとき、「結合」又は「接続」という用語は、直接接続のみに限定されると解釈されるべきではないことに留意すべきである。「結合」及び「接続」という用語はそれらの派生語と共に使用され得る。これらの用語は互いの同意語として意図されていないことを理解すべきである。従って「a device A coupled to a device B(装置Bに結合された装置A)」という表現の範囲は、装置Aの出力が装置Bの入力に直接接続される装置又はシステムに限定されるべきでない。かかる表現はAの出力とBの入力との間に他の装置又は手段を含む経路であり得る経路が存在することを意味する。「結合」又は「接続」は2つ以上の要素が直接物理的に接触すること若しくは直接電気的に接触すること、又は2つ以上の要素が互いに直接接触していないが、依然として互いに協働し又は相互作用することを意味し得る。
【0099】
従って、本発明の好ましい実施形態だと考えられる内容を説明してきたが、本発明の趣旨から逸脱することなく他の及び更なる修正をそれらの実施形態に加えることができること、並びにそのような全ての変更及び修正が本発明の範囲に含まれると主張するつもりであることを当業者なら認識されよう。例えば上記で示した任意の論式は使用され得る手続きを単に表している。機能はブロック図に追加し又はブロック図から削除することができ、操作は機能ブロック間で交換することができる。ステップは、本発明の範囲の中で記載した方法に追加し又はかかる方法から削除することができる。
【国際調査報告】