Entity is the most basic form to work with and it's defined by the relationships it supports, and can be constructed by executing actions supported by the entity.
The actions become available as a result of enhancing the entity by way of adding a relationship to it. The actions can be listed by calling listActions on the entity.
The core, out of the box x10d entity is built by bootstrapping a special relationship (isRelatedThrough) which adds relationships support through three actions: "[add, remove, list]Relation".
Note that each relation being added can add any number of actions. An action can be added by multiple relations, in which case executing the action will be dispatched to all interested relations. ??? Some relations are hierarchical, some not.
Relationships are mainly used to organize the way entities connect to each other and they achieve that by defining a list of references to other entities.
The "has" relation for example - is responsible for defining and managing the structure and content of an entity. It does so by referring to its components (commonly referred as fields) as part of a list of entity references. It is important to note that the reference is to an entity, which is a first class citizen, public entity in the system, not a private detail of a "parent" of sorts.
Out of the box, in addition to the isRelatedThrough special relationship that provides the core relationship support(the special aspect of the isRelatedThrough is due to its self referring nature, requiring it to be bootstrapped), there are 4 hierarchical relations provided for entity:
canBeA and isHadBy provide back references for the other 2.
Entities are not persistent, cannot be updated once they're saved(they're sealed). Other higher forms are. This is to simplify the work required to maintain the updates from the inherited entities point of view. However other higher level forms(document) will support edits/updates, through the use of versioning, among other things.
The "isA" relation is responsible for managing inheritance. Keep in mind that this is done for the purpose of interactive building of entities so the creation of an entity is a multistep process(new, edit, save,..).