Claims
- 1. A system to marshal and unmarshal data between XML and Java, comprising:
an XML data; an XML schema which defines the XML data; an XML type which is a Java type capable of accessing the XML data within Java; and a compiler capable of generating the XML type from the XML schema.
- 2. The system according to claim 1, wherein:
the compiler is capable of generating the XML type based on the definition of a Java web services method.
- 3. The system according to claim 1, wherein:
the compiler is capable of generating the XML type based on a definition file.
- 4. The system according to claim 1, wherein:
the compiler is capable of compiling a Java project into one or more regular Java types.
- 5. The system according to claim 1, wherein:
the XML type can be a movable cursor, capable of reading anywhere within the XML data.
- 6. The system according to claim 1, wherein:
the XML type can be a immovable value, capable of referencing a fixed part of the XML data.
- 7. The system according to claim 1, wherein:
the XML type can be shared among multiple Java components.
- 8. The system according to claim 1, wherein:
the XML type is capable of updating the XML data within Java.
- 9. The system according to claim 1, wherein:
the XML type is capable of accessing and updating Java data using Java type methods.
- 10. The system according to claim 1, wherein:
the XML type is capable of accessing and updating a database.
- 11. The system according to claim 1, wherein:
the XML type is capable of a number of XML data operations, which include: querying XML data, transforming between XML types, and iterating over XML data document.
- 12. The system according to claim 1, further comprising:
an XML schema capable of defining the legal types of the XML data, which include constraints on data types and ranges of the data; and constraints on the data types and ranges of the XML type.
- 13. The system according to claim 12, wherein:
the compiler is capable of generating constraints on the XML type from the XML schema on legal types of the XML data.
- 14. The system according to claim 12, wherein:
the constraints on the XML type are capable of validating the XML type.
- 15. A system to transform types between XML and Java, comprising:
a Java type; an XML type which is a Java type capable of accessing XML data within Java; and an XML transformation capable of transforming a source type to a target type, wherein the source and target type can be either the XML type or the Java type.
- 16. The system according to claim 15, further comprising:
a global registry of XML transformations capable of looking up an existing XML transformation between a source and a target type.
- 17. The system according to claim 15, further comprising:
a library of XML transformations capable of looking up an existing XML transformation by name between a source and a target type.
- 18. A system to marshal and unmarshal data between XML and Java, comprising:
an XML data; a lightweight XML store capable of retaining the XML data as a searchable index; and an XML type which is a Java type capable of referencing the lightweight XML store and accessing the XML data within Java.
- 19. A system to marshal and unmarshal data between XML and Java, comprising:
an XML data; a lightweight XML store capable of retaining the XML data at the text or tag level; and an XML type which is a Java type capable of referencing the lightweight XML store and accessing the XML data within Java.
- 20. The system according to claim 19, wherein:
the lightweight XML store is capable of representing the retained XML data as a hierarchical structure.
- 21. The system according to claim 20, wherein:
the hierarchical structure can be a tree.
- 22. The system according to claim 19, wherein:
the XML type is capable of accessing the XML data incrementally.
- 23. A method to marshal and unmarshal data between XML and Java, comprising:
defining an XML data using an XML schema; accessing the XML data via an XML type within Java; and generating the XML type from the XML schema using a compiler.
- 24. The method according to claim 23, further comprising:
generating the XML type based on the definition of a Java web services method.
- 25. The method according to claim 23, further comprising:
generating the XML type based on a definition file.
- 26. The method according to claim 23, further comprising:
compiling a Java project into one or more regular Java types.
- 27. The method according to claim 23, further comprising:
utilizing the XML type as a movable cursor to read anywhere within the XML data.
- 28. The method according to claim 23, further comprising::
utilizing the XML type as a immovable value to reference a fixed part of the XML data.
- 29. The method according to claim 23, further comprising:
sharing the XML type among multiple Java components.
- 30. The method according to claim 23, further comprising:
updating the XML data within Java via the XML type.
- 31. The method according to claim 23, further comprising:
accessing and updating Java data using Java type methods.
- 32. The method according to claim 23, further comprising:
accessing and updating a database via the XML type.
- 33. The method according to claim 23, further comprising:
utilizing a number of XML data operations via the XML type, these operations include: querying XML data, transforming between XML types, and iterating over XML data document.
- 34. The method according to claim 23, further comprising:
defining the legal types of the XML data via an XML schema, which include constraints on data types and ranges of the XML data.
- 35. The method according to claim 34, further comprising:
generating constraints on the data types and ranges of the XML type from the XML schema on legal types of the XML data.
- 36. The method according to claim 34, further comprising:
validating the XML type using the constraints on the XML type.
- 37. A method to transform types between XML and Java, comprising:
utilizing a Java type; utilizing an XML type which is a Java type capable of accessing an XML data within Java; and transforming a source type to a target type via an XML transformation, wherein the source and target type can be either the XML type or the Java type.
- 38. The method according to claim 37, further comprising:
looking up an existing XML transformation between a source and a target type via a global registry of XML transformations.
- 39. The method according to claim 37, further comprising:
looking up an existing XML transformation by name between a source and a target type via a library of XML transformations.
- 40. A method to marshal and unmarshal data between XML and Java, comprising:
retaining an XML data as a searchable index via a lightweight XML store; and referencing the lightweight XML store and accessing the XML data via the XML type within Java.
- 41. A method to marshal and unmarshal data between XML and Java, comprising:
retaining an XML data at the text or tag level via a lightweight XML store; and referencing the lightweight XML store and accessing the XML data via the XML type within Java.
- 42. The method according to claim 41, further comprising:
representing the retained XML data as a hierarchical structure, which can be a tree.
- 43. The method according to claim 41, further comprising:
accessing the XML data incrementally via the XML type.
- 44. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
define an XML data using an XML schema; access the XML data via an XML type within Java; and generate the XML type from the XML schema using a compiler.
- 45. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
generate the XML type based on the definition of a Java web services method.
- 46. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
generate the XML type based on a definition file.
- 47. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
compile a Java project into one or more regular Java types with the compiler.
- 48. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
utilize the XML type as a movable cursor to read anywhere within the XML data.
- 49. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
utilize the XML type as a immovable value to reference a fixed part of the XML data.
- 50. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
share the XML type among multiple Java components.
- 51. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
update the XML data within Java via the XML type.
- 52. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
access and update Java data using regular Java type methods.
- 53. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
access and update a database via the XML type.
- 54. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
utilize a number of XML data operations via the XML type, these operations include: querying XML data, transforming between XML types, and iterating over XML data document.
- 55. The machine readable medium of claim 44, further comprising instructions that when executed cause the system to:
define the legal types of the XML data via an XML schema, which include constraints on data types and ranges of the XML data.
- 56. The machine readable medium of claim 55, further comprising instructions that when executed cause the system to:
generate constraints on the XML type from the XML schema on legal types of the XML data.
- 57. The machine readable medium of claim 55, further comprising instructions that when executed cause the system to:
validate the XML type using the constraints on the XML type.
- 58. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
utilize a Java type; utilize an XML type which is a Java type capable of accessing an XML data within Java; and transform a source type to a target type via an XML transformation, wherein the source and target type can be either the XML type or the Java type.
- 59. The machine readable medium of claim 58, further comprising instructions that when executed cause the system to:
look up an existing XML transformation between a source and a target type via a global registry of XML transformations.
- 60. The machine readable medium of claim 58, further comprising instructions that when executed cause the system to:
look up an existing XML transformation by name between a source and a target type via a library of XML transformations.
- 61. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
retain an XML data as a searchable index via a lightweight XML store; and reference the lightweight XML store and access the XML data via the XML type within Java.
- 62. A machine readable medium having instructions stored thereon that when executed by a processor cause a system to:
retain an XML data at the text or tag level via a lightweight XML store; and reference the lightweight XML store and access the XML data via the XML type within Java.
- 63. The machine readable medium of claim 62, further comprising instructions that when executed cause the system to:
represent the retained XML data as a hierarchical structure, which can be a tree.
- 64. The machine readable medium of claim 62, further comprising instructions that when executed cause the system to:
access the XML data incrementally via the XML type.
- 65. A system to marshal and unmarshal data between XML and Java, comprising:
means for defining an XML data using an XML schema; means for accessing the XML data via an XML type within Java; and means for generating the XML type from the XML schema using a compiler.
- 66. A computer data signal embodied in a transmission medium, comprising:
a code segment including instructions to define an XML data using an XML schema; a code segment including instructions to access the XML data via an XML type within Java; and a code segment including instructions to generate the XML type from the XML schema using a compiler.
CLAIM OF PRIORITY
[0001] This application claims priority from the following application, which is hereby incorporated by reference in its entirety:
[0002] U.S. Provisional Application No. 60/442,673, entitled XML TYPES IN JAVA, by David Bau, filed Jan. 24, 2003 (Attorney Docket No. BEAS-01388US0 SRM/DTX).
[0003] The following related co-pending U.S. patent applications and documents are hereby incorporated herein by reference in their entirety:
[0004] U.S. patent application filed ______, by Terry Lucas et al., entitled, “Programming Language Extensions for Processing XML Objects and Related Applications” (Attorney Docket No. BEAS-01235US0);
[0005] U.S. patent application filed ______, by Cezar C. Andrei et al., entitled, “A Declarative Specification and Engine for Non-Isomorphic Data Mapping”; and
[0006] Beas Systems Weblogic Workshop Online Help Document entitled, “Annotations Reference”, http://edocs.bea.com/workshop/docs81/doc/en/workshop/reference/tags/navJwsAnnotations.html, version: 2003.0718.084729, dated Jul. 18, 2003.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60442673 |
Jan 2003 |
US |