IP Library Granted Patent US 12,561,391
Granted Patent B2
US 12,561,391 · App. 17/711,927 · Granted Feb 24, 2026

Methods and systems for presenting user interfaces to render multiple documents

Inventors: Joseph Keslin (Munster, IN); Karl Knoernschild (La Grange, IL)
Assignee: RELATIVITY ODA LLC
G06F16/9574G06F3/0482G06F3/0484G06F3/0485G06F16/338G06F16/34G06F16/358G06F16/93G06F16/9577G06F16/986G06F40/103G06F40/106G06F40/123G06F40/131G06Q50/184G06V30/1444G06V30/414G06F40/171G06F2203/04803
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,561,391
App. No.
17/711,927
Granted
Feb 24, 2026
Kind
B2
Abstract

A non-transitory computer readable medium containing program instructions that when executed, cause a computer to: generate a graphical user interface; process object model(s) to generate document model(s); and process the document model(s) to generate rendered document(s). A computing system comprising one or more processors; and one or more memories storing instructions that, when executed by the one or more processors, cause the computing system to: generate a graphical user interface; process object model(s) to generate document model(s); and process the document model(s) to generate rendered document(s). A computer-implemented method for improving rendering of multiple documents via one or more document models, the method comprising: generating a graphical user interface; processing object model(s) to generate document model(s); and processing the document model(s) to generate rendered document(s).

Claims (52)

1 . A non-transitory computer readable medium comprising program instructions that when executed, cause a computer to:

generate, by one or more processors, a graphical user interface, wherein the user interface includes a plurality of viewports each configured to concurrently render a respective one of a plurality of documents, wherein the plurality of viewports includes a first viewport and a second viewport;

determine, by the one or more processors and using a trained machine learning model, one or more predicted user interactions with the graphical user interface;

process a plurality of object models to generate a plurality of document models, each corresponding to a respective one of the plurality of documents, wherein:

the plurality of object models is associated with the one or more predicted user interactions, and

the plurality of document models includes a first document model and a second document model;

subsequent to generating the first document model and the second document model, detect an event indicating that the first document model is to be rendered via the first viewport and the second document model is to be rendered via the second viewport; and

responsive to detecting the event, process the first document model and the second document model to concurrently render the first document model via the first viewport and the second document model via the second viewport.

2 . The non-transitory computer readable medium of claim 1 , containing further program instructions that when executed, cause computer to:

retrieve the plurality of object models from a remote computing device, wherein each object model corresponds to a respective one of the plurality of documents.

3 . The non-transitory computer readable medium of claim 1 , containing further program instructions that when executed, cause a computer to:

style the plurality of viewports in a side-by-side view.

4 . The non-transitory computer readable medium of claim 1 , containing further program instructions that when executed, cause a computer to:

generate a viewport for presenting one or both of (i) a rendering of a relativity short message format (RSMF) file, and (ii) a rendering of a timeline document view.

5 . The non-transitory computer readable medium of claim 1 , containing further program instructions that when executed, cause a computer to:

analyze a difference between the first and second document models, wherein the first document models and the second document model correspond to a first document and a second document in the plurality of documents and the second document is a modified version of the first document;

render, based on the difference, the first document model in the first viewport and the second document model in the second viewport; and

cause an indication of the difference between the first and second document models to be presented in the user interface.

6 . The non-transitory computer readable medium of claim 1 , containing further program instructions that when executed, cause a computer to:

cause the first and second viewports to concurrently display a plurality of different respective renderings of the first and second document models, wherein the first document model corresponds to a first document being responsive to a first search and the second document model corresponds to the first document being responsive to a second search.

7 . The non-transitory computer readable medium of claim 6 , wherein the plurality of different respective renderings of the first document model correspond to a thumbnail view of a first document and the second document model correspond to a main view of a second document.

8 . A computing system comprising one or more processors; and one or more memories storing instructions that, when executed by the one or more processors, cause the computing system to:

generate, by one or more processors, a graphical user interface, wherein the user interface includes a plurality of viewports each configured to concurrently render a respective one of a plurality of documents, wherein the plurality of viewports includes a first viewport and a second viewport;

determine, by the one or more processors and using a trained machine learning model, one or more predicted user interactions with the graphical user interface;

