IP Library Patent Application 12767807
Patent Application
App. No. 12/767,807

Importing Tree Structure

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 None
App. No.
12/767,807
Abstract

A set of structured data may be stored using a format file and a data file. The format file may contain a hierarchical structure in the form of classes and relationships, while the data file may store the instances of the data in a serialized form. The format file may include projection types as well as repeating or nested types. The data file may contain instances of the structured data in the form of rows, with commas or other delimiters separating the data items. The structure of the data file may be created by traversing the format file to create a fully populated list of data items representing the structured data. An application may read the format file and data file to import complex data types and populate instances of those data types.

Claims (51)

1 . A method performed on a computer processor, said method comprising:

receiving a data type definition in a format file, said data type definition comprising a hierarchical data type definition for a plurality of data types;

processing said data type definition to identify properties for each of said data types, and an order for each of said properties;

receiving a data file comprising instances of said data types, each of said instances comprising said properties according to said order;

for each of said instances, reading said properties from said data file to create said instance; and

storing said instance.

2 . The method of claim 1 , said plurality of data types comprising a parent/child relationship between a first data type and a second data type.

3 . The method of claim 1 , said plurality of data types being defined using a counter for a repeated instance of a first data type.

4 . The method of claim 1 , said format file being defined in XML.

5 . The method of claim 4 , said data file being defined in a separated values file comprising a delimiter between each of said properties.

6 . The method of claim 5 , said delimiter being a comma.

7 . The method of claim 1 , said data type definition comprising property definition for a first property.

8 . The method of claim 7 further comprising:

receiving a property value from said data file for said first property; and

checking said property value against said property definition.

9 . The method of claim 1 , said instance being stored in a database.

10 . The method of claim 9 , said database having a predefined set of data types corresponding to said plurality of data types.

11 . The method of claim 1 further comprising:

reading a first property and detecting a first property comprising a reference to a first external file; and

reading said first external file to determine said first property.

12 . A computer readable storage medium comprising computer executable instructions that perform the method of claim 1 .

13 . A method performed on a computer processor, said method comprising:

receiving a data structure definition comprising a first data type and a second data type;

creating a format file comprising said data structure definition;

using said data structure definition to identify a plurality of properties and an order for said properties;

receiving a plurality of instances for said data structure definition;

for each of said plurality of instances, identifying a property value for each said plurality of properties, organizing said property values according to said order, and adding said property values in a data file; and

saving said data file.

14 . The method of claim 13 , said first data type and said second data type having a relationship defined in said format file.

15 . The method of claim 14 , said relationship being a parent/child relationship.

16 . The method of claim 15 , said plurality of instances being received from a database.

17 . The method of claim 16 , said database being used to derive at least a portion of said data structure definition.

18 . A system comprising:

a processor;

a file system;

a database comprising instances of data types;

a data import system that:

receives a data type definition in a first format file, said data type definition comprising a hierarchical data type definition for a plurality of data types;

processes said data type definition to identify properties for each of said data types, and an order for each of said properties;

receives a second data file comprising instances of said data types, each of said instances comprising said properties according to said order;

for each of said instances, reads said properties from said data file to create said instance; and

stores said instance in said database.

19 . The system of claim 18 further comprising:

a data export system that:

receives a data structure definition comprising a first data type and a second data type, said data structure definition being at least partially defined in said database;

creates a second format file comprising said data structure definition;

uses said data structure definition to identify a plurality of properties from said database and an order for said properties;

receives a plurality of instances for said data structure definition;

for each of said plurality of instances, identifies a property value for each said plurality of properties, organizes said property values according to said order, and adds said property values in a second data file; and

saves said second data file.

20 . The system of claim 19 , said first format file being defined in XML and said first data file being a comma separated value file.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034564/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2010
From: LYDICK, NEIL; KALKI, JAGADEESH; STERIN, MARK
To: MICROSOFT CORPORATION
Reel/Frame 024291/0273 →