IP Library Granted Patent US 12,475,248
Granted Patent B1
US 12,475,248 · App. 18/665,921 · Granted Nov 18, 2025

Consolidating a source workspace and a target workspace into a single workspace

Inventors: Ron Yehoshua (Oakland, CA); Birkan Icacan (San Francisco, CA); Vicky Wenqi Zhang (New York, NY); Peiyao Chen (New York City, NY); Cristina Lozano (Brooklyn, NY); Marissa Jessica Lafontant Felix (Brooklyn, NY)
Assignee: Notion Labs, Inc.
G06F21/6218
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,475,248
App. No.
18/665,921
Granted
Nov 18, 2025
Kind
B1
Abstract

The system obtains an indication to consolidate a source node and a target node. The source node is associated with a hierarchy of multiple source records arranged in multiple levels. The source record and target record are associated with a source permission and target permission, respectively. The system creates a copy of the hierarchy of the multiple source records, where the copy is a child of the target node. The system determines whether the target permission is more restrictive than the source permission. If the target permission is more restrictive, the system sets a permission associated with the copy to the target permission; otherwise, the system sets the permission associated with the copy to the source permission.

Claims (139)

1 . A non-transitory, computer-readable storage medium comprising instructions recorded thereon, wherein the instructions, when executed by at least one data processor of a system, cause the system to:

obtain an indication to consolidate a source workspace and a target workspace,

wherein the source workspace is associated with a hierarchy of multiple source records arranged in multiple levels,

wherein a source record among the multiple source records includes content,

wherein the source record is associated with a source permission defining a first user and a first access to the source record associated with the first user, and

wherein the target workspace is associated with a target permission defining a second user and a second access associated with the target workspace;

prevent modifications to the source workspace;

create a copy of the hierarchy of the multiple source records including the content,

wherein the copy of the hierarchy of the multiple source records is a child of the target workspace;

determine whether the target permission is more restrictive than the source permission;

upon determining that the target permission is more restrictive than the source permission, set a permission associated with the copy of the hierarchy of the multiple source records to the target permission;

upon determining that the source permission is more restrictive than the target permission, set the permission associated with the copy of the hierarchy of the multiple source records to the source permission; and

upon expiration of a predetermined amount of time, delete the source workspace.

2 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs;

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

create the copy of the hierarchy of the multiple source records,

wherein the copy of the hierarchy of the multiple source records includes the first multiplicity of unique IDs; and

replace the first multiplicity of unique IDs with the second multiplicity of unique IDs based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, thereby removing all references to the source workspace.

3 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

determine a number of records in the hierarchy of multiple source records;

upon creating the copy of the hierarchy of the multiple source records, determine a number of records in the copy of the hierarchy of the multiple source records;

determine whether there is a difference between the number of records in the hierarchy of multiple source records and the number of records in the copy of the hierarchy of the multiple source records; and

upon determining that there is the difference, generate an indication of the difference.

4 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs; and

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs.

5 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

obtain a first preference associated with the first user associated with the source workspace,

wherein the first preference indicates a bookmarked record included in the source workspace;

create a copy of the bookmarked record in the copy of the hierarchy of the multiple source records; and

enable the first user to easily access the copy of the bookmarked record in the target workspace by creating a bookmark to the copy of the bookmarked record.

6 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs; and

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

obtain a bookmark to the source record; and

based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, update the bookmark to the source record to point to a copy of the source record included in the copy of the hierarchy of the multiple source records.

7 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:

until completing a creation of the copy of the hierarchy of the multiple source records within the target workspace, make a partial copy of the hierarchy of the multiple source records invisible to a user of the target workspace by marking a record in the partial copy of the hierarchy of the multiple source records as trash; and

upon completing the creation of the copy of the hierarchy of the multiple source records within the target workspace, make the copy of the hierarchy of the multiple source records visible by removing the trash mark from the record.

8 . A method comprising:

obtaining an indication to consolidate a source node and a target node,

wherein the source node is associated with a hierarchy of multiple source records arranged in multiple levels,

wherein a source record among the multiple source records is associated with a source permission, and

wherein the target node is associated with a target permission;

