Each composite instance is of a particular CompositeType. That is an interface, which inherits a subtype of org.qi4j.composite.Composite, known as a Composite Meta Type, and typically a domain interface. Example;
public interface BankAccountComposite extends BankAccount, EntityComposite{}public interface BankAccount
{
Money checkBalance();
}
In the above example the CompositeType is the BankAccountComposite which is a subtype of BankAccount and EntityComposite.