Patent US5655121A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5655121A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for encoding data to be self-describing by storing tag records describing said data terminated by a self-referential record

Assignee: Sun Microsystems Inc
•
Filing: 1996-07-19
•
Granted: 1997-08-05
•
Expires: 2016-07-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer-implemented method and apparatus in a computer system of processing data generated by a first application program in a second application program during runtime. During runtime, the first application program generates a record including a plurality of fields, wherein at least one of the plurality of fields contains data generated by the first application program. Other of the plurality of fields containing descriptive information regarding the data. The record also includes a reference (e.g. a pointer, relative or absolute) to a tag record. The tag record describes the plurality of fields contained in the record. The tag record further recursively references a plurality of tag records each referencing an associated tag record identifying fields in a referred-to tag record. This continues, recursively, until ultimately, a root record is referenced including a self-referential tag identifying the fields in the root record. The second application program then receives the record, and references the tag record and each of the plurality of tag records, recursively, until reaching the root record in order to identify the data by referencing the plurality of fields in each of the tag records. In this manner, the data contained in the record is thus self-describing. The second application program then manipulates the data according to the identification of the data specified by the record, the tag record and each of the plurality of tag records.

Inventors

  • 👤 Bruce Alfred Delagi
  • 👤 Nakul P. Saraiya
  • 👤 Jaikumar Ramanathan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 14:54
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362; G06F11/3636

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 286 words
A computer-implemented method in a computer system of providing data from a first application program to a second application program during runtime comprising the following steps: a. including in said first application program a linkage to a library of data types for describing data in said first application program, said library of data types enabling examination of said data in said first application program having said data types from said second application program, said library of data types comprising a definition of a record including: i. a plurality of fields each containing identifying information associated with said record; ii. a reference to a tag record, said tag record listing names and types of each of said plurality of fields contained in said referencing record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record listing the names and types of fields in referencing tag record, and ultimately, referencing a root record including a self-reference to a list of names and types of fields contained in said root record; b. including in said first application object definitions for said data in said first application program according to said library of data types; c. enabling said object definitions; d. said second application program referencing said data at runtime by referencing a runtime record containing said data according to said object definitions, said second application program determining the nature of said data by referencing said runtime record and associated plurality of tag records, recursively, until reaching said root record; and e. said second application manipulating said data via said object definitions according to said nature of said data specified by said runtime record, said tag record and said plurality of tag records.
Claim 2
Dependent Claim 286 words
A computer-implemented method in a computer system of providing data from a first application program to a second application program during runtime comprising the following steps: a. including in said first application program a linkage to a library of data types for describing data in said first application program, said library of data types enabling examination of said data in said first application program having said data types from said second application program, said library of data types comprising a definition of a record including: i. a plurality of fields each containing identifying information associated with said record; ii. a reference to a tag record, said tag record listing names and types of each of said plurality of fields contained in said referencing record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record listing the names and types of fields in referencing tag record, and ultimately, referencing a root record including a self-reference to a list of names and types of fields contained in said root record; b. including in said first application object definitions for said data in said first application program according to said library of data types; c. enabling said object definitions; d. said second application program referencing said data at runtime by referencing a runtime record containing said data according to said object definitions, said second application program determining the nature of said data by referencing said runtime record and associated plurality of tag records, recursively, until reaching said root record; and e. said second application manipulating said data via said object definitions according to said nature of said data specified by said runtime record, said tag record and said plurality of tag records.
Claim 3
Dependent Claim 26 words
The method of claim 1 wherein said definition of said record further includes a platform field for specifying a platform in which said data is native.
Claim 4
Dependent Claim 29 words
The method of claim 1 wherein said definition of said record further includes an operations field for use by said second application program during said manipulating of said data.
Claim 5
Dependent Claim 30 words
The method of claim 1 wherein said definition of said record further includes a size field for use by said second application program to determine said size of said record.
Claim 6
Dependent Claim 20 words
The method of claim 1 wherein said definition of said record further includes a name field for identifying said data.
Claim 7
Dependent Claim 25 words
The method of claim 1 wherein said runtime record comprises an event record which includes fields identifying a runtime event in said first application program.
Claim 8
Dependent Claim 29 words
The method of claim 6 wherein said fields in said event record include a type field identifying a type of runtime event which occurred in said first application program.
Claim 9
Dependent Claim 30 words
The method of claim 6 wherein said fields in said event record include a time field identifying a time at which said runtime event occurred in said first application program.
Claim 10
Dependent Claim 23 words
The method of claim 7 wherein said time field includes a relative time in said first application at which said runtime event occurred.
Claim 11
Dependent Claim 30 words
The method of claim 6 wherein said fields in said event record include a address field identifying an address at which said runtime event occurred in said first application program.
Claim 12
Dependent Claim 22 words
The method of claim 1 wherein said reference to said tag is at a predetermined position from a start of said record.
Claim 13
Dependent Claim 221 words
A computer-implemented method in a computer system of processing data generated in a first application program by a second application program during runtime, said method comprising the following steps: a. said first application program generating records during said runtime, said records including: i. a plurality of fields, at least one of said plurality of fields containing data generated by said first application program, and other of said plurality of fields containing descriptive information regarding said generated data; ii. a reference to a tag record, said tag record listing names of each of said plurality of fields contained in said referencing record, said tag record further recursively referencing a plurality of tag records, each referencing an associated tag record identifying fields in said referencing tag record, and ultimately, referencing a root record including a self-referential tag identifying said fields in said root record; b. said second application program receiving said generated records, and referencing said tag record and each of said plurality of associated tag records, recursively, until reaching said root record in order to identify said data by referencing said plurality of fields in each of said associated tag records; and c. said second application manipulating said data according to said identifying of said data specified by said record, said tag record and each of said plurality of associated tag records.
Claim 14
Dependent Claim 221 words
A computer-implemented method in a computer system of processing data generated in a first application program by a second application program during runtime, said method comprising the following steps: a. said first application program generating records during said runtime, said records including: i. a plurality of fields, at least one of said plurality of fields containing data generated by said first application program, and other of said plurality of fields containing descriptive information regarding said generated data; ii. a reference to a tag record, said tag record listing names of each of said plurality of fields contained in said referencing record, said tag record further recursively referencing a plurality of tag records, each referencing an associated tag record identifying fields in said referencing tag record, and ultimately, referencing a root record including a self-referential tag identifying said fields in said root record; b. said second application program receiving said generated records, and referencing said tag record and each of said plurality of associated tag records, recursively, until reaching said root record in order to identify said data by referencing said plurality of fields in each of said associated tag records; and c. said second application manipulating said data according to said identifying of said data specified by said record, said tag record and each of said plurality of associated tag records.
Claim 15
Independent Claim 225 words
An apparatus in a computer system for processing data generated in a first application program by a second application program during runtime comprising: a. first circuitry for generating a record at said runtime from said first application program, said record including: i. a plurality of fields, at least one of said plurality of fields containing data generated by said first application program, and other of said plurality of fields containing descriptive information regarding said generated data; ii. a reference to a tag record, said tag record listing names of each of said plurality of fields contained in said record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record identifying fields in said referencing tag record, and ultimately, referencing a root record including a self-referential tag identifying said fields in said root record; b. second circuitry for receiving said record for second application program, and referencing said tag record and each of said plurality of associated tag records, recursively, until reaching said root record in order to identify said data by referencing said plurality of fields in each of said associated tag records; and c. third circuitry for manipulating said data in said second application according to said identifying of said data specified by said record, said tag record and each of said plurality of associated tag records.
Claim 16
Independent Claim 225 words
An apparatus in a computer system for processing data generated in a first application program by a second application program during runtime comprising: a. first circuitry for generating a record at said runtime from said first application program, said record including: i. a plurality of fields, at least one of said plurality of fields containing data generated by said first application program, and other of said plurality of fields containing descriptive information regarding said generated data; ii. a reference to a tag record, said tag record listing names of each of said plurality of fields contained in said record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record identifying fields in said referencing tag record, and ultimately, referencing a root record including a self-referential tag identifying said fields in said root record; b. second circuitry for receiving said record for second application program, and referencing said tag record and each of said plurality of associated tag records, recursively, until reaching said root record in order to identify said data by referencing said plurality of fields in each of said associated tag records; and c. third circuitry for manipulating said data in said second application according to said identifying of said data specified by said record, said tag record and each of said plurality of associated tag records.
Claim 17
Dependent Claim 163 words
A computer-implemented method in a computer system of processing data used in a first application program comprising the following steps: a. generating data in a record, said record including: i. a plurality of fields each containing identifying information of said data in said record; and ii. a reference to a tag record, said tag record listing names and types of said plurality of fields in said referencing record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record listing the names and types of fields in said referencing tag record, and ultimately, referencing a root record which includes a self-reference and fields listing names and types of plurality of fields in said root record; b. a second application program referencing said data, said tag record and said plurality of tag records, recursively, until reaching said root record; and c. said second application processing said data according to said tag record and said plurality of tag records.
Claim 18
Dependent Claim 163 words
A computer-implemented method in a computer system of processing data used in a first application program comprising the following steps: a. generating data in a record, said record including: i. a plurality of fields each containing identifying information of said data in said record; and ii. a reference to a tag record, said tag record listing names and types of said plurality of fields in said referencing record, said tag record further recursively referencing a plurality of tag records each referencing an associated tag record listing the names and types of fields in said referencing tag record, and ultimately, referencing a root record which includes a self-reference and fields listing names and types of plurality of fields in said root record; b. a second application program referencing said data, said tag record and said plurality of tag records, recursively, until reaching said root record; and c. said second application processing said data according to said tag record and said plurality of tag records.
Claim 19
Dependent Claim 23 words
The method of claim 14 wherein said record further includes a platform field for specifying a platform in which said data is native.
Claim 20
Dependent Claim 27 words
The method of claim 14 wherein said said record further includes an operations field for use by said second application program during said manipulating of said data.
Claim 21
Dependent Claim 27 words
The method of claim 14 wherein said record further includes a size field for use by said second application program to determine said size of said record.
Claim 22
Dependent Claim 17 words
The method of claim 14 wherein said record further includes a name field for identifying said data.
Claim 23
Dependent Claim 24 words
The method of claim 14 wherein said record comprises an event record which includes fields identifying a runtime event in said first application program.
Claim 24
Dependent Claim 29 words
The method of claim 19 wherein said fields in said event record include a type field identifying a type of runtime event which occurred in said first application program.
Claim 25
Dependent Claim 30 words
The method of claim 19 wherein said fields in said event record include a time field identifying a time at which said runtime event occurred in said first application program.
Claim 26
Dependent Claim 23 words
The method of claim 21 wherein said time field includes a relative time in said first application at which said runtime event occurred.
Claim 27
Dependent Claim 30 words
The method of claim 19 wherein said fields in said event record include a address field identifying an address at which said runtime event occurred in said first application program.
Claim 28
Dependent Claim 22 words
The method of claim 14 wherein said reference to said tag is at a predetermined position from a start of said record.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-08-04 2001-02-03 2001-08-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-08-04 2005-02-03 2005-08-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-08-04 2009-02-03 2009-08-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag