# US 9,436,662 B1 · Method and apparatus for extensibility of user interface binding definitions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,436,662 B1
- Document ID: US9436662B1
- Status: Granted
- Kind: B1
- Application number: 14/594,352
- Filed: 2015-01-12
- Granted: 2016-09-06
- Earliest claimed: 2001-06-29
- Assignees: Versata Development Group, Inc.
- Applicants: Versata Development Group, Inc.
- Inventors: Shari Gharavy; Brian L. Blount
- Web page: https://patentgrep.com/patent/US9436662B1

## CPC

- G06F 40/154: Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
- G06F 8/51: Source to source
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 40/166: Editing, e.g. inserting or deleting
- G06F 40/253: Grammatical analysis; Style critique
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Embodiments create a binding specifications file that is compatible with a user interface application from a grammar rich XML file. The grammar rich XML file uses a complex DTD for transformation. The complex DTD may be prone to error if created by the user, therefore, the complex DTD file is automatically created from a schema definition provided by the user or user's agent. The user or user's agent defines a schema for the desired grammar level. Through a series of XSL transformations, the complex DTD file is created. Also, a stylesheet used for transforming the grammar rich XML file is automatically created. The grammar rich XML file provided by the user conforms to the automatically created complex DTD file. Thus, the grammar used in defining bindings of a user interface application is extensible without any requirement to enrich and recompile the application anytime an extension of the language is desired.

## Claims

### Claim 1

A method for extensibility of binding definitions for an application comprising:
executing a program by a computer system that transforms the computer system into a machine that performs:
obtaining a framework having definitions of a first set of rules for a first grammar level used for interpretation of binding specifications to bind a user interface object to an underlying object, wherein the application is incompatible with the first grammar level;
performing a first transformation of the framework to generate the first set of rules for interpretation of the binding specifications in the first grammar level;
performing a second transformation of the framework to generate a first presentation style for the first grammar level;
obtaining the binding specifications in the first grammar level, the binding specification conforming to the first set of rules; and
applying the first set of rules and the first presentation style to the binding specification to generate output binding specifications in a second grammar level compatible with the application.

### Claim 2 (depends on 1)

The method of claim 1, wherein the obtaining a framework comprises:
obtaining at least one file having contents comprising grammar definitions conforming to a second set of rules; and
transforming the contents of the at least one file into the framework using a second presentation style conforming to the framework.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first transformation is in accordance with a third presentation style.

### Claim 4 (depends on 1)

The method of claim 1, wherein the second transformation is in accordance with a fourth presentation style.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first grammar level of the binding specifications is extensible.

### Claim 6 (depends on 1)

The method of claim 1, wherein the second grammar level compatible with the application is fixed.

### Claim 7 (depends on 1)

The method of claim 1, wherein the binding specifications are defined by a user in extensible markup language (XML).

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
performing, by the programmed computer system:
passing the output binding specifications as input to the application.

### Claim 9

A non-transitory, computer readable medium that includes code stored therein and executable by one or more data processors to configure a computer system into a machine for generating a computer readable document utilized for input into an application by:
obtaining a framework having definitions of a first set of rules for a first grammar level used for interpretation of binding specifications to bind a user interface object to an underlying object, wherein the application is incompatible with the first grammar level;
performing a first transformation of the framework to generate the first set of rules for interpretation of the binding specifications in the first grammar level;
performing a second transformation of the framework to generate a first presentation style for the first grammar level;
obtaining the binding specifications in the first grammar level, the binding specification conforming to the first set of rules; and
applying the first set of rules and the first presentation style to the binding specification to generate the computer readable document having the output binding specifications in a second grammar level compatible with the application.

### Claim 10 (depends on 9)

The computer readable medium of claim 9, wherein the obtaining a framework comprises:
obtaining at least one file having contents comprising grammar definitions conforming to a second set of rules; and
transforming the contents of the at least one file into the framework using a second presentation style conforming to the framework.

### Claim 11 (depends on 9)

The computer readable medium of claim 9, wherein the first transformation is in accordance with a third presentation style.

