Take the 2-minute tour ×
Ask Patents is a question and answer site for people interested in improving and participating in the patent system. It's 100% free, no registration required.

enter image description here US Patent Application US20120226658: Data model versioning for document databases

Claim #1 describes an extremely simple versioning system for a document database:

  1. A method, comprising:

reading, by a processing device, a first version tag, the first version tag associated with a document database;

comparing the first version tag to a second version tag, the second version tag associated with a current document template of an application; and

if the first version tag does not match the second version tag, performing a version migration operation to update a document format of the document database.

If I am reading this correctly, it's attempting to patent a system in which one revision number is compared to the previous revision number, and if it's different do an upgrade.

Claims 8 and 15 go on to describe a "processing system" and a "machine-readable storage medium" without adding any specific details.

Surely there must be prior art for this?

share|improve this question
    
Found this via freshpatents.com –  David Fullerton Sep 18 '12 at 15:30
1  
It's more than your rewording attempt: the version number is the version of the template, and the system updates the document to the new template version if necessary. Still something I'm sure I've used before, and that probably existed before I was born. –  Gilles Sep 18 '12 at 17:15
    
Note: Final rejection mailed for this patent on 11-27-2012. –  samthebrand Dec 18 '12 at 19:15
    
The final rejection was based on "COMPARING AND MERGING STRUCTURED DOCUMENTS SYNTACTICALLY AND SEMANTICALLY Yu Yuan et al" google.com/patents/US20100088676 so anything not as close or detailed as that does not add much. –  George White Mar 29 '13 at 21:26

3 Answers 3

The VMS operating system - first released in 1977 - tagged each file with a version number.

Here is a script written in 1992 called COPY_IF_NEWER which does what the patent claims, using the creation date of the file as the "version tag".

The COPY command of VMS did this automatically and by default.

share|improve this answer
    
There's more to it: the version is on a template, and if there's a newer template, the document is updated to match the new template. –  Gilles Sep 18 '12 at 17:16
    
joelonsoftware.com/articles/fog0000000036.html published in 2000 describes a system similar to that of the patent. –  psr Sep 20 '12 at 17:36

Microsoft Word for example, will notice that you have loaded a document using and old data format and will update that to a newer data format for you. That data format is presumably described by a format template.

The following description from the patent just isn't a true description of what numerous other applications do:

However, these applications may use a highly structured, code-defined data model for storing data (such as metadata pertaining to the software repositories). This data model may be embodied in a template used to format the data. In addition, the data model (and templates) may change over time, such as in new releases of the application. Since the document database is freely structured and schema-free, the database may contain documents having fields that do not match the data model currently used by the management application. Current systems do not include the ability to verify that that version of the data model used by the application matches the data model used in the document database. If the application attempts to read a document in the document database having a different data model than is expected, it may result in the incorrect data being read or other errors.

share|improve this answer

Python's axiom library allows migrations between different schema versions and will allow multiple different schemas to co-exist prior to upgrade.

http://divmod.readthedocs.org/en/latest/products/axiom/axiom-why-axiom.html

Future-Proof

Axiom applications can keep running while they’re being upgraded from one schema to another (with a partial dataset available). Upgrades are handled automatically, and the code for upgrading can be kept separate from your application code. You can even write upgraders which involve complex relationships between multiple rows.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.