Yacc Form of grammar BLD.grm


Copyright © 2008 ILOG, Inc.; All Rights Reserved.

This yacc grammar was generated on Mon Nov 17 15:35:40 PST 2008 from the annotated Jacc grammar file BLD.grm.


Document
	: IriMeta_opt DOCUMENT OPENPAR Base_opt Prefix_star DocumentBody CLOSEPAR 
	;

Base
	: BASE OPENPAR Iri CLOSEPAR 
	;

Prefix
	: PREFIX OPENPAR Name Iri CLOSEPAR 
	;

DocumentBody
	: Import_star Group_opt 
	;

Import
	: IriMeta_opt IMPORT OPENPAR IriConst Profile_opt CLOSEPAR 
	;

Group
	: IriMeta_opt GROUP OPENPAR RuleOrGroup_star CLOSEPAR 
	;

RuleOrGroup
	: Rule 
	| Group 
	;

Rule
	: Clause 
	| QuantifiedClause 
	;

QuantifiedClause
	: IriMeta_opt FORALL Var_plus OPENPAR Clause CLOSEPAR 
	;

Clause
	: AtomicFormula 
	| Implies 
	;

Implies
	: IriMeta_opt Consequent IF Antecedent 
	;

Consequent
	: AtomicFormula 
	| AND OPENPAR AtomicFormula_star CLOSEPAR 
	;

Antecedent
	: Formula 
	;

Profile
	: Term 
	;

Base_opt
	: /* empty */
	| Base 
	;

Prefix_star
	: /* empty */
	| Prefix_star Prefix 
	;

Import_star
	: /* empty */
	| Import_star Import 
	;

Profile_opt
	: /* empty */
	| Profile 
	;

Group_opt
	: /* empty */
	| Group 
	;

RuleOrGroup_star
	: /* empty */
	| RuleOrGroup_star RuleOrGroup 
	;

AtomicFormula_star
	: /* empty */
	| AtomicFormula_star AtomicFormula 
	;

IriMeta
	: OPENMETA IriConst_opt IriMetaBody_opt CLOSEMETA 
	;

IriMetaBody
	: Frame 
	| AND OPENPAR Frame_star CLOSEPAR 
	;

Formula
	: IriMeta_opt RawFormula 
	;

RawFormula
	: AtomicFormula 
	| AND OPENPAR Formula_star CLOSEPAR 
	| OR OPENPAR Formula_star CLOSEPAR 
	| EXISTS Var_plus OPENPAR Formula CLOSEPAR 
	| EXTERNAL OPENPAR AtomOrFrame CLOSEPAR 
	;

AtomicFormula
	: Atom 
	| Equal 
	| Member 
	| Subclass 
	| Frame 
	;

AtomOrFrame
	: Atom 
	| Frame 
	;

Atom
	: UniTerm 
	;

UniTerm
	: Const OPENPAR UniTermBody CLOSEPAR 
	;

Equal
	: Term EQUAL Term 
	;

Member
	: Term MEMBER Term 
	;

Subclass
	: Term SUBCLASS Term 
	;

Frame
	: Term OPENBRA FrameAttribute_star CLOSEBRA 
	;

FrameAttribute
	: Term ARROW Term 
	;

Term
	: IriMeta_opt RawTerm 
	;

RawTerm
	: Const 
	| Var 
	| Expr 
	| EXTERNAL OPENPAR Expr CLOSEPAR 
	;

Expr
	: UniTerm 
	;

Const
	: FullyQualifiedConstant 
	| ConstShort 
	;

FullyQualifiedConstant
	: STRING LEXSPACE SymSpace 
	;

SymSpace
	: Curie 
	;

ConstShort
	: NUMBER 
	| STRING 
	| LOCALNAME 
	| ANGLEBRACKETIRI 
	| Curie 
	;

Var
	: VARIABLE 
	;

UniTermBody
	: TermArgument_star 
	;

TermArgument
	: Term 
	;

Var_plus
	: Var 
	| Var_plus Var 
	;

IriMeta_opt
	: /* empty */
	| IriMeta 
	;

IriConst_opt
	: /* empty */
	| IriConst 
	;

IriMetaBody_opt
	: /* empty */
	| IriMetaBody 
	;

Formula_star
	: /* empty */
	| Formula_star Formula 
	;

TermArgument_star
	: /* empty */
	| TermArgument TermArgument_star 
	;

Frame_star
	: /* empty */
	| Frame_star Frame 
	;

FrameAttribute_star
	: /* empty */
	| FrameAttribute_star FrameAttribute 
	;

Name
	: IDENTIFIER 
	;

Iri
	: STRING 
	;

IriConst
	: FullyQualifiedConstant 
	;

Curie
	: IDENTIFIER 
	| COLON IDENTIFIER 
	| IDENTIFIER COLON IDENTIFIER 
	;

RifDocument
	: Document 
	;


Copyright © 2008 ILOG, Inc.; All Rights Reserved.