Sha256: 49346f8c28c062cb5d6f1d535dcc21d30496bc19128b048ebda6202352f39768

Contents?: true

Size: 743 Bytes

Versions: 2

Compression:

Stored size: 743 Bytes

Contents

vocabulary JoinEquality;

/*
 * Value Types
 */
Event Id is written as Auto Counter;
Number is written as Unsigned Integer(16);
Reserve is written as String(20);
Row is written as Char(2);
Venue Id is written as Auto Counter;

/*
 * Entity Types
 */
Event is identified by its Id;

Venue is identified by its Id [independent];
Event is held at one Venue;

Seat is identified by Venue and Reserve and Row and Number [independent] where
	Seat is at one Venue,
	Seat is in one Reserve,
	Seat is in one Row,
	Seat has one Number;

Ticket is identified by Event and Seat where
	Ticket is for one Event,
	Ticket is for one Seat;

/*
 * Constraints:
 */
Ticket is for Seat that is at Venue
	if and only if
	Ticket is for Event that is held at Venue;

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
activefacts-0.8.9 examples/CQL/JoinEquality.cql
activefacts-0.8.8 examples/CQL/JoinEquality.cql