generating electronic and printed invoices & reminders
The following paragraphs defines the concepts of object reference, object reference chain, and topmost object reference. These concepts are of high importance within the XML request/response system.
An object reference is an identification of an individual XML request defined by a unique triple of data, namely
Each and every XML request of version 4.3 is defined by such an object reference. All XML responses are replies to the object reference of the corresponding request.
- timestamp (UNIX time) defined at the moment of generation
- date of the object defined by the provider
- id of the object defined by the provider
Thus the object reference is a clustered primary key of the request/response system!
|object reference chain|
As a consequence of the XML schema coded business logic most XML request schemas define more than just 1 object reference, e.g. a "GeneralInvoiceResponse" can hold a maximum of 3 object references, namely
This set of object references by itself defines an ordered object reference chain (e.g. credit -> invoice -> reminder) with the topmost object reference as unique identification of the XML request. Therefore the object reference chain defines -on business logic point of view- dependencies among different XML requests.
- an optional credit object reference from the "General Credit Request" process
- a mandatory invoice object reference from the "General Invoice Request" process
- an optional reminder object reference given if the process encodes a reminder!
|topmost object reference|
The end node of an object reference chain is defined as topmost object reference, that is by definition the object reference of the XML request itself. Each request/response communication is always done for this topmost object reference and only for that.
For example: a reminder XML request does reference an optional credit XML request, if that object reference was given in the initial invoice XML request. However, the reference of the initial invoice XML request for which a reminder process is started, is mandatory. The topmost object reference is then the object reference of the generated reminder process. Each XML response than references the topmost object reference for which it is a response. Such a response is never targeted for the corresponding invoice but only for the reminder!