IP Library Granted Patent US 8,171,395
Granted Patent B2
US 8,171,395 · App. 12/130,208 · Granted May 1, 2012

Data reporting application programming interfaces in an XML parser generator for XML validation and deserialization

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,171,395
App. No.
12/130,208
Granted
May 1, 2012
Kind
B2
Abstract

A method for interfacing with an XML (Extensible Markup Language) parser generator to generate deserialization information interleaved with XML parsing and validation, including: providing an XML parser generator with information about the schema which the instance data conforms to; providing a data reporting application programming interface (API) and a generator module; providing one or more implementations of the data reporting API; providing the XML parser generator with a selected data reporting API implementation module; generating an XML parser to parse and validate instance documents conforming to the specified input schema and deserializing the instance documents into the desired deserialization format during the parse.

Claims (31)

1. A method for interfacing with an XML (Extensible Markup Language) parser generator to generate deserialization information interleaved with XML parsing and validation, the method comprising:

providing an XML parser generator with information about a specified input schema which the instance data conforms to;

providing a data reporting application programming interface (API) module; performing by a computer:

generating, by the XML parser generator, an XML parser to parse and validate instance documents conforming to the specified input schema;

inserting, by the XML data reporting API module, user-defined code into the XML parser during the generating; and

deserializing the instance documents into the desired deserialization form during the parse using the user-defined code,

wherein two types of information is exchanged between the data reporting API and the XML parser generator,

wherein a first type of information describes a current context that the XML parser generator is currently generating code for, and

wherein a second type of information involves how the instance data is referenced during runtime and how the XML parser generator refers to the referenced instance data for parsing and validation requirements.

2. The method of claim 1 , wherein the data reporting API is used to generate code that creates appropriate data structures to store the instance data, assign values to the data structures, and allocate space.

3. The method of claim 1 , wherein the data reporting API is used to generate code that creates an event stream representation of the instance data.

4. A computer program product for interfacing with an XML (Extensible Markup Language) parser generator to generate deserialization information interleaved with XML parsing and validation, the computer program product comprising: a non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:

providing an XML parser generator with information about a specified input schema which the instance data conforms to;

providing a data reporting application programming interface (API) module;

generating, by the XML parser generator, an XML parser to parse and validate instance documents conforming to the specified input schema;

inserting, by the XML data reporting API module, user-defined code into the XML parser during the generating; and

deserializing the instance documents into the desired deserialization form during the parse using the user-defined code,

wherein two types of information is exchanged between the data reporting API and the XML parser generator,

wherein a first type of information describes a current context that the XML parser generator is currently generating code for, and

wherein a second type of information involves how the instance data is referenced during runtime and how the XML parser generator refers to the referenced instance data for parsing and validation requirements.

5. The computer program product of claim 4 , wherein the data reporting API is used to generate code that creates appropriate data structures to store the instance data, assign values to the data structures, and allocate space.

6. The computer program product of claim 4 , wherein the data reporting API is used to generate code that creates an event stream representation of the instance data.

7. A system including at least one processor for interfacing with an XML (Extensible Markup Language) parser generator to generate deserialization information interleaved with XML parsing and validation, the at least one processor is configured to perform the steps of:

providing an XML parser generator with information about a specified input schema which the instance data conforms to;

providing a data reporting application programming interface (API) module; performing by a computer;

generating, by the XML parser generator, an XML parser to parse and validate instance documents conforming to the specified input schema;

inserting, by the XML data reporting API module, user-defined code into the XML parser during the generating; and

deserializing the instance documents into the desired deserialization form during the parse using the user-defined code,

wherein two types of information is exchanged between the data reporting API and the XML parser generator,

wherein a first type of information describes a current context that the XML parser generator is currently generating code for, and

wherein a second type of information involves how the instance data is referenced during runtime and how the XML parser generator refers to the referenced instance data for parsing and validation requirements.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2016
From: MIDWAY TECHNOLOGY COMPANY LLC
To: SERVICENOW, INC.
Reel/Frame 038324/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2016
From: KOSTOULAS, MARGARET GAITATZES; MATSA, MOSHE E.; MERCALDI, MARTHA A.; PERKINS, ERIC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 037998/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2016
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MIDWAY TECHNOLOGY COMPANY LLC
Reel/Frame 037704/0257 →