Dynamic generation of schema information for data description languages
First Claim
Patent Images
1. A computer-implemented method comprising:
- receiving a base schema defining one of more classes of elements that conform to a data description language;
receiving a constraint template that defines requirements for instances of the elements without conforming to an XML Schema Definition (XSD), wherein the constraint template conforms to a constraint template schema that is separate from the base schema;
receiving a definition template that defines a sub-class for the elements;
executing a schema generator on a computer system to generate schema information by;
(i) executing the schema generator to dynamically generate a data structure representing the classes of elements defined by the base schema and applying the definition template to the base schema to extend the schema information to include the sub-classes of elements defined within definition template, and(ii) executing the schema generator to dynamically update the schema information to include the restrictions defined by constraint templates; and
executing a validation engine on the computer system to verify that instances of the elements within an XML document comply with the classes defined by the base schema, the sub-classes defined by the definition template, and the requirements defined by constraint template.
14 Assignments
0 Petitions
Accused Products
Abstract
In general, techniques are described for dynamically generating schema information for data description languages. The techniques include receiving a schema defining a class of elements that conform to a data description language, and receiving a constraint template that defines requirements for instances of the elements. The techniques further comprise dynamically generating schema information based on the schema and the constraint template, and validating a document in accordance with the schema information.
53 Citations
41 Claims
-
1. A computer-implemented method comprising:
-
receiving a base schema defining one of more classes of elements that conform to a data description language; receiving a constraint template that defines requirements for instances of the elements without conforming to an XML Schema Definition (XSD), wherein the constraint template conforms to a constraint template schema that is separate from the base schema; receiving a definition template that defines a sub-class for the elements; executing a schema generator on a computer system to generate schema information by; (i) executing the schema generator to dynamically generate a data structure representing the classes of elements defined by the base schema and applying the definition template to the base schema to extend the schema information to include the sub-classes of elements defined within definition template, and (ii) executing the schema generator to dynamically update the schema information to include the restrictions defined by constraint templates; and executing a validation engine on the computer system to verify that instances of the elements within an XML document comply with the classes defined by the base schema, the sub-classes defined by the definition template, and the requirements defined by constraint template. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer system comprising:
-
a base schema defining a class of elements for reusable software assets that are repeatably used for software development environments, wherein the class of elements conform to a data description language; a constraint template that defines requirements for instances of the elements without conforming to an XML Schema Definition (XSD), wherein the constraint template conforms to a constraint template schema that is separate from the base schema; a schema generator executing on the computer system to dynamically generate a virtual schema based on the base schema and the constraint template; and a validation engine executing on the computer system to validate an XML document with the virtual schema by verifying that instances of the elements comply with the classes defined by the base schema and the requirements defined by constraint template. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A computer system comprising:
-
a base schema defining a class of elements that conform to a data description language; a definition template that defines a sub-class for the elements without conforming to an XML Schema Definition (XSD); a constraint template that defines requirements for instances of the sub-class without conforming to an XML Schema Definition; a schema generator executing on the computer system to generate a virtual schema based on the schema, the definition template, and the constraint template; and a validation engine executing on the computer system to validate an XML document in accordance with the virtual schema. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37)
-
-
38. A computer system comprising:
-
a base schema defining a class of elements for reusable software assets that are repeatably used for software development environments, wherein the class of elements conform to a data description language; artifacts that have been created for the purpose of applying that asset repeatedly in subsequent development environments a constraint template that defines requirements for instances of the elements without conforming to an XML Schema Definition (XSD); a schema generator executing on the computer system to dynamically generate schema information for validating documents conforming to a data description language, wherein the schema generator generates the schema information from the base schema in accordance with the constraint template; and a validation engine executing on the computer system to validate information related to reusable software assets, wherein the validation engine uses the schema information to verify that instances of the elements within the information complies with the classes defined by the base schema and the requirements defined by constraint template.
-
-
39. A computer-readable medium comprising instructions to cause a processor to:
-
receive a base schema defining a class of elements that conform to a data description language; receive a constraint template that defines requirements for instances of the elements, wherein the constraint template does not conform to an XML Schema Definition (XSD); dynamically generate schema information based on the base schema and the constraint template; receive an XML document having an instance of one of the elements defined by the base schema, and wherein the instance is of the class defined by the base schema and not a derived class; verify that the instance of the class conforms to the class as defined by the base schema; and verify that the instance complies with the requirements defined by the constraint template.
-
-
40. A computer system comprising:
-
a base schema defining a class of elements that conform to a data description language; a hierarchy of constraint templates having at least one parent constraint template and at least one child constraint template that controls generation of additional schema information from the schema; and a schema generator executing on the computer system to dynamically generate schema information based on the base schema and the hierarchy of constraint templates, wherein the constraint templates define requirements fix instances of the elements without conforming to an XML Schema Definition (XSD), and the requirements of the child constraint template limit the requirements of the parent constraint template without conforming to an (XSD). - View Dependent Claims (41)
-
Specification