00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef OXS_AXIOM_H
00019 #define OXS_AXIOM_H
00020
00026 #include <axis2_defines.h>
00027 #include <axutil_env.h>
00028 #include <axis2_util.h>
00029 #include <axiom_node.h>
00030
00031 #ifdef __cplusplus
00032 extern "C"
00033 {
00034 #endif
00035
00050 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00051 oxs_axiom_add_attribute(
00052 const axutil_env_t *env,
00053 axiom_node_t* node,
00054 axis2_char_t* attribute_ns,
00055 axis2_char_t* attribute_ns_uri,
00056 axis2_char_t* attribute,
00057 axis2_char_t* value);
00058
00068 AXIS2_EXTERN int AXIS2_CALL
00069 oxs_axiom_get_number_of_children_with_qname(
00070 const axutil_env_t *env,
00071 axiom_node_t* parent,
00072 axis2_char_t* local_name,
00073 axis2_char_t* ns_uri,
00074 axis2_char_t* prefix);
00075
00083 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00084 oxs_axiom_get_node_by_local_name(
00085 const axutil_env_t *env,
00086 axiom_node_t *node,
00087 axis2_char_t *local_name);
00088
00099 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00100 oxs_axiom_get_node_by_id(
00101 const axutil_env_t *env,
00102 axiom_node_t *node,
00103 axis2_char_t *attr,
00104 axis2_char_t *val,
00105 axis2_char_t *ns);
00106
00116 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00117 oxs_axiom_get_attribute_value_of_node_by_name(
00118 const axutil_env_t *env,
00119 axiom_node_t *node,
00120 axis2_char_t *attribute_name,
00121 axis2_char_t *ns);
00122
00131 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00132 oxs_axiom_get_attribute_val_of_node_by_qname(
00133 const axutil_env_t *env,
00134 axiom_node_t *node,
00135 axutil_qname_t *qname);
00136
00147 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00148 oxs_axiom_get_first_child_node_by_name(
00149 const axutil_env_t *env,
00150 axiom_node_t* parent,
00151 axis2_char_t* local_name,
00152 axis2_char_t* ns_uri,
00153 axis2_char_t* prefix);
00154
00161 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00162 oxs_axiom_get_node_content(
00163 const axutil_env_t *env,
00164 axiom_node_t* node);
00165
00172 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00173 oxs_axiom_deserialize_node(
00174 const axutil_env_t *env,
00175 axis2_char_t* buffer);
00176
00185 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00186 oxs_axiom_check_node_name(
00187 const axutil_env_t *env,
00188 axiom_node_t* node,
00189 axis2_char_t* name,
00190 axis2_char_t* ns);
00191
00199 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00200 oxs_axiom_interchange_nodes(
00201 const axutil_env_t *env,
00202 axiom_node_t *node_to_move,
00203 axiom_node_t *node_before);
00204
00212 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00213 oxs_axiom_add_as_the_first_child(
00214 const axutil_env_t *env,
00215 axiom_node_t *parent,
00216 axiom_node_t *child);
00217
00230 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00231 oxs_axiom_get_first_node_by_name_and_attr_val(
00232 const axutil_env_t *env,
00233 axiom_node_t *node,
00234 axis2_char_t *e_name,
00235 axis2_char_t *e_ns,
00236 axis2_char_t *attr_name,
00237 axis2_char_t *attr_val,
00238 axis2_char_t *attr_ns);
00239
00253 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00254 oxs_axiom_get_first_node_by_name_and_attr_val_from_xml_doc(
00255 const axutil_env_t *env,
00256 axiom_node_t *node,
00257 axis2_char_t *e_name,
00258 axis2_char_t *e_ns,
00259 axis2_char_t *attr_name,
00260 axis2_char_t *attr_val,
00261 axis2_char_t *attr_ns);
00262
00269 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00270 oxs_axiom_clone_node(
00271 const axutil_env_t *env,
00272 axiom_node_t *node);
00273
00275 #ifdef __cplusplus
00276 }
00277 #endif
00278
00279 #endif