Web services choreography pertains to the public protocol of a Web service, describing the nature and order of messages exchanged between a Web service and its consumers or peers. Choreography has been proposed as a layer to fill the gap among existing orchestration technologies. WSCI (Web Services Choreography Interface), was proposed by BEA and Sun as a specification aimed at describing the flow of messages among interacting Web services.
Web services orchestration, on the other hand, pertains to the private implementation of a Web service, i.e. describing and executing the interactions and flow among Web services to form collaborative processes or (long-running) business transactions. The most recent orchestration specification, BPEL4WS, was brought forward jointly by IBM and Microsoft, consolidating earlier efforts by the respective vendors.
To a certain extent, orchestration takes the bottom-up view while choreography takes the top-down view. However, these two viewpoints are likely to converge, ultimately resulting in a consistent set of standards that describe both aspects of Web service interactions, a direction the BPEL4WS specification is already taking.