creating a copy of the hierarchy of the multiple source records,

wherein the copy of the hierarchy of the multiple source records is a child of the target node;

determining whether the target permission is more restrictive than the source permission;

upon determining that the target permission is more restrictive than the source permission, setting a permission associated with the copy of the hierarchy of the multiple source records to the target permission; and

upon determining that the source permission is more restrictive than the target permission, setting the permission associated with the copy of the hierarchy of the multiple source records to the source permission.

9 . The method of claim 8 , comprising:

prior to creating the copy of the hierarchy of the multiple source records, preventing modifications to the source node;

determining a number of records in the hierarchy of multiple source records;

upon creating the copy of the hierarchy of the multiple source records, determining a number of records in the copy of the hierarchy of the multiple source records;

determining whether there is a difference between the number of records in the hierarchy of multiple source records and the number of records in the copy of the hierarchy of the multiple source records; and

upon determining that there is the difference, generate an indication of the difference.

10 . The method of claim 8 , comprising:

obtaining a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generating a second multiplicity of unique IDs;

generating a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

creating the copy of the hierarchy of the multiple source records,

wherein the copy of the hierarchy of the multiple source records includes the first multiplicity of unique IDs; and

replacing the first multiplicity of unique IDs with the second multiplicity of unique IDs based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, thereby removing all references to the source node.

11 . The method of claim 8 , comprising:

obtaining a first preference associated with a first user associated with the source node,

wherein the first preference indicates a bookmarked record included in the source node;

creating a copy of the bookmarked record in the copy of the hierarchy of the multiple source records; and

enabling the first user to easily access the copy of the bookmarked record in the target node by creating a bookmark to the copy of the bookmarked record.

12 . The method of claim 8 , comprising:

obtaining a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generating a second multiplicity of unique IDs;

generating a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

obtaining a bookmark to the source record; and

based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, updating the bookmark to the source record to point to a copy of the source record included in the copy of the hierarchy of the multiple source records.

13 . The method of claim 8 , comprising:

until completing a creation of the copy of the hierarchy of the multiple source records within the target node, making a partial copy of the hierarchy of the multiple source records invisible to a user of the target node by marking a record in the partial copy of the hierarchy of the multiple source records as trash; and

upon completing the creation of the copy of the hierarchy of the multiple source records within the target node, making the copy of the hierarchy of the multiple source records visible by removing the trash mark from the record.

14 . A system comprising:

at least one hardware processor; and

at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the system to:

obtain an indication to consolidate a source node and a target node,

wherein the source node is associated with a hierarchy of multiple source records arranged in multiple levels,

wherein a source record among the multiple source records is associated with a source permission, and

wherein the target node is associated with a target permission;

create a copy of the hierarchy of the multiple source records,

wherein the copy of the hierarchy of the multiple source records is a child of the target node;

determine whether the target permission is more restrictive than the source permission;

upon determining that the target permission is more restrictive than the source permission, set a permission associated with the copy of the hierarchy of the multiple source records to the target permission; and

upon determining that the source permission is more restrictive than the target permission, set the permission associated with the copy of the hierarchy of the multiple source records to the source permission.

15 . The system of claim 14 , comprising instructions to:

prior to creating the copy of the hierarchy of the multiple source records, preventing modifications to the source node;

determine a number of records in the hierarchy of multiple source records;

upon creating the copy of the hierarchy of the multiple source records, determine a number of records in the copy of the hierarchy of the multiple source records;

determine whether there is a difference between the number of records in the hierarchy of multiple source records and the number of records in the copy of the hierarchy of the multiple source records; and

upon determining that there is the difference, generate an indication of the difference.

16 . The system of claim 14 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs; and

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs.

17 . The system of claim 14 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs;

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

create the copy of the hierarchy of the multiple source records,

wherein the copy of the hierarchy of the multiple source records includes the first multiplicity of unique IDs; and

replace the first multiplicity of unique IDs with the second multiplicity of unique IDs based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, thereby removing all references to the source node.

18 . The system of claim 14 , comprising instructions to:

obtain a first preference associated with a first user associated with the source node,