process a plurality of object models to generate a plurality of document models, each corresponding to a respective one of the plurality of documents, wherein:

the plurality of object models is associated with the one or more predicted user interactions, and

the plurality of document models includes a first document model and a second document model;

subsequent to generating the first document model and the second document model, detect an event indicating that the first document model is to be rendered via the first viewport and the second document model is to be rendered via the second viewport; and

responsive to detecting the event, process the first document model and the second document model to concurrently render the first document model via the first viewport and the second document model via the second viewport.

9 . The computing system of claim 8 , the one or more memories including further instructions that, when executed by the one or more processors, cause the computing system to:

retrieve the plurality of object models from a remote computing device, wherein each object model corresponds to a respective one of the plurality of documents.

10 . The computing system of claim 8 , the one or more memories including further instructions that, when executed by the one or more processors, cause the computing system to:

style the plurality of viewports in a side-by-side view.

11 . The computing system of claim 8 , the one or more memories including further instructions that, when executed by the one or more processors, cause the computing system to:

generate a viewport for presenting one or both of (i) a rendering of a relativity short message format (RSMF) file, and generate a viewport for rendering a timeline document view.

12 . The computing system of claim 8 , the one or more memories including further instructions that, when executed by the one or more processors, cause the computing system to:

analyze a difference between the first and second document models, wherein the first document models and the second document model correspond to a first document and a second document in the plurality of documents and the second document is a modified version of the first document;

render, based on the difference, the first document model in the first viewport and the second document model in the second viewport; and

cause an indication of the difference between the first and second document models to be presented in the user interface.

13 . The computing system of claim 8 , the one or more memories including further instructions that, when executed by the one or more processors, cause the computing system to:

cause the first and second viewports to concurrently display a plurality of different respective renderings of the first and second document models, wherein the first document model corresponds to a first document being responsive to a first search and the second document model corresponds to the first document being responsive to a second search.

14 . The computing system of claim 13 , wherein the plurality of different respective renderings of the first document model correspond to a thumbnail view of a first document and the second document model correspond to a main view of a second document.

15 . A computer-implemented method for improving rendering of multiple documents via one or more document models, the method comprising:

generating, via one or more processors, a graphical user interface, wherein the user interface includes a plurality of viewports each configured to concurrently render a respective one of a plurality of documents, wherein the plurality of viewports includes a first viewport and a second viewport;

determining, by the one or more processors and using a trained machine learning model, one or more predicted user interactions with the graphical user interface;

processing a plurality of object models to generate a plurality of document models, each corresponding to a respective one of the plurality of documents, wherein:

the plurality of object models is associated with the one or more predicted user interactions, and

the plurality of document models includes a first document model and a second document model;

subsequent to generating the first document model and the second document model, detecting an event indicating that the first document model is to be rendered via the first viewport and the second document model is to be rendered via the second viewport; and

responsive to detecting the event, processing the first document model and the second document model to concurrently render the first document model via the first viewport and the second document model via the second viewport.

16 . The computer-implemented method of claim 15 , further comprising:

retrieving the plurality of object models from a remote computing device, wherein each object model corresponds to a respective one of the plurality of documents.

