This chapter provides a high-level overview of CDL and the criteria for valid, executable rule definitions.
This chapter covers the following topics:
The Constraint Definition Language (CDL) is a modeling language. CDL allows you to define configuration rules, the constraining relationships among items in configuration models, by entering them as text. A rule defined in CDL is an input string of characters that is stored in the CZ schema of the Oracle Applications database, validated by a parser, translated into executable code by a compiler, and interpreted at runtime by Oracle Configurator.
You use CDL to define a Statement Rule in Oracle Configurator Developer by entering the rule’s definition as text rather than interactively assembling the rule’s elements. Because you use CDL to define them, Statement Rules can express more complex constraining relationships than interactively defined configuration rules.
For information about creating Statement Rules in Configurator Developer, see the overview of Statement Rules section, Oracle Configurator Developer User's Guide.
CDL also supports writing rules in rule-writing environments other than Configurator Developer for the purpose of importing rules directly into the CZ schema. For details about the availability of this functionality, see the Oracle Configurator Implementation Guide.
Using CDL, you can define the following relationships that are supported by the rules available in Oracle Configurator Developer:
The other types of relationships that can be defined in Configurator Developer (Explicit Compatibility Rules and Design Charts) cannot be expressed in CDL.
For more information about the kinds of relationships that are supported in CDL, see Kinds of Relationships or Constraints Available in CDL.
The table Terminology Used in This Book describes the terms that are used throughout this guide. For a description of the Model that is used for all of the examples in this guide, see The House Model and its Window Submodel.
Additional terms are listed in the Glossary.
CDL Statement Syntax Notation describes the valid statement syntax notation for CDL. The table lists the available symbols and provides a description of each. This notation is used throughout this book for CDL examples and in the syntax reference in Notation Used in Presenting CDL Grammar.
In the examples in this book, an implied carriage return occurs at the end of each line, unless otherwise noted. You must press the Enter key at the end of a line of input. The table below lists the typographic and symbol conventions used in this book, such as ellipses, bold face, italics.
Convention | Meaning |
---|---|
. . . |
Vertical ellipsis points in an example mean that information not directly related to the example has been omitted. |
. . . | Horizontal ellipsis points in statements or commands mean that parts of the statement or command not directly related to the example or relevant to the discussion have been omitted |
boldface text | Boldface type in text indicates a new term, a term defined in the glossary, specific keys, and labels of user interface objects. Boldface type also indicates a menu, command, or option, especially within procedures |
italics | Italic type in text, tables, or code examples indicates user-supplied text. Replace these placeholders with a specific value or string. |
[ ] | Brackets enclose optional clauses from which you can choose one or none. |
> | The left bracket alone represents the MS DOS prompt. |
$ | The dollar sign represents the DIGITAL Command Language prompt in Windows and the Bourne shell prompt in Digital UNIX. |
% | The per cent sign alone represents the UNIX prompt. |
name() | In text other than code examples, the names of programming language methods and functions are shown with trailing parentheses. The parentheses are always shown as empty. For the actual argument or parameter list, see the reference documentation. This convention is not used in code examples. |