Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: dsl/business/birt/classic/extracted
Source used for this grammar: Hugo Brunelière, ClassicModels BIRT Sample database, ClassicModels.ecore
, 2007/02/16
AddressInfo
, Date
, ClassicModels
, ProductLine
, Product
, Office
, Employee
, Customer
, Payment
, Order
, OrderDetail
, String
, Integer
), 0 root (—), 1 top (AddressInfo
), 1 bottom (Double
5).[year]
, [month]
, [day]
, [offices]
, [productLines]
, [customers]
, [productLineOwner]
, [products]
, [name]
3, [textDescription]
, [htmlDescription]
, [productLine]
, [code]
2, [scale]
, [vendor]
, [description]
, [quantityInStock]
, [buyPrice]
, [MSRP]
, [officeOwner]
, [employees]
, [territory]
, [office]
, [number]
3, [employeeCustomers]
, [lastName]
, [firstName]
, [extension]
, [email]
, [reportsTo]
, [jobTitle]
, [customerOwner]
, [orders]
, [payments]
, [salesRepEmployee]
, [contactLastName]
, [contactFirstName]
, [creditLimit]
, [customer]
2, [checkNumber]
, [date]
2, [amount]
, [orderDetails]
, [requiredDate]
, [shippedDate]
, [status]
, [comments]
, [order]
, [product]
, [quantityOrdered]
, [priceEach]
.AddressInfo ::= Office
AddressInfo ::= Customer
Date ::= [year]::Integer [month]::Integer [day]::Integer
ClassicModels ::= [offices]::Office[productLines]::ProductLine [customers]::Customer
ProductLine ::=
[productLineOwner]::ClassicModels [products]::Product
[name]::String [textDescription]::String [htmlDescription]::StringProduct ::= [productLine]::ProductLine [code]::String [name]::String [scale]::String [vendor]::String [description]::String [quantityInStock]::Integer [buyPrice]::Double [MSRP]::Double
Office ::=
[officeOwner]::ClassicModels [code]::String [employees]::Employee
[territory]::StringEmployee ::=
[office]::Office [number]::Integer [employeeCustomers]::Customer
[lastName]::String [firstName]::String [extension]::String [email]::String [reportsTo]::Employee [jobTitle]::StringCustomer ::= [customerOwner]::ClassicModels [number]::Integer [orders]::Order[payments]::Payment [salesRepEmployee]::Employee [name]::String [contactLastName]::String [contactFirstName]::String [creditLimit]::Double
Payment ::= [customer]::Customer [checkNumber]::String [date]::Date [amount]::Double
Order ::=
[customer]::Customer [orderDetails]::OrderDetail
[number]::Integer [date]::Date [requiredDate]::Date [shippedDate]::Date [status]::String [comments]::StringOrderDetail ::= [order]::Order [product]::Product [quantityOrdered]::Integer [priceEach]::Double
String ::= string
Integer ::= integer