Assignments (2)
SECURITY INTEREST Recorded Jan 30, 2026
From: RELATIVITY ODA LLC; TEXT IQ, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 074537/0402 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2022
From: KESLIN, JOSEPH; KNOERNSCHILD, KARL
To: RELATIVITY ODA LLC
Reel/Frame 059558/0709 →
Continuity (2)
Provisional Application 63170111 · Apr 2, 2021
Related Publication 20220318287A1 · Oct 6, 2022
References Cited (118)
US 6098064A · Pirolli et al. · 2000 [cited by applicant]
US 6453319B1 · Mattis · 2002 [cited by examiner]
US 7747749B1 · Erikson · 2010 [cited by examiner]
US 8346563B1 · Hjelm · 2013 [cited by examiner]
US 8429521B2 · Lloyd · 2013 [cited by examiner]
US 8438474B1 · Lloyd · 2013 [cited by applicant]
US 8453048B2 · Holt · 2013 [cited by examiner]
US 8943395B2 · Carlen · 2015 [cited by examiner]
US 9020890B2 · Kottomtharayil et al. · 2015 [cited by applicant]
US 9021352B2 · Goel · 2015 [cited by examiner]
US 9178934B1 · Kolam · 2015 [cited by examiner]
US 9269053B2 · Naslund et al. · 2016 [cited by applicant]
US 9307007B2 · Kapadia et al. · 2016 [cited by applicant]
US 9582600B1 · Killian · 2017 [cited by examiner]
US 9626343B2 · Zhang · 2017 [cited by examiner]
US 9792266B1 · Armstrong · 2017 [cited by examiner]
US 9799131B1 · Demiralp · 2017 [cited by examiner]
US 9898446B2 · Weber et al. · 2018 [cited by applicant]
US 9940396B1 · Willhoit · 2018 [cited by examiner]
US 10157184B2 · Liu et al. · 2018 [cited by applicant]
US 10185782B2 · Decker · 2019 [cited by examiner]
US 10353960B1 · Hall et al. · 2019 [cited by applicant]
US 10614033B1 · Rothschilds · 2020 [cited by examiner]
US 10630797B2 · Goel · 2020 [cited by examiner]
US 10868881B1 · Chang · 2020 [cited by examiner]
US 10984000B2 · Bedrax-Weiss et al. · 2021 [cited by applicant]
US 11157505B2 · Gutirrez et al. · 2021 [cited by applicant]
US 11238210B2 · Ziraknejad et al. · 2022 [cited by applicant]
US 11438442B1 · Polehn et al. · 2022 [cited by applicant]
US 11727190B1 · Hahn · 2023 [cited by examiner]
US 11734498B1 · Shenk · 2023 [cited by examiner]
US 11741517B1 · Eidam · 2023 [cited by examiner]
US 20020015042A1 · Robotham · 2002 [cited by examiner]
US 20020147895A1 · Glance et al. · 2002 [cited by applicant]
US 20020165925A1 · Hamilton et al. · 2002 [cited by applicant]
US 20030005038A1 · Codella et al. · 2003 [cited by applicant]
US 20030179230A1 · Seidman · 2003 [cited by examiner]
US 20030184585A1 · Lin · 2003 [cited by examiner]
US 20040073867A1 · Kausik et al. · 2004 [cited by applicant]
US 20040239681A1 · Robotham · 2004 [cited by examiner]
US 20050198353A1 · Zmrzli · 2005 [cited by examiner]
US 20060041521A1 · Oral et al. · 2006 [cited by applicant]
US 20060047804A1 · Fredricksen et al. · 2006 [cited by applicant]
US 20060155728A1 · Bosarge · 2006 [cited by applicant]
US 20070112973A1 · Harris et al. · 2007 [cited by applicant]
US 20070260971A1 · Rivas · 2007 [cited by examiner]
US 20080239365A1 · Salgado et al. · 2008 [cited by applicant]
US 20080288729A1 · Goel · 2008 [cited by examiner]
US 20090006329A1 · Cong et al. · 2009 [cited by applicant]
US 20100162126A1 · Donaldson · 2010 [cited by examiner]
US 20100287028A1 · Hauser · 2010 [cited by examiner]
US 20100318538A1 · Wyman et al. · 2010 [cited by applicant]
US 20110145287A1 · Jiang · 2011 [cited by examiner]
US 20110252304A1 · Lemonik · 2011 [cited by examiner]
US 20120011430A1 · Parker · 2012 [cited by examiner]
US 20130067170A1 · Lam · 2013 [cited by applicant]
US 20130219256A1 · Lloyd et al. · 2013 [cited by applicant]
US 20130222244A1 · Mak · 2013 [cited by examiner]
US 20130254653A1 · Holt · 2013 [cited by examiner]
US 20130262386A1 · Kottomtharayil et al. · 2013 [cited by applicant]
US 20130262410A1 · Liu et al. · 2013 [cited by applicant]
US 20130268260A1 · Lundberg · 2013 [cited by examiner]
US 20130304798A1 · Chang · 2013 [cited by examiner]
US 20140108909A1 · Geelnard · 2014 [cited by examiner]
US 20140281918A1 · Wei · 2014 [cited by examiner]
US 20140372511A1 · Kapadia · 2014 [cited by examiner]
US 20150007108A1 · Ozcelik · 2015 [cited by applicant]
US 20150066940A1 · Fernandes et al. · 2015 [cited by applicant]
US 20150088970A1 · Wei · 2015 [cited by examiner]
US 20150089352A1 · Conboy · 2015 [cited by examiner]
US 20150154192A1 · Lysne · 2015 [cited by examiner]
US 20150193413A1 · Meschkat · 2015 [cited by applicant]
US 20150242543A1 · Bailly · 2015 [cited by examiner]
US 20150278172A1 · Tupil · 2015 [cited by examiner]
US 20150339050A1 · Vong · 2015 [cited by applicant]
US 20150370445A1 · Wang · 2015 [cited by examiner]
US 20160335746A1 · Loke · 2016 [cited by applicant]
US 20160357366A1 · Migos · 2016 [cited by examiner]
US 20170031873A1 · Levi · 2017 [cited by examiner]
US 20170048319A1 · Straub · 2017 [cited by examiner]
US 20170053623A1 · Purayil · 2017 [cited by examiner]
US 20170060812A1 · Williams et al. · 2017 [cited by applicant]
US 20170083508A1 · Dixon et al. · 2017 [cited by applicant]
US 20170132530A1 · Puzicha et al. · 2017 [cited by applicant]
US 20170199850A1 · Mishra · 2017 [cited by examiner]
US 20170235827A1 · Bar-Or et al. · 2017 [cited by applicant]
US 20170269816A1 · Bradley · 2017 [cited by examiner]
US 20180081503A1 · Green et al. · 2018 [cited by applicant]
US 20180322106A1 · Roks · 2018 [cited by applicant]
US 20190005265A1 · Panchapakesan et al. · 2019 [cited by applicant]
US 20190005616A1 · De et al. · 2019 [cited by applicant]
US 20190079946A1 · Li · 2019 [cited by examiner]
US 20190320222A1 · Bertsch · 2019 [cited by examiner]
US 20190325031A1 · Puzicha · 2019 [cited by applicant]
US 20190327324A1 · Buffone · 2019 [cited by examiner]
US 20200026768A1 · Puzicha et al. · 2020 [cited by applicant]
US 20200081692A1 · Multerer · 2020 [cited by examiner]
US 20200174755A1 · Rose et al. · 2020 [cited by applicant]
US 20200174757A1 · Rose et al. · 2020 [cited by applicant]
US 20200226195A1 · Ziraknejad et al. · 2020 [cited by applicant]
US 20210056233A1 · Camery · 2021 [cited by applicant]
US 20210149899A1 · Gutirrez et al. · 2021 [cited by applicant]
US 20210365504A1 · Kuehne et al. · 2021 [cited by applicant]
US 20220043880A1 · Yoon et al. · 2022 [cited by applicant]
US 20220158978A1 · Shribman · 2022 [cited by examiner]
US 20220237234A1 · Ahmed et al. · 2022 [cited by applicant]
US 20220269738A1 · Stone · 2022 [cited by examiner]
US 20220309037A1 · Gutierrez et al. · 2022 [cited by applicant]
US 20220334809A1 · Stone · 2022 [cited by examiner]
US 20230041844A1 · Feng et al. · 2023 [cited by applicant]
US 20230195300A1 · Matlin · 2023 [cited by examiner]
US 20240054104A2 · Gutierrez et al. · 2024 [cited by applicant]
US 20240281487A1 · Bathwal · 2024 [cited by examiner]
Mozilla.org “Search with the Firefox address bar” Dec. 3, 2020, pp. 1-6 https://web.archive.org/web/20201203211123/https://support.mozilla.org/en-US/kb/search-firefox-address-bar) as available Dec. 3, 2020 (Year: 2020). [cited by applicant]
“Would a 5ms response affect my gaming experience,” by r/pcmasterrace downloaded from the Internet at: <https://www.reddit.com/r/pcmasterrace/comments/42ompq/would_a_5ms_response_affect_my_gaming_experience/> as of at l… [cited by applicant]
Grechanik et al. “Redacting sensitive information in software artifacts,” Proceedings of the 22nd International Conference on Program Comprehension 2014. [cited by applicant]
Pratheeka et al., Sanitization of medical documents using medical support system, 2014 International Conference on Recent Trends in Information Technology (IEEE)(2014). [cited by applicant]
Woods et al., Redacting private and sensitive information in born-digital collections, Archiving Conference, vol. 12, Society for Imaging Science and Technology (2015). [cited by applicant]