Marshaling and un-marshaling data types in XML and Java
First Claim
1. A computer-implemented system to marshal and unmarshal data between an extensible markup language (XML) and an object-oriented programming language, comprising:
- an XML schema which defines an XML data; and
a compiler, running on one or more processors of the computer-implemented system, to generate an object-oriented programming language type from the XML schema, wherein the object-oriented programming language type is automatically generated for an object-oriented programming language component as an inner class to an XML control interface for the object-oriented programming language component,wherein the object-oriented programming language type corresponds to the XML schema and provides XML-oriented data manipulation, wherein the object-oriented programming language type extends from a base type that allows the combination of an XML type system and an object-oriented programming language type system and can access and manipulate the XML data from within the object-oriented programming language type system,wherein the object-oriented programming language type executes one or more XML data operations provided by the XML type system, on the XML data, to generate one or more result sets in the object-oriented programming language type system, wherein each of the one or more XML data operations is one ofan XML data query operation;
an XML data transformation operation; and
an XML data iteration operation.
2 Assignments
0 Petitions
Accused Products
Abstract
The use of XML types can allow the combination of XML and JAVA® type systems, which overcomes many deficiencies in existing marshaling and unmarshaling systems by translating XML schemas which define XML data in an XML document into XML types in JAVA®. Unlike traditional attempts at translating between XML and JAVA®, XML schemas realized as XML types can remain fully faithful to the XML, and are capable of a number of XML data operations. In addition, the XML types can be easily transformed among themselves and JAVA® types, and a lightweight store retaining XML information at tag level allows incremental XML marshaling and unmarshaling.
73 Citations
41 Claims
-
1. A computer-implemented system to marshal and unmarshal data between an extensible markup language (XML) and an object-oriented programming language, comprising:
-
an XML schema which defines an XML data; and a compiler, running on one or more processors of the computer-implemented system, to generate an object-oriented programming language type from the XML schema, wherein the object-oriented programming language type is automatically generated for an object-oriented programming language component as an inner class to an XML control interface for the object-oriented programming language component, wherein the object-oriented programming language type corresponds to the XML schema and provides XML-oriented data manipulation, wherein the object-oriented programming language type extends from a base type that allows the combination of an XML type system and an object-oriented programming language type system and can access and manipulate the XML data from within the object-oriented programming language type system, wherein the object-oriented programming language type executes one or more XML data operations provided by the XML type system, on the XML data, to generate one or more result sets in the object-oriented programming language type system, wherein each of the one or more XML data operations is one of an XML data query operation; an XML data transformation operation; and an XML data iteration operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method to marshal and unmarshal data between an extensible markup language (XML) and an object-oriented programming language, comprising:
-
defining an XML data using an XML schema; generating, via a compiler running on one or more processors, an object-oriented programming language type from the XML schema, wherein the object-oriented programming language type is automatically generated for an object-oriented programming language component as an inner class to an XML control interface for the object-oriented programming language component, wherein the object-oriented programming language type corresponds to the XML schema and provides XML-oriented data manipulation, wherein the object-oriented programming language type extends from a base type that allows the combination of XML and object-oriented programming language type systems and can access and manipulate the XML data from within the object-oriented programming language type system; and executing, via the object-oriented programming language type, one or more XML data operations provided by the XML type system, on the XML data, to generate one or more result sets in the object-oriented programming language type system, wherein each of the one or more XML data operations is one of an XML data query operation; an XML data transformation operation; and an XML data iteration operation. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A machine readable storage medium having instructions stored thereon that when executed by a processor cause a system to:
-
define an extensible markup language (XML) data using an XML schema; generate, via a compiler running on one or more processors, an object-oriented programming language type from the XML schema, wherein the object-oriented programming language type is automatically generated for an object-oriented programming language component as an inner class to an XML control interface for the object-oriented programming language component, wherein the object-oriented programming language type corresponds to the XML schema and provides XML-oriented data manipulation, wherein the object-oriented programming language type extends from a base type that allows the combination of XML and object-oriented programming language type systems and can access and manipulate the XML data from within the object-oriented programming language type system; and execute, via the object-oriented programming language type, one or more XML data operations provided by the XML type system, on the XML data, to generate one or more result sets in the object-oriented programming language type system, wherein each of the one or more XML data operations is one of an XML data query operation; an XML data transformation operation; and an XML data iteration operation. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
Specification