IP Library › Granted Patent US 8,037,408
Granted Patent B2
US 8,037,408 · App. 11/315,891 · Granted Oct 11, 2011

Systems and methods of validating templates

Assignee: SAP AG
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,037,408
App. No.
11/315,891
Granted
Oct 11, 2011
Kind
B2
Abstract

Embodiments of the present invention provide systems and methods of validating templates. One embodiment the present invention includes a computer-implemented method validating a template comprising receiving a target language schema, receiving a placeholder schema, generating a template schema that is based on the target schema and the placeholder schema, and validating the template against the template schema. If the template conforms to the template schema and if the template is instantiated, the instantiated template will conform to the target language schema.

Claims (40)

1. A computer-implemented method for validating a template comprising:

receiving a target language schema;

receiving a placeholder language schema;

generating a template schema that is based on the target language schema and the placeholder language schema;

validating the template against the template schema, wherein the template includes placeholders, and wherein the placeholder language schema constrains placeholders in the template; and

instantiating the template, after the template is validated, to produce a document if the template conforms to the template schema

wherein the template schema comprises one or more upfront constraints and one or more instantiation constraints,

wherein the upfront constraints are imposed upon the template during validation of the template before an instantiation, and

wherein the instantiation constraints are imposed upon the template during the instantiation.

2. The method of claim 1 wherein if the template conforms to the template schema and if the template is instantiated, the instantiated template will conform to the target language schema.

3. The method of claim 1 wherein the template schema is an Extensible Markup Language (XML) schema.

4. The method of claim 3 wherein the XML schema is enhanced using an object constraint language.

5. The method of claim 1 wherein the target language schema contains constraints, and wherein all of the constraints of the target language schema are preserved in the template schema.

6. The method of claim 1 wherein generating the template schema comprises transforming simple types into complex types.

7. A computer system comprising:

at least one computer;

a schema compiler, executing on said at least one computer, for generating a template schema based on a target language schema and a placeholder language schema;

a template validator, executing on said at least one computer, for validating the template against the template schema, wherein the template includes placeholders, and wherein the placeholder language schema constrains placeholders in the template; and

a template engine, executing on said at least one computer, for instantiating a template, after the template is validated, to produce a document if the template conforms to the template schema,

wherein the template schema comprises one or more upfront constraints and one or more instantiation constraints,

wherein the upfront constraints are imposed upon the template during validation of the template before an instantiation, and

wherein the instantiation constraints are imposed upon the template during the instantiation.

8. The computer system of claim 7 wherein if the template conforms to the template schema and if the template is instantiated, the instantiated template will conform to the target language schema.

9. The computer system of claim 7 wherein the template schema is an Extensible Markup Language (XML) schema.

10. The computer system of claim 9 wherein the XML schema is enhanced using an object constraint language.

11. The computer system of claim 7 wherein the target language schema contains constraints, and wherein all of the constraints of the target language schema are preserved in the template schema.

12. The computer system of claim 7 wherein the compiler transforms simple types into complex types.

13. A non-transitory computer-readable storage medium containing instructions for controlling a computer system to perform a method for validating a template, the method comprising:

receiving a target language schema;

receiving a placeholder language schema;

generating a template schema that is based on the target language schema and the placeholder language schema;

validating the template against the template schema, wherein the template includes placeholders, and wherein the placeholder language schema constrains placeholders in the template; and

instantiating the template, after the template is validated, to produce a document if the template conforms to the template schema,

wherein the template schema comprises one or more upfront constraints and one or more instantiation constraints,

wherein the upfront constraints are imposed upon the template during validation of the template before an instantiation, and

wherein the instantiation constraints are imposed upon the template during the instantiation.

14. The computer-readable storage medium of claim 13 wherein the target language schema contains constraints that are imposed on the template, and wherein all of the constraints of the target language schema are preserved in the template schema.

15. The computer-readable storage medium of claim 13 wherein the template schema is an Extensible Markup Language (XML) schema.

16. The computer-readable storage medium of claim 15 wherein the XML schema is enhanced using an object constraint language.

17. The computer-readable storage medium of claim 13 wherein the template schema generating comprises transforming simple types into complex types.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2005
From: HARTMANN, FALK
To: SAP AG
Reel/Frame 017382/0497 →
Continuity (1)
Related Publication 20070150806A1 · Jun 28, 2007