IP Library Granted Patent US 7,606,836
Granted Patent B2
US 7,606,836 · App. 11/468,753 · Granted Oct 20, 2009

Methods for efficient data version verification

Assignee: TIBCO Software Inc.
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 7,606,836
App. No.
11/468,753
Filed
Aug 30, 2006
Granted
Oct 20, 2009
Kind
B2
Examiner
WOO, ISAAC M
Art Unit
2166
USPC
707/104.1
Abstract

Methods for efficiently determining and managing version information associated with sets of data objects, persistently storing the version information, and utilizing the stored version information to determine compatibility between the sets of data objects and applications performing operations utilizing the sets of data objects.

Claims (27)

1. A method for deserializing data by an application, comprising:

determining whether at least one model containing at least one model class instance is known or unknown to the application based upon information contained in a meta-data artifact, the meta-data artifact information including at least one of version information, ignore policy information, or upgrade information associated with the at least one model, wherein the ignore policy information specifies at least whether data associated with the at least one model class instance is required or optional;

determining whether the at least one model is ignorable or non-ignorable by the application, based upon the meta-data artifact information;

when the at least one model is determined to be unknown to the application and the at least one model is determined to be ignorable by the application, marking all references to the at least one model class instance as unresolved;

determining whether the at least one model class instance is convertible or non-convertible to a generic representation, based upon the meta-data artifact information; and

when the at least one model is determined to be unknown to the application and the at least one model class instance is determined to be convertible to a generic representation, converting the at least one model class instance to a generic representation;

determining whether the at least one model has a version that is compatible or incompatible with a version of the application, based upon the meta-data artifact information;

determining whether the at least one model class instance is over-writable or non-over-writable, based upon the meta-data artifact information;

when the at least one model is determined to be known to the application, the at least one model is determined to be compatible with a version of the application, and the at least one model class instance is determined to be non-over-writable, marking the at least one model class instance as non-over-writable and deserializing the at least one model class instance.

2. The method of claim 1 , further comprising:

determining whether the at least one model class instance is read-only or non-read-only, based upon the meta-data artifact information;

when the at least one model is determined to be known to the application, the at least one model is determined to be compatible with a version of the application, and the at least one model class instance is determined to be read-only, marking the at least one model class instance as non-writable and deserializing the at least one model class instance.

3. The method of claim 2 , further comprising:

when the at least one model is determined to be known to the application, the at least one model is determined to be incompatible with a version of the application, and the at least one model class instance is determined to be over-writable or non-read-only, deserializing the at least one model class instance.

4. A method for serializing data by an application, comprising:

identifying at least one model class instance to be written, the at least one model class instance belonging to at least one model;

reading a meta-data artifact, the meta-data artifact containing information including at least one of version information, ignore policy information, or upgrade information associated with the at least one model, wherein the ignore policy information specifies at least whether data associated with the at least one model class instance is required or optional;

determining whether the at least one model class instance is compatible or incompatible with a version of a model used by the application, based upon the meta-data artifact information;

when the at least one model class instance is determined to be compatible with a version of a model used by the application, serializing the at least one model class instance;

when the at least one model class instance is determined to be incompatible with a version of a model used by the application, determining whether the at least one model class instance is updatable or non-updatable based upon the meta-data artifact information;

when the at least one model class instance is determined to be non-updatable, generating an error;

when the at least one model class instance is determined to be updatable, determining whether the at least one model class instance should be replaced or retained; and

when the at least one model class instance should be retained, serializing the at least one model class instance to a new location as a copy.

5. The method of claim 4 , further comprising:

when the at least one model class instance should be replaced, determining whether the at least one model class instance is replaceable or non-replaceable, based upon the meta-data artifact information;

when the at least one model class instance is replaceable, serializing the at least one model class instance to an original location and overwriting a prior model class instance; and

when the at least one model class instance is non-replaceable, generating an error.

Assignments (15)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
CHANGE OF NAME Recorded Feb 7, 2023
From: TIBCO SOFTWARE INC.
To: CLOUD SOFTWARE GROUP, INC.
Reel/Frame 062714/0634 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
RELEASE REEL 052115 / FRAME 0318 Recorded Oct 3, 2022
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: TIBCO SOFTWARE INC.
Reel/Frame 061588/0511 →
RELEASE (REEL 034536 / FRAME 0438) Recorded Sep 30, 2022
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 061574/0963 →
RELEASE (REEL 054275 / FRAME 0975) Recorded May 7, 2021
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 056176/0398 →
SECURITY AGREEMENT Recorded Nov 2, 2020
From: TIBCO SOFTWARE INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 054275/0975 →
SECURITY AGREEMENT Recorded Mar 6, 2020
From: TIBCO SOFTWARE INC.
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 052115/0318 →
SECURITY INTEREST Recorded Dec 5, 2014
From: TIBCO SOFTWARE INC.; TIBCO KABIRA LLC; NETRICS.COM LLC
To: JPMORGAN CHASE BANK., N.A., AS COLLATERAL AGENT
Reel/Frame 034536/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2006
From: LAMBERT, MARK L.; KANALEY, MICHAEL J.
To: TIBCO SOFTWARE INC.
Reel/Frame 018543/0713 →
Continuity (2)
Provisional Application 6082306800 · Aug 21, 2006
Related Publication 20080046869A1 · Feb 21, 2008