IP Library › Granted Patent US 12,242,492
Granted Patent B2
US 12,242,492 · App. 18/335,221 · Granted Mar 4, 2025

Intelligently identifying and grouping relevant files and providing an event representation for files

Inventors: Madeline Schuster Kleiner (Mercer Island, WA); Bernhard Kohlmeier (Seattle, WA); Jon Meling (Tromsø, NO); Jan Heier Johansen (Tromsø, NO); Vegar Skjærven Wang (Tromsø, NO); Jignesh Shah (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F16/24578G06F16/13G06F16/156G06F16/1734
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,242,492
App. No.
18/335,221
Filed
Jun 15, 2023
Granted
Mar 4, 2025
Kind
B2
Art Unit
2168
USPC
707/728
Abstract

A method and system for intelligently organizing one or more groups of relevant files may include retrieving a user data signal including user-specific data, analyzing the user data signal to identify a parameter relating to file relevance, identifying one or more relevant files in a storage medium based on the parameter at least one of a user category property, a lifecycle stage property, a relevant activity property, or an activity level property of one or more files in the storage medium, organizing the one or more relevant file into the one or more groups of relevant files, and providing for display data relating to the one or more groups of relevant files.

Claims (59)

1. A data processing system comprising:

a processor; and

a memory in communication with the processor, the memory comprising executable instructions that, when executed by, the processor alone or in combination with other processors, cause the data processing system to perform functions of:

receiving a request to display an event timeline of actions performed on one file, the request being received via a user interface element of an application;

upon receiving the request, retrieving a record of user activity on the one file over time from a storage medium, the record of user activity comprising a plurality of properties including a user category property specifying one of a number of categories that are assigned to users who have accessed the one file, the plurality of properties further including at least one of a user associated with the user category property, a time associated with the user category property, or a relevant activity performed on the one file;

analyzing the plurality of properties to identify a plurality of relevant events performed on the one file, each of the plurality of relevant events being identified at least in part based on an action performed by one of one or more users on the one file;

generating event data for the plurality of relevant events; and

providing the generated event data for displaying the event timeline for the one file on a user interface of a computing device,

wherein the user category property is determined by:

receiving data relating to a plurality of actions performed by the one or more users on the one file within a specific time period; and

analyzing the data to identify a category of user activity based on a type of activity performed on the one file during the specific time period, and

wherein the event timeline displays a chronological timeline of relevant events performed on the one file and identification information about the user who performed an action related to each relevant event on the one file.

2. The data processing system of claim 1 , wherein the instructions, when executed by the processor, further cause the data processing system to perform functions of:

determining if the request is for a user-centric event timeline;

responsive to determining that the request is for a user-centric event timeline, analyzing the plurality of properties to identify one or more properties that are associated with a first user, the first user being a requesting user;

analyzing the one or more properties associated with the requesting user to identify the relevant events performed by the requesting user; and

generating event data for one or more relevant events performed by the requesting user.

3. The data processing system of claim 1 , wherein the plurality of relevant events include a subset of events performed on the one file.

4. The data processing system of claim 1 , wherein the event timeline is one of a user-centric event timeline or a file-centric event timeline.

5. The data processing system of claim 1 , wherein the generated event data provided for displaying on the event timeline includes information about a time at which each relevant event occurred.

6. The data processing system of claim 1 , wherein the information about the time includes a date and time.

7. The data processing system of claim 1 , wherein the generated event data provided for presenting on the event timeline includes information about a relationship of the user who performed the action related to each relevant event to a requesting user.

8. A method for displaying an event timeline for one file comprising:

retrieving a record of user activity on the one file over time from a storage medium, the record of user activity comprising a plurality of properties including a user category property specifying one of a number of categories that are assigned to users who have accessed the one file, the plurality of properties further including at least one of a user associated with the user category property, a time associated with the user category property, or a relevant activity performed on the one file;

analyzing the plurality of properties to identify a plurality of relevant events performed on the one file, each of the plurality of relevant events being identified at least in part based on an action performed by one of one or more users on the one file;

generating event data for the plurality of relevant events; and

providing the generated event data for displaying the event timeline for the one file on a user interface of a computing device,

wherein the user category property is determined by:

receiving data relating to a plurality of actions performed by the one or more users on the one file within a specific time period; and

analyzing the data to identify a category of user activity based on a type of activity performed on the one file during the specific time period, and

wherein the event timeline displays a chronological timeline of relevant events performed on the one file and identification information about the user who performed an action related to each relevant event on the one file.

9. The method of claim 8 , further comprising receiving a request to display the event timeline of actions performed on the one file.

10. The method of claim 9 , further comprising:

determining if the request is for a user-centric event timeline;

responsive to determining that the request is for a user-centric event timeline, analyzing the plurality of properties to identify one or more properties that are associated with a first user, the first user being a requesting user;

analyzing the one or more properties associated with the requesting user to identify the relevant events performed by the requesting user; and

generating event data for one or more relevant events performed by the requesting user.

11. The method of claim 8 , wherein the plurality of relevant events include a subset of events performed on the one file.

12. The method of claim 8 , wherein the event timeline is one of a user-centric event timeline or a file-centric event timeline.

13. The method of claim 8 , wherein the generated event data provided for displaying on the event timeline includes information about a time at which each relevant event occurred.

14. The method of claim 8 , wherein the information about the time includes a date and time.

15. A non-transitory computer readable medium on which are stored instructions that, when executed by an operating system, cause a programmable device to perform operations of:

retrieving a record of user activity on one particular file over time from a storage medium, the record of user activity including a user category property specifying one of a number of categories that are assigned to users who have accessed the one file, a plurality of properties further including at least one of a user associated with the user category property, a time associated with the user category property, or a relevant activity performed on the one file;

analyzing the plurality of properties to identify a plurality of relevant events performed on the one file, each of the plurality of relevant events being identified at least in part based on a task performed by one of a plurality of users on the one file;

generating event data for at least one of the plurality of relevant events; and

providing the generated event data for displaying an event timeline for the one file on a user interface of a computing device,

wherein the user category property is determined by:

receiving data relating to a plurality of activities performed by the user or one or more users on each of the one file within a specific time period; and

analyzing the data to identify a category of user activity based on a type of activity performed on the one file during the specific time period, and

wherein the event timeline displays a chronological timeline of actions performed on the one file and identification information about the user who performed each action on the one file.

16. The non-transitory computer readable medium of claim 15 , wherein the instructions when executed by the operating system further cause the programmable device to perform operations of receiving a request to display the event timeline of actions performed on the one file.

17. The non-transitory computer readable medium of claim 16 , wherein the instructions when executed by the operating system further cause the programmable device to perform operations of:

determining if the request is for a user-centric event timeline;

responsive to determining that the request is for a user-centric event timeline, analyzing the plurality of properties to identify one or more properties that are associated with a first user, the first user being a requesting user;

analyzing the one or more properties associated with the requesting user to identify the relevant events performed by the requesting user; and

generating event data for one or more relevant events performed by the requesting user.

18. The non-transitory computer readable medium of claim 15 , wherein the plurality of relevant events include a subset of events performed on the one file.

19. The non-transitory computer readable medium of claim 15 , wherein the event timeline is one of a user-centric event timeline or a file-centric event timeline.

20. The non-transitory computer readable medium of claim 15 , wherein the generated event data provided for displaying on the event timeline includes information about a time at which each relevant event occurred.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2023
From: KLEINER, MADELINE SCHUSTER; KOHLMEIER, BERNHARD; MELING, JON; JOHANSEN, JAN HEIER; WANG, VEGAR SKJÆRVEN; SHAH, JIGNESH
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 063958/0065 →
Continuity (2)
Continuation 16881830 · May 22, 2020
Related Publication 20230325395A1 · Oct 12, 2023
References Cited (20)
US 8924375B1 · Bilsborough · 2014 [cited by applicant]
US 11321360B2 · Kohlmeier et al. · 2022 [cited by applicant]
US 11328116B2 · Meling et al. · 2022 [cited by applicant]
US 11392594B2 · Helvik et al. · 2022 [cited by applicant]
US 11522924B2 · Wang et al. · 2022 [cited by applicant]
US 20070088690A1 · Wiggen et al. · 2007 [cited by applicant]
US 20070265994A1 · Ueda · 2007 [cited by applicant]
US 20110302113A1 · Smith · 2011 [cited by examiner]
US 20180337968A1 · Faulkner · 2018 [cited by examiner]
US 20180352091A1 · Puri et al. · 2018 [cited by applicant]
US 20220222279A1 · Kohlmeier et al. · 2022 [cited by applicant]
US 20220284031A1 · Helvik et al. · 2022 [cited by applicant]
US 20220405612A1 · Kleiner et al. · 2022 [cited by applicant]
“Non Final Office Action Issued in U.S. Appl. No. 17/709,948”, Mailed Date: Jun. 30, 2023, 5 Pages. [cited by applicant]
“Office Action Issued in European Patent Application No. 20830477.4”, Mailed Date: Sep. 18, 2023, 6 Pages. [cited by applicant]
“Notice of Allowance Issued in U.S. Appl. No. 17/827,324”, Mailed Date: Jul. 26, 2023, 9 Pages. [cited by applicant]
“Notice of Allowance Issued in U.S. Appl. No. 17/709,948”, Mailed Date: Oct. 18, 2023, 7 Pages. [cited by applicant]
“Office Action Issued in European Patent Application No. 21718692.3”, Mailed Date: Nov. 29, 2023, 5 Pages. [cited by applicant]
Decision to refuse a European Patent application Received for European Application No. 21718692.3, mailed on Jul. 18, 2024, 9 pages. [cited by applicant]
Non-Final Office Action mailed on Aug. 12, 2024, in U.S. Appl. No. 17/349,157, 16 pages. [cited by applicant]