Appeal No. 2007-0695 Page 5 Application No. 09/837,041 The CBL creates a single source from which almost all of the pieces of a system can be automatically generated by a compiler. The CBL works by extending SGML/XML, which is normally used to formally define the structures of particular document types, to include specification of the semantics associated with each information element and attribute. The limited set of (mostly) character types in SGML/XML can be extended to declare any kind of datatype. Here is a fragment from the CBL definition for the "datetime" module: ______________________________________ - datetime.mod Version: 1.0 --> <!-- Copyright 1998 Veo Systems, Inc. --> . . . <!ELEMENT year (#PCDATA)> <!ATTLIST year schema CDATA #FIXED "urn:x-veosystems:stds:iso:8601:3.8" <!ELEMENT month (#PCDATA)> <!ATTLIST month schema CDATA #FIXED "url:x-veosystems:stds:iso:8601:3.12" > . . . ______________________________________ In this fragment, the ELEMENT "year" is defined as character data, and an associated "schema" attribute, also character data, defines the schema for "year" to be section 3.8 of the ISO 8601 standard. This "datetime" CBL module is in fact defined as an instance of the Schema DTD. First, the module name is defined. Then the "datetime" element "YEAR" is bound to the semantics of ISO 8601: ______________________________________ <!DOCTYPE SCHEMA SYSTEM "schema.dtd"> <SCHEMA><H1>Date and Time Module</H1> . . . <ELEMNTTYPE NAME="year"DATATYPE="YEAR"><MODEL> <STRINGPage: Previous 1 2 3 4 5 6 7 8 9 10 Next
Last modified: September 9, 2013