50 va_start( args, msg ) ;
52 vsnprintf( mymsg,
sizeof mymsg, msg, args ) ;
53 vector<string> *myerrors = (vector<string> *)context ;
54 myerrors->push_back( mymsg ) ;
73 if( node->properties == NULL )
78 xmlAttr *curr_prop = node->properties ;
81 string prop_name = (
char *)curr_prop->name ;
84 xmlNode *curr_val = curr_prop->children ;
85 if( curr_val && curr_val->content )
90 props[prop_name] = prop_val ;
92 curr_prop = curr_prop->next ;
108 map<string, string> &props )
112 name = (
char *)node->name ;
115 xmlNode *child_node = node->children ;
117 while( child_node && !done )
119 if( child_node->type == XML_TEXT_NODE )
121 if( child_node->content )
132 child_node = child_node->next ;
148 map<string, string> &child_props )
150 xmlNode *child_node = NULL ;
153 child_node = node->children ;
155 while( child_node && !done )
157 if( child_node->type == XML_ELEMENT_NODE )
161 child_value, child_props ) ;
165 child_node = child_node->next ;
183 map<string, string> &next_props )
187 child_node = child_node->next ;
189 while( child_node && !done )
191 if( child_node->type == XML_ELEMENT_NODE )
195 next_value, next_props ) ;
199 child_node = child_node->next ;
215 const string &child_name,
217 map<string, string> &child_props )
219 xmlNode *child_node = NULL ;
222 child_node = node->children ;
224 while( child_node && !done )
226 if( child_node->type == XML_ELEMENT_NODE )
228 string name = (
char *)child_node->name ;
230 if( name == child_name )
234 child_value, child_props ) ;
238 child_node = child_node->next ;
243 child_node = child_node->next ;