i have a big confusion trying to realize the distinction between BPEL and WS-Addressing , and my question is if i can do asynchronous messaging using WS-Addressing and each Message can tell independently what comes after it, isn't this choreography .
If there were confusion, I would not blame too much on anybody. It is such an edifice and that many jargon...
http://en.wikipedia.org/wiki/Business_Process_Execution_Language
BPEL is an orchestration language, and not a choreography language. The primary difference between orchestration and choreography is executability and control. An orchestration specifies an executable process that involves message exchanges with other systems, such that the message exchange sequences are controlled by the orchestration designer. A choreography specifies a protocol for peer-to-peer interactions, defining, e.g., the legal sequences of messages exchanged with the purpose of guaranteeing interoperability. Such a protocol is not directly executable, as it allows many different realizations (processes that comply with it). A choreography can be realized by writing an orchestration (e.g., in the form of a BPEL process) for each peer involved in it. The orchestration and the choreography distinctions are based on analogies: orchestration refers to the central control (by the conductor) of the behavior of a distributed system (the orchestra consisting of many players), while choreography refers to a distributed system (the dancing team) which operates according to rules (the choreography) but without centralized control.
So in a sense, even if that's already choreography in some sense, that differs from bpel in term of its setting up the orchestration goal. WS-BPEL and WS-CDL are some kind of superstructure on top of basic profile, wsdl, addressing etc etc... So in this sense again:
bottom line does WS-Addressing replace BPEL somehow
it has never been the question.