The API and the code looks excellent. It is better if you can submit test cases for the work done so far (I m sure you already have it.), so we can check how it is working.
In addition to that I have some comments mostly on the coding conventions. It is better you tied to that from the start
1. 4 spaces to indent
2. Even the internal functions typedefs, macros better have the prefix ( to be consistent with the the other places in axis2)
3. Use meaningful name for the struct variables ( for an example 'void *par1' in 'struct axiom_xpath_operation' is really confusing), at least you should have some comments here
4. use the block comments /**?. line comments // are not valid in ANCI C
5. It is better have validation part specially before accessing expressions like (context->expr->operation), you can do the validation one time in the entrance from the API.
6. Doc comment on the API function ( can be done later on)
You can find a axis2 coding convention doc here, http://ws.apache.org/axis2/c/coding_conventions.html. But I m not sure whether it is updated.