Most applications need to integrate with other apps in the enterprise. To facilitate such integration scenarios, Apache Isis defines a number of standard XSD schemas:
the metamodel schema, which allows the internal metamodel to be exported in a canonical fashion
the command schema, which captures the intention of a user to invoke an action or edit a property
the interaction execution schema, which captures the actual execution of an action invocation/property edit
the changes schema, which captures which objects have been created, updated or deleted as the result of an execution of an action invocation/property edit
These each use XSD types defined by the common schema (most notably the
oidDto complex type which identifies a domain object).
The Command Log extension and Outbox Publisher implementation use these schemas to reify corresponding applib objects (
PublishedObjects), either to persist or publishing using an Apache ActiveMQ message queue.
The sections below discuss these schemas in more detail.