IP Library Granted Patent US 8,010,518
Granted Patent B2
US 8,010,518 · App. 11/675,239 · Granted Aug 30, 2011

Method for multicontext XML fragment reuse and validation in a content management system

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 8,010,518
App. No.
11/675,239
Granted
Aug 30, 2011
Kind
B2
Abstract

Method, article and apparatus for the reusability of data objects such as XML document fragments managed by a content management system (CMS). Embodiments of the invention may be used to enforce validation requirements for a multi-context XML fragment (i.e., for a fragment referenced in two or more documents managed by the CMS). When changes are made to a multi-context fragment, the CMS may detect any validation problems and take corrective action to resolve the validation problem.

Claims (47)

1. A method of managing data objects in a content management system (CMS), comprising:

accessing a first data object managed by the CMS, wherein the first data object includes a collection of one or more data object fragments, wherein a first fragment of the one or more data object fragments is referenced by a second data object stored in the CMS, and wherein the first data object and the second data object are composed according to respective schemas;

receiving a modified version of the first data object to store in the CMS wherein the modified version of the first data object includes a modified version of the first fragment;

fragmenting the modified version first data object into the one or more data object fragments;

validating the modified version of the first fragment against the schema associated with the second data object; and

upon determining that the modified version of the first fragment fails to validate against the schema associated with the second data object, performing a corrective action specified by the CMS, wherein the corrective action comprises generating an unmodified version of the first fragment, and further comprises one of:

(i) incorporating the content from the modified version of the first fragment into the first data object,

associating the unmodified version of the first fragment with the second data object, and

discarding the modified version of the first fragment; and

(ii) incorporating the content from the unmodified version of the first fragment into the second data object,

associating the modified version of the first fragment with the first data object, and

discarding the unmodified version of the first fragment.

2. The method of claim 1 , wherein the schema for the first data object defines the allowable content or structure of the first data object and the schema for the second data object defines the allowable content or structure of the second data object.

3. The method of claim 2 , wherein the first and second data objects are XML documents and wherein the schema for the first and second data objects are XML schemas.

4. The method of claim 1 , wherein the first and second data objects are XML documents, and wherein each fragment includes one or more XML elements stored as an independent XML document by the CMS.

5. A computer-readable storage medium containing a program which, when executed, performs an operation for managing data objects in a content management system (CMS), the operation comprising:

accessing a first data object managed by the CMS, wherein the first data object includes a collection of one or more data object fragments, wherein a first fragment of the one or more data object fragments is referenced by a second data object stored in the CMS, and wherein the first data object and the second data object are composed according to respective schemas;

receiving a modified version of the first data object to store in the CMS wherein the modified version of the first data object includes a modified version of the first fragment;

fragmenting the modified version first data object into the one or more data object fragments;

validating the modified version of the first fragment against the schema associated with the second data object; and

upon determining that the modified version of the first fragment fails to validate against the schema associated with the second data object, performing a corrective action specified by the CMS, wherein the corrective action comprises generating an unmodified version of the first fragment, and further comprises one of:

(i) incorporating the content from the modified version of the first fragment into the first data object,

associating the unmodified version of the first fragment with the second data object, and

discarding the modified version of the first fragment; and

(ii) incorporating the content from the unmodified version of the first fragment into the second data object,

associating the modified version of the first fragment with the first data object, and

discarding the unmodified version of the first fragment.

6. The computer-readable medium of claim 5 , wherein the schema for the first data object defines the allowable content or structure of the first data object and the schema for the second data object defines the allowable content or structure of the second data object.

7. The computer-readable medium of claim 6 , wherein the first and second data objects are XML documents and wherein the schema for the first and second data objects are XML schemas.

8. The computer-readable medium of claim 5 , wherein the first and second data objects are XML documents, and wherein each fragment includes one or more XML elements stored as an independent XML document by the CMS.

9. A system, comprising:

a processor; and

a memory containing a content management system (CMS) program which, when executed by the processor, performs an operation for managing data objects in the CMS, the operation comprising:

accessing a first data object managed by the CMS, wherein the first data object includes a collection of one or more data object fragments, wherein a first fragment of the one or more data object fragments is referenced by a second data object stored in the CMS, and wherein the first data object and the second data object are composed according to respective schemas,

receiving a modified version of the first data object to store in the CMS wherein the modified version of the first data object includes a modified version of the first fragment,

fragmenting the modified version first data object into the one or more data object fragments,

validating the modified version of the first fragment against the schema associated with the second data object, and

upon determining that the modified version of the first fragment fails to validate against the schema associated with the second data object, performing a corrective action specified by the CMS, wherein the corrective action comprises generating an unmodified version of the first fragment, and further comprises one of:

(i) incorporating the content from the modified version of the first fragment into the first data object,

associating the unmodified version of the first fragment with the second data object, and

discarding the modified version of the first fragment; and

(ii) incorporating the content from the unmodified version of the first fragment into the second data object,

associating the modified version of the first fragment with the first data object, and

discarding the unmodified version of the first fragment.

10. The system of claim 9 , wherein the schema for the first data object defines the allowable content or structure of the first data object and the schema for the second data object defines the allowable content or structure of the second data object.

11. The system of claim 10 , wherein the first and second data objects are XML documents and wherein the schema for the first and second data objects are XML schemas.

12. The system of claim 9 , wherein the first and second data objects are XML documents, and wherein each fragment includes one or more XML elements stored as an independent XML document by the CMS.

Assignments (4)
SECURITY INTEREST Recorded Aug 10, 2023
From: DOMO, INC.
To: OBSIDIAN AGENCY SERVICES, INC.
Reel/Frame 064562/0269 →
SECURITY INTEREST Recorded May 12, 2020
From: DOMO, INC.
To: OBSIDIAN AGENCY SERVICES, INC.
Reel/Frame 052642/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DOMO, INC.
Reel/Frame 036087/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2007
From: PETRI, JOHN E.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 018894/0048 →