International treaties distinguish very carefully between binding obligations and commitments and undertakings. They use different language. A binding obligation will use the word “shall”, as in “states shall do x, y, and z”. Otherwise, it would be “states undertake to” or “states are encouraged to”. The language differs.
On December 3rd, 2013. See this statement in context.