Sha256: f6a1ebb248371a13b19f0fd8d846e40ea0c36aa2db4925e54ebad59082251d18

Contents?: true

Size: 758 Bytes

Versions: 2

Compression:

Stored size: 758 Bytes

Contents

vocabulary Party;

/*
 * Value Types
 */
ID is written as Auto Counter;
Party ID is written as ID;
Party Type Code is written as String(16) restricted to {'Company', 'Person'};

/*
 * Entity Types
 */
Party is identified by its ID;

Party Type is identified by its Code;
Party is of one Party Type;

Person is a kind of Party [separate];

User is a kind of Person;

Company is a kind of Party [separate];

Superannuation Company is a kind of Company;

Teaching Institution is a kind of Company;

RTO is a kind of Teaching Institution;

/*
 * Constraints:
 */
either Party is a Person or Party is a Company but not both;
Party is a Company
	if and only if
	Party is of Party Type 'Company';
Party is a Person
	if and only if
	Party is of Party Type 'Person';

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
activefacts-examples-1.9.9 cql/PartyModel.cql
activefacts-examples-1.9.8 cql/PartyModel.cql