### Claim 12 (depends on 9)

The computer readable medium of claim 9, wherein the second transformation is in accordance with a fourth presentation style.

### Claim 13 (depends on 9)

The computer readable medium of claim 9, wherein the first grammar level of the binding specifications is extensible.

### Claim 14 (depends on 9)

The computer readable medium of claim 9, wherein the second grammar level compatible with the application is fixed.

### Claim 15 (depends on 9)

The computer readable medium of claim 9, wherein the binding specifications are user defined in extensible markup language (XML).

### Claim 16

An apparatus comprising:
one or more data processors; and
a memory, coupled to the processor that includes code stored therein and executable by the one or more first data processors to configure a computer system into a machine for generating a computer readable document utilized for input into an application by:
obtain a framework having definitions of a first set of rules for a first grammar level used for interpretation of binding specifications to bind a user interface object to an underlying object, wherein the application is incompatible with the first grammar level;
perform a first transformation of the framework to generate the first set of rules for interpretation of the binding specifications in the first grammar level;
perform a second transformation of the framework to generate a first presentation style for the first grammar level;
obtain the binding specifications in the first grammar level, the binding specification conforming to the first set of rules; and
apply the first set of rules and the first presentation style to the binding specification to generate the computer readable document having the output binding specifications in a second grammar level compatible with the application.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein to obtain a framework comprises:
obtaining at least one file having contents comprising grammar definitions conforming to a second set of rules; and
transforming the contents of the at least one file into the framework using a second presentation style conforming to the framework.

### Claim 18 (depends on 16)

The computer readable medium of claim 16, wherein the first transformation is in accordance with a third presentation style.

### Claim 19 (depends on 16)

The computer readable medium of claim 16, wherein the second transformation is in accordance with a fourth presentation style.

### Claim 20 (depends on 16)

The computer readable medium of claim 16, wherein the first grammar level of the binding specifications is extensible.

### Claim 21 (depends on 16)

The computer readable medium of claim 16, wherein the second grammar level compatible with the application is fixed.

### Claim 22 (depends on 16)

The computer readable medium of claim 16, wherein the binding specifications are user defined in extensible markup language (XML).

### Claim 23 (depends on 16)

The computer readable medium of claim 16, further comprising computer program code configured to cause the computer system to:
pass the output binding specifications as input to the application.

### Claim 24

An apparatus for simplifying binding specifications provided to a computer program and generating a computer readable document utilized for input into an application, the apparatus comprising:
means for obtaining a framework having definitions of a first set of rules for a first grammar level used for interpretation of binding specifications to bind a user interface object to an underlying object, wherein the application is incompatible with the first grammar level;
means for performing a first transformation of the schema to generate the first set of rules for interpretation of the binding specifications in the first grammar level;
means for performing a second transformation of the framework to generate a first presentation style for the first grammar level;
means for obtaining binding specifications in the first grammar level, the binding specification conforming to the first set of rules; and
means for applying the first set of rules and the first presentation style to the binding specification to generate the computer readable document having the output binding specifications in a second grammar level compatible with the application.

### Claim 25 (depends on 24)

The apparatus of claim 24, wherein the means for obtaining a framework comprises:
means for obtaining at least one file having contents comprising grammar definitions conforming to a second set of rules; and
means for transforming the contents of the at least one file into the schema using a second presentation style conforming to the schema.

### Claim 26 (depends on 24)

The apparatus of claim 24, wherein the first transformation is in accordance with a third presentation style.

### Claim 27 (depends on 24)

The apparatus of claim 24, wherein the second transformation is in accordance with a fourth presentation style.

### Claim 28 (depends on 24)

The apparatus of claim 24, wherein the first grammar level of the binding specifications is extensible.

### Claim 29 (depends on 24)

The apparatus of claim 24, wherein the second grammar level compatible with the application is fixed.

### Claim 30 (depends on 24)

The apparatus of claim 24, wherein the binding specifications are user defined in extensible markup language (XML).

### Claim 31 (depends on 24)

The apparatus of claim 24, further comprising:
means for passing the output binding specifications as input to the application.
