# US 2018/0025013 A1 · System for synchronization of changes in edited websites and interactive applications

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0025013 A1
- Document ID: US20180025013A1
- Status: Published application
- Kind: A1
- Application number: 15/706,789
- Filed: 2017-09-18
- Published: 2018-01-25
- Earliest claimed: 2014-02-11
- Assignees: Wix.com Ltd.
- Applicants: Wix.com Ltd.
- Inventors: Yuval GOLDSTEIN; Amit KAUFMAN; Oren HOLLANDER
- Web page: https://patentgrep.com/patent/US20180025013A1

## CPC

- G06F 16/958: Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 40/166: Editing, e.g. inserting or deleting
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system for modifying a website or interactive application, including a published database accessible via an end user data service to present the most up to date version of objects of the website, viewable and editable by at least one user, a draft database accessible via a designer data service and viewable and editable by at least one designer to store edits to the objects of the published database; a published database request handler to coordinate concurrent viewing and updating of the objects between the end user data service and the published database and a draft database request handler to coordinate concurrent viewing, editing and updating of the objects between the designer data service and the draft database and to merge edits and updates to the objects in both the published database and the draft database and to return the merged version of the objects without modifying the published database.

## Claims

### Claim 1

A system for modifying a website or interactive application, the system being implementable on a computing device, the system comprising:
a published database accessible via an end user data service to present at least the most up to date version of objects of said website, said objects being at least one of schema defined and system defined and visual, viewable and editable by at least one user;
a draft database accessible via a designer data service and viewable and editable by at least one designer to store at least edits to said objects of said published database;
a published database request handler to coordinate concurrent viewing and updating of said objects between said end user data service and said published database while said website is running;
a draft database request handler to coordinate concurrent viewing, editing and updating of said objects between said designer data service and said draft database and to merge at least one of edits and updates to said objects from said published database and edits and updates to said objects in said draft database and to return the merged version of said objects to said at least one designer via said designers data service without modifying said published database while said website is running; and
an auxiliary system to update said published database based on said editing and updating of said objects in said draft database via said designer data service.

### Claim 2 (depends on 1)

The system according to claim 1 and also comprising a conflict resolver to resolve conflicts caused by incoming said edits and updates from multiple sources.

### Claim 3 (depends on 1)

The system according to claim 1 and also comprising a list database to store lists and list applications.

### Claim 4 (depends on 3)

The system according to claim 3 and wherein said lists comprise list items defined according to a schema, and wherein a single list includes at least one of items constructed according to single schema version, items constructed according to multiple versions of a given schema and items constructed according to multiple schemas.

### Claim 5 (depends on 2)

The system according to claim 2 and also comprising a version control system.

### Claim 6 (depends on 1)

The system according to claim 1 and wherein said draft database comprises a deleted objects database to store a unique identifier of deleted said objects from said draft database.

### Claim 7 (depends on 1)

The system according to claim 1 and wherein said draft database and said published database are combined in a single database.

### Claim 8 (depends on 4)

The system according to claim 4 and wherein said published database request handler and said draft database request handler comprise at least one of:
an item adapter to perform adaptation of list items to different schema versions according to said requests using at least one of ID-based handling and change-based handling and to return said adapted list items through at least one of said end user data service and said designer data service; and
a query rewriter to modify read queries made to at least one of said published database and said draft database to support the retrieval of said list items saved under different versions of a given schema based on the analysis of the query conditions against at least one of the default values field added and the default values field removed in different schema versions.

### Claim 9 (depends on 1)

The system according to claim 1 and wherein said draft database request handler comprises an item type change handler to handle type definition modifications of said objects of said website according to said requests.

### Claim 10 (depends on 2)

The system according to claim 2 and wherein said conflict resolver comprises a component comparer and merger to perform object oriented comparison and merging to determine different versions of said objects.

### Claim 11 (depends on 2)

The system according to claim 2 and wherein said auxiliary system comprises at least one of:
an auto updater to notify said at least one designer via said designer data service as to changes made to a currently edited website by another at least one designer and to merge said changes to said currently edited website;
a publisher to publish at least one of total changes and a subset of changes from said draft database to said published database and to clear said changes from said draft database;
an archiver to store and retrieve at least one of full and partial archived versions of said objects in an archive database;
an editing history recorder to record editing history during editing by said at least one designer into an editing history database;
an editing history analyzer to analyze said editing history in said editing history database;
a reverter to revert said objects held in said draft database to a version from said archived database, said version being at least one of an earlier or later than said currently edited version, and wherein said version from said archived database becomes said currently edited version and wherein said revert is limited to non-list data and includes support to tag attribute changes through tag editing history tracking or tag ID matching;
a cloner to create copies of said published database and said draft database; and
a database creator to create said published database and said draft database the first time they are used.

### Claim 12 (depends on 11)

The system according to claim 11 and wherein said auto updater comprises a baseline distributer to monitor changes from a defined baseline version of said objects of said currently edited website in said draft database.

### Claim 13 (depends on 5)

The system according to claim 5 and wherein said conflict resolver comprises a change set resolver to change set classification to integrate change sets received from at least two of said end user data service, said designer service and said version control system.

### Claim 14 (depends on 13)

The system according to claim 13 and also comprising:
a request classifier to perform classification of incoming requests from said end user data service and said designer data service into at least one community; and
a user classifier to access user profiles from a user profile repository.

### Claim 15 (depends on 5)

The system according to claim 5 and wherein said conflict resolver is at least one of automatic, semi-automatic and manual.

### Claim 16 (depends on 5)

The system according to claim 5 and wherein said version control system also comprises a branch handler to handle branch operations on said website.

### Claim 17 (depends on 1)

The system according to claim 1 and wherein said published database and said draft database are at least one of a database, an object repository, a markup language file collection and a file system.

### Claim 18 (depends on 1)

The system according to claim 1 and wherein said published database and said draft database are at least one of in-memory, locally stored, remotely stored and cloud stored.

### Claim 19 (depends on 1)

The system according to claim 1 and wherein said edits are at least one of addition, deletion or modification.

### Claim 20

A method for modifying a website or interactive application, the method comprising:
presenting an updated version of objects from a published database of said website, said objects being at least one of schema defined, system defined and visual, viewable and editable by at least one user;
viewing and editing a draft database of said website wherein said draft database stores at least edits to said objects of said published database;
coordinating concurrent viewing and updating of said objects between said end user data service and said published database while said website is running;
coordinating concurrent viewing, editing and updating of said objects between said designer data service and said draft database and merging at least one of edits and updates to said objects from said published database and edits and updates to said objects in said draft database and returning the merged version of said objects to said at least one designer via said designers data service without modifying said published database while said website is running; and
updating said published database based on said editing and updating of said objects in said draft database via said designer data service.
