1. A non-transitory computer readable medium including program code for providing a message-based interface for performing a service part demand forecast service, the medium comprising: program code for receiving via a message-based interface derived from a common business object model, where the common business object model includes business objects having relationships that enable derivation of message-based interfaces and message packages, the message-based interface exposing at least one service as defined in a service registry and from a heterogeneous application executing in an environment of computer systems providing message-based services, a first message for querying service part demand forecasts in a supply chain management system according to particular criteria, the first message including a first message package derived from the common business object model and hierarchically organized as: a service part demand forecast supply chain management for approval by elements query message entity; and at a first hierarchical level within the first message package, a selection package, where the selection package includes, at a second hierarchical level within the first message package, a service part demand forecast supply chain management for approval by elements entity, where the service part demand forecast supply chain management for approval by elements entity includes, at a third hierarchical level within the first message package, a planning version identifier (ID), at least one selection by material internal ID, and at least one selection by supply planning area ID, where each selection by material internal ID includes, at a fourth hierarchical level within the first message package, an inclusion exclusion code, an interval boundary type code, and a lower boundary material internal ID, and where each selection by supply planning area ID includes, at the fourth hierarchical level within the first message package, an inclusion exclusion code, an interval boundary type code, and a lower boundary material internal ID; program code for processing the first message according to the hierarchical organization of the first message package, where processing the first message includes unpacking the first message package based on the common business object model; and program code for sending a second message to the heterogeneous application responsive to the first message, where the second message includes a second message package derived from the common business object model to provide consistent semantics with the first message package.