IP Library › Granted Patent US 9,811,506
Granted Patent B2
US 9,811,506 · App. 14/928,004 · Granted Nov 7, 2017

Object-oriented system for creating and managing websites and their content

Inventor: Philip N. Calvin (San Francisco, CA)
Assignee: salesforce.com, inc.
G06F17/212G06F3/04842G06F3/04847G06F8/24G06F8/34G06F8/36G06F8/38G06F17/3089G06F17/30896G06F17/30905H04L65/1063H04L67/02H04L29/06312
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,811,506
App. No.
14/928,004
Granted
Nov 7, 2017
Kind
B2
Abstract

The invention teaches a method for creating and managing a website as an object oriented system, comprising: providing on a system server a plurality of hierarchical classes of objects, each of the classes representing one aspect of the storage, presentation and logic of a website; providing on a web server an interface operable to present representations of objects instantiating the plurality of hierarchical classes and receive commands meant to one of: instantiate a new object, destroy a presented object, and change a property of a presented object; and storing on a database server objects as a traversable tree in accordance with the plurality of hierarchical classes.

Claims (21)

1. A method for creating and managing a website, comprising:

providing, via an electronic computing device, a graphical user interface to allow a user to create and manage the website;

providing, via a system server computing device, a plurality of hierarchical classes of objects to allow components of the website to be created, updated, and deleted independently from each other, wherein the plurality of hierarchical classes of objects comprise at least classes for completely representing the website in an object-oriented manner with at least a presentation tier package, a logic tier package, and a storage tier package that in turn contain classes that represent particular aspects of the website;

storing, in a database management system on a database server computing device in communication with the system server computing device, object configurations for the plurality of hierarchical classes of objects to enforce data integrity, versioning, search, and retrieval;

storing, in the database management system on the database server computing device, the plurality of hierarchical classes of objects as a traversable object tree in accordance with the plurality of hierarchical classes of objects; and

generating, by the system server computing device, a user-requested portion of the website using a defined set of behaviors, properties, and events stored in an object configuration associated with each of the traversed objects from a corresponding portion of the traversable object tree.

2. The method of claim 1 , wherein the logic tier package comprises at least a server-side event handling class for handling server-side events and a business rules class for representing business rules that establish a logical operation of the website.

3. The method of claim 1 , wherein the system server computing device is further operable to provide a complete or partial set of objects that define a website, with one topmost website object for each user's website, as well as objects for each page, table, and content item that a given website contains, and wherein each object of the complete or partial set of objects is derived from a set of hierarchical classes and sub-classes that allow each object of the complete or partial set of objects to store and retrieve their own configuration data from the database management system on the database server computing device, store and manage an indefinite history of changes to itself such that any previous state of itself can be restored, and render itself in a manner that is compatible with web browsers.

4. A non-transitory computer-readable medium having stored thereon instructions to create and manage a website, the instructions, when executed by one or more processors, cause the one or more processors to:

provide, via an electronic computing device, a graphical user interface to allow a user to create and manage the website;

provide, via a system server computing device, a plurality of hierarchical classes of objects to allow components of the website to be created, updated, and deleted independently from each other, wherein the plurality of hierarchical classes of objects comprise at least classes for completely representing the website in an object-oriented manner with at least a presentation tier package, a logic tier package, and a storage tier package that in turn contain classes that represent particular aspects of the website;

store, in a database management system on a database server computing device in communication with the system server computing device, object configurations for the plurality of hierarchical classes of objects to enforce data integrity, versioning, search, and retrieval;

store, in the database management system on the database server computing device, the plurality of hierarchical classes of objects as a traversable object tree in accordance with the plurality of hierarchical classes of objects; and

generate, by the system server computing device, a user-requested portion of the website using a defined set of behaviors, properties, and events stored in an object configuration associated with each of the traversed objects from a corresponding portion of the traversable object tree.

5. The non-transitory computer-readable medium of claim 4 , wherein the logic tier package comprises at least a server-side event handling class for handling server-side events and a business rules class for representing business rules that establish a logical operation of the website.

6. The non-transitory computer-readable medium of claim 4 , wherein the system server computing device is further operable to provide a complete or partial set of objects that define a website, with one topmost website object for each user's website, as well as objects for each page, table, and content item that a given website contains, and wherein each object of the complete or partial set of objects is derived from a set of hierarchical classes and sub-classes that allow each object of the complete or partial set of objects to store and retrieve their own configuration data from the database management system on the database server computing device, store and manage an indefinite history of changes to itself such that any previous state of itself can be restored, and render itself in a manner that is compatible with web browsers.

7. A system to create and manage a website, the system comprising:

a database; and

one or more processors coupled with the database, the one or more processors to provide a graphical user interface to allow a user to create and manage the website, to provide a plurality of hierarchical classes of objects to allow components of the website to be created, updated, and deleted independently from each other, wherein the plurality of hierarchical classes of objects comprise at least classes for completely representing the website in an object-oriented manner with at least a presentation tier package, a logic tier package, and a storage tier package that in turn contain classes that represent particular aspects of the website, to cause to be stored in the database, object configurations for the plurality of hierarchical classes of objects to enforce data integrity, versioning, search, and retrieval, to cause to be stored in the database, the plurality of hierarchical classes of objects as a traversable object tree in accordance with the plurality of hierarchical classes of objects, and to generate a user-requested portion of the website using a defined set of behaviors, properties, and events stored in an object configuration associated with each of the traversed objects from a corresponding portion of the traversable object tree.

8. The system of claim 7 , wherein the logic tier package comprises at least a server-side event handling class for handling server-side events and a business rules class for representing business rules that establish a logical operation of the website.

9. The system of claim 7 , wherein the one or more processors are further operable to provide a complete or partial set of objects that define a website, with one topmost website object for each user's website, as well as objects for each page, table, and content item that a given website contains, and wherein each object of the complete or partial set of objects is derived from a set of hierarchical classes and sub-classes that allow each object of the complete or partial set of objects to store and retrieve their own configuration data from a database management system, store and manage an indefinite history of changes to itself such that any previous state of itself can be restored, and render itself in a manner that is compatible with web browsers.

Assignments (2)
CHANGE OF NAME Recorded Aug 4, 2026
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 076118/0548 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2015
From: CALVIN, PHILIP N.
To: SALESFORCE.COM, INC.
Reel/Frame 036950/0962 →
Continuity (4)
Continuation 14283028 · May 20, 2014
Continuation 12935890
Provisional Application 61048516 · Apr 28, 2008
Related Publication 20160048481A1 · Feb 18, 2016