.Open Conjectural Structure of Rational Rose mdl Files . Syntax This is specifies a context free super-set of the actual possibilities. file ::=#object, -- or paerhaps #value value::= element | compound_value . element::= boolean | string | integer | floating_point | ... . compound_value::= text_block | comma_list | value_list | list_list | object_list. boolean::= "TRUE" | "FALSE". text_block::= # (eoln "|" #non_eoln ). comma_list::= "(" element #(ows "," ows element ) ")". value_list::= "(" "value" #(ws element) ")". list_list::= "(" "list" #(ws element) ")". object_list::= "(" "object" ws type_name ws $O(value) eoln #(ws named_value eoln) named_value ")". named_value::= name ws value. name::=identifier ~ type. type_name:: @identifier. . Lexicon string::= $C.string. identifier::= $C.identifer. integer::= $C.decimal_integer | ... . floating_point::= decimal_integer "." decimal_integer. ws::= white_space_character #white_space_character. ows::= $O(ws). eoln::=eoln_character #(eoln_character | ws). non_eoln::= char ~ eoln_character. . Objects The type of the object determines the values and named_values that may/can/will be given to it: For t:$type, object(t)::= "(" "object" ws t.tname(t) ws t.pvalue eoln #(ws t.nvalue eoln) t.nvalue ")". types::= $ $Net{ tname:type_name, pvalue:$O(value_types), values:name->value_type, name:=cor(values), nvalue:=|[n:names](name syntax(values(n))) }. type::@$type = following, .Table tname:type_name pvalue:$O(value_type) values:names->value_type .Row "Petal" - "version"+>vstring .Row "Design" $vstring "is_unit"+>$vboolean | "is_loaded"+>$vboolean | ... .Close.Table value_types::= $ $Net{name:value_type, syntax:@string, ... }. value_type::@value_types= defined_terms folllowing, .Net vstring::= the $value_type with syntax=$string. vboolean::=the $value_type with syntax=$boolean .Close.Net . Notation Net::=`a description of a constrained set of structured objects` C::=http://www/dick/samples/c.syntax.html. O::=`optional (_)`. #::=`zero or more of (_)` .Close Conjectural Structure of Rational Rose mdl Files