wherein the first preference indicates a bookmarked record included in the source node;

create a copy of the bookmarked record in the copy of the hierarchy of the multiple source records; and

enable the first user to easily access the copy of the bookmarked record in the target node by creating a bookmark to the copy of the bookmarked record.

19 . The system of claim 14 , comprising instructions to:

obtain a first multiplicity of unique identifiers (IDs) associated with the hierarchy of the multiple source records,

wherein a first unique ID in the first multiplicity of unique IDs identifies the source record among the hierarchy of the multiple source records;

generate a second multiplicity of unique IDs;

generate a mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs,

wherein a second ID in the second multiplicity of unique IDs corresponds to the first unique ID in the first multiplicity of unique IDs;

obtain a bookmark to the source record; and

based on the mapping between the first multiplicity of unique IDs and the second multiplicity of unique IDs, update the bookmark to the source record to point to a copy of the source record included in the copy of the hierarchy of the multiple source records.

20 . The system of claim 14 , comprising instructions to:

until completing a creation of the copy of the hierarchy of the multiple source records within the target node, make a partial copy of the hierarchy of the multiple source records invisible to a user of the target node by marking a record in the partial copy of the hierarchy of the multiple source records as trash; and

upon completing the creation of the copy of the hierarchy of the multiple source records within the target node, make the copy of the hierarchy of the multiple source records visible by removing the trash mark from the record.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2024
From: YEHOSHUA, RON; ICACAN, BIRKAN; ZHANG, VICKY WENQI; CHEN, PEIYAO; LOZANO, CRISTINA; FELIX, MARISSA JESSICA LAFONTANT
To: NOTION LABS, INC.
Reel/Frame 067483/0859 →
References Cited (34)
US 9485259B1 · Doermann · 2016 [cited by examiner]
US 9805209B2 · Naglost · 2017 [cited by examiner]
US 10691645B2 · Duval · 2020 [cited by examiner]
US 10878066B2 · Qiu · 2020 [cited by examiner]
US 11025718B2 · Savage · 2021 [cited by examiner]
US 11836227B2 · Iyer · 2023 [cited by examiner]
US 11941347B2 · Zheng · 2024 [cited by examiner]
US 11943305B2 · Bentley · 2024 [cited by examiner]
US 12033103B1 · Schmidt · 2024 [cited by examiner]
US 12259997B2 · Costello · 2025 [cited by examiner]
US 12278864B2 · Singh · 2025 [cited by examiner]
US 12400011B1 · Davidson · 2025 [cited by examiner]
US 20130298140A1 · Wolfe · 2013 [cited by examiner]
US 20150180872A1 · Christner · 2015 [cited by examiner]
US 20160014097A1 · Swineford · 2016 [cited by examiner]
US 20160321464A1 · Tamayo-Rios · 2016 [cited by examiner]
US 20170136622A1 · Bruemmer · 2017 [cited by examiner]
US 20170244742A1 · Helmsen · 2017 [cited by examiner]
US 20180307381A1 · Bashir · 2018 [cited by examiner]
US 20190129582A1 · Uchiumi · 2019 [cited by examiner]
US 20190129583A1 · Yamada · 2019 [cited by examiner]
US 20210105280A1 · Lansing · 2021 [cited by examiner]
US 20210133257A1 · Feijoo · 2021 [cited by examiner]
US 20220211270A1 · Itkowtiz · 2022 [cited by examiner]
US 20220300339A1 · Iyer · 2022 [cited by examiner]
US 20230072696A1 · Bartolotta · 2023 [cited by examiner]
US 20230177502A1 · Gnanasambandam · 2023 [cited by examiner]
US 20230187036A1 · Gnanasambandam · 2023 [cited by examiner]
US 20230237743A1 · Rieger · 2023 [cited by examiner]
US 20230244477A1 · Moondhra · 2023 [cited by examiner]
US 20230297332A1 · Orgad · 2023 [cited by examiner]
US 20230360779A1 · Gnanasambandam · 2023 [cited by examiner]
US 20240256293A1 · Hashimoto · 2024 [cited by examiner]
US 20250232544A1 · Vasudevan · 2025 [cited by examiner]