IP Library Granted Patent US 9,223,825
Granted Patent B2
US 9,223,825 · App. 13/739,068 · Granted Dec 29, 2015

Methods and devices for applying constraints to data object

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 9,223,825
App. No.
13/739,068
Granted
Dec 29, 2015
Kind
B2
Abstract

In one example embodiment, a processor-implemented method is described. The processor implemented method includes: associating a first notebook with one or more predetermined constraints; receiving input associating a data object with a notebook; and when the notebook associated with the data object is the first notebook, applying the one or more predetermined constraints associated with the first notebook to the data object.

Claims (73)

1. A processor-implemented method comprising:

associating a first notebook with one or more predetermined constraints, the first notebook being a notebook configured for storing memos, the one or more predetermined constraints specifying that data objects associated with the first notebook are not permitted to include a due date property or specify that data objects associated with the first notebook are not permitted to include a completion indicator;

associating a second notebook with one or more predetermined constraints, at least one of the predetermined constraints associated with the second notebook being different than the one or more predetermined constraints associated with the first notebook;

receiving input associating a data object with a notebook; and

when the notebook associated with the data object is the first notebook, applying the one or more predetermined constraints associated with the first notebook to the data object; or

when the notebook associated with the data object is the second notebook, applying the one or more predetermined constraints associated with the second notebook to the data object,

wherein applying the one or more predetermined constraints comprises modifying the data object,

and wherein applying the one or more predetermined constraints associated with the first notebook comprises:

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a due date property:

determining if the data object includes a due date property; and

when the data object includes a due date property, removing the due date property from the data object, or

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a completion indicator:

determining if the data object includes a completion indicator; and

when the data object includes a completion indicator, removing the completion indicator from the data object.

2. The method of claim 1 , further comprising, prior to receiving input associating the data object with a notebook:

providing a hybrid application, the hybrid application providing a user interface for allowing a generic data object to be created; and

receiving input creating a generic data object,

and wherein the input associating a data object with a notebook is input that associates the generic data object with a notebook.

3. The method of claim 1 , wherein the second notebook is a notebook configured for storing action items and wherein one or more of the predetermined constraints associated with the second notebook specify that data objects associated with the second notebook must include a completion indicator, and wherein applying the one or more predetermined constraints associated with the second notebook to the data object comprises:

determining if the data object includes a completion indicator; and

when the data object does not include a completion indicator, adding the completion indicator to the data object.

4. The method of claim 3 , wherein applying the one or more predetermined constraints associated with the second notebook to the data object further comprises:

setting the completion indicator to a not completed state.

5. The method of claim 1 , wherein the one or more predetermined constraints are associated with a sync server.

6. The method of claim 5 , further comprising, after applying the one or more predetermined constraints:

syncing the data object using the sync server.

7. The method of claim 1 , further comprising:

providing an application programming interface, the application programming interface being configured to inform third party applications of the predetermined constraints associated with one or more notebooks.

8. The method of claim 7 , further comprising:

generating a graphical user interface in accordance with the predetermined constraints received via the application programming interface.

9. The method of claim 1 , further comprising:

providing an application programming interface, the application programming interface being configured to allow third party applications to assign a data object to a specified notebook, and wherein the input associating a data object with a notebook is received at the application programming interface from a third party application.

10. The method of claim 1 , wherein applying the one or more predetermined constraints comprises adding a field or a property to the data object.

11. The method of claim 1 , wherein applying the one or more predetermined constraints comprises removing a field or a property from the data object.

12. An electronic device comprising:

a processor; and

a memory coupled with the processor, the memory containing processor executable instructions which, when executed by the processor, cause the processor to:

associate a first notebook with one or more predetermined constraints, the first notebook being a notebook configured for storing memos, the one or more predetermined constraints specifying that data objects associated with the first notebook are not permitted to include a due date property or specify that data objects associated with the first notebook are not permitted to include a completion indicator;

associate a second notebook with one or more predetermined constraints, at least one of the predetermined constraints associated with the second notebook being different than the one or more predetermined constraints associated with the first notebook;

receive input associating a data object with a notebook; and

when the notebook associated with the data object is the first notebook, apply the one or more predetermined constraints associated with the first notebook to the data object; or

when the notebook associated with the data object is the second notebook, apply the one or more predetermined constraints associated with the second notebook to the data object,

wherein applying the one or more predetermined constraints comprises modifying the data object,

and wherein applying the one or more predetermined constraints associated with the first notebook comprises:

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a due date property:

determining if the data object includes a due date property; and

when the data object includes a due date property, removing the due date property from the data object, or

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a completion indicator:

determining if the data object includes a completion indicator; and

when the data object includes a completion indicator, removing the completion indicator from the data object.

13. The electronic device of claim 12 , wherein the processor executable instructions are further configured to cause the processor to, prior to receiving input associating the data object with a notebook:

provide a hybrid application, the hybrid application providing a user interface for allowing a generic data object to be created; and

receive input creating a generic data object,

and wherein the input associating a data object with a notebook is input that associates the generic data object with a notebook.

14. The electronic device of claim 12 , wherein the second notebook is a notebook configured for storing action items and wherein one or more of the predetermined constraints specify that data objects associated with the second notebook must include a completion indicator, and wherein applying the one or more predetermined constraints associated with the second notebook to the data object comprises:

determining if the data object includes a completion indicator; and

when the data object does not include a completion indicator, adding the completion indicator to the data object.

15. The electronic device of claim 12 , wherein the one or more predetermined constraints are associated with a sync server, and wherein the electronic device further comprises a communication subsystem for communicating with the sync server, and wherein the processor executable instructions are further configured to cause the processor to:

syncing the data object by communicating with the sync server using the communication subsystem.

16. A non-transitory computer readable storage medium comprising computer executable instructions for:

associating a first notebook with one or more predetermined constraints, the first notebook being a notebook configured for storing memos, the one or more predetermined constraints specifying that data objects associated with the first notebook are not permitted to include a due date property or specify that data objects associated with the first notebook are not permitted to include a completion indicator;

associating a second notebook with one or more predetermined constraints, at least one of the predetermined constraints associated with the second notebook being different than the one or more predetermined constraints associated with the first notebook;

receiving input associating a data object with a notebook; and

when the notebook associated with the data object is the first notebook, applying the one or more predetermined constraints associated with the first notebook to the data object; or

when the notebook associated with the data object is the second notebook, applying the one or more predetermined constraints associated with the second notebook to the data object,

wherein applying the one or more predetermined constraints comprises modifying the data object,

and wherein applying the one or more predetermined constraints associated with the first notebook comprises:

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a due date property:

determining if the data object includes a due date property; and

when the data object includes a due date property, removing the due date property from the data object, or

when the one or more predetermined constraints specify that data objects associated with the first notebook are not permitted to include a completion indicator:

determining if the data object includes a completion indicator; and

when the data object includes a completion indicator, removing the completion indicator from the data object.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Aug 28, 2015
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 036504/0659 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2013
From: LOGAN, ADRIAN MICHAEL; WONG, STEPHEN KWOK SUN; LESSARD, JOSHUA ROLAND
To: RESEARCH IN MOTION LIMITED
Reel/Frame 029666/0429 →