if (element->attributeSet)
{
setname = yaz_oid_to_string_buf(element->attributeSet,
if (element->attributeSet)
{
setname = yaz_oid_to_string_buf(element->attributeSet,
for (i = 0; i<element->value.complex->num_list; i++)
{
xmlNodePtr node = xmlNewChild(parent, 0, BAD_CAST "attr", 0);
for (i = 0; i<element->value.complex->num_list; i++)
{
xmlNodePtr node = xmlNewChild(parent, 0, BAD_CAST "attr", 0);
sprintf(formstr, ODR_INT_PRINTF, *element->attributeType);
xmlNewProp(node, BAD_CAST "type", BAD_CAST formstr);
sprintf(formstr, ODR_INT_PRINTF, *element->attributeType);
xmlNewProp(node, BAD_CAST "type", BAD_CAST formstr);
if (*op->u.prox->ordered)
xmlNewProp(node, BAD_CAST "ordered", BAD_CAST "true");
if (*op->u.prox->ordered)
xmlNewProp(node, BAD_CAST "ordered", BAD_CAST "true");
sprintf(formstr, ODR_INT_PRINTF, *op->u.prox->relationType);
xmlNewProp(node, BAD_CAST "relationType", BAD_CAST formstr);
sprintf(formstr, ODR_INT_PRINTF, *op->u.prox->relationType);
xmlNewProp(node, BAD_CAST "relationType", BAD_CAST formstr);
return yaz_query2xml_apt(zs->u.simple->u.attributesPlusTerm,
parent);
else if (zs->u.simple->which == Z_Operand_resultSetId)
return yaz_query2xml_apt(zs->u.simple->u.attributesPlusTerm,
parent);
else if (zs->u.simple->which == Z_Operand_resultSetId)
- return xmlNewChild(parent, /* NS */ 0, BAD_CAST "rset",
+ return xmlNewChild(parent, /* NS */ 0, BAD_CAST "rset",
case Z_Query_type_101:
q_node = xmlNewChild(top_node, 0, BAD_CAST "rpn", 0);
child_node = yaz_query2xml_rpn(q->u.type_1, q_node);
case Z_Query_type_101:
q_node = xmlNewChild(top_node, 0, BAD_CAST "rpn", 0);
child_node = yaz_query2xml_rpn(q->u.type_1, q_node);
*elem = (Z_AttributeElement *) odr_malloc(odr, sizeof(**elem));
if (set)
(*elem)->attributeSet = yaz_string_to_oid_odr(yaz_oid_std(),
*elem = (Z_AttributeElement *) odr_malloc(odr, sizeof(**elem));
if (set)
(*elem)->attributeSet = yaz_string_to_oid_odr(yaz_oid_std(),
(*zapt)->attributes->attributes = (Z_AttributeElement **)
odr_malloc(odr, sizeof(Z_AttributeElement*) * num_attr);
(*zapt)->attributes->attributes = (Z_AttributeElement **)
odr_malloc(odr, sizeof(Z_AttributeElement*) * num_attr);
if (ptr && ptr->type == XML_ELEMENT_NODE)
{
if (!xmlStrcmp(ptr->name, BAD_CAST "term"))
if (ptr && ptr->type == XML_ELEMENT_NODE)
{
if (!xmlStrcmp(ptr->name, BAD_CAST "term"))
/* deal with term */
yaz_xml2query_term(ptr, &(*zapt)->term, odr, error_code, addinfo);
}
/* deal with term */
yaz_xml2query_term(ptr, &(*zapt)->term, odr, error_code, addinfo);
}
if (!xmlStrcmp(ptr->name, BAD_CAST "operator"))
{
Z_Complex *zc = (Z_Complex *) odr_malloc(odr, sizeof(Z_Complex));
if (!xmlStrcmp(ptr->name, BAD_CAST "operator"))
{
Z_Complex *zc = (Z_Complex *) odr_malloc(odr, sizeof(Z_Complex));
yaz_xml2query_operator(ptr, &zc->roperator, odr, error_code, addinfo);
ptr = ptr->children;
yaz_xml2query_operator(ptr, &zc->roperator, odr, error_code, addinfo);
ptr = ptr->children;
ptr = ptr->next;
yaz_xml2query_rpnstructure(ptr, &zc->s2, odr, error_code, addinfo);
}
ptr = ptr->next;
yaz_xml2query_rpnstructure(ptr, &zc->s2, odr, error_code, addinfo);
}
{
Z_Operand *s = (Z_Operand *) odr_malloc(odr, sizeof(Z_Operand));
(*zs)->which = Z_RPNStructure_simple;
{
Z_Operand *s = (Z_Operand *) odr_malloc(odr, sizeof(Z_Operand));
(*zs)->which = Z_RPNStructure_simple;
yaz_xml2query_rset(ptr, &s->u.resultSetId,
odr, error_code, addinfo);
}
yaz_xml2query_rset(ptr, &s->u.resultSetId,
odr, error_code, addinfo);
}
}
}
static void yaz_xml2query_rpn(const xmlNode *ptr, Z_RPNQuery **query, ODR odr,
int *error_code, const char **addinfo)
{
}
}
static void yaz_xml2query_rpn(const xmlNode *ptr, Z_RPNQuery **query, ODR odr,
int *error_code, const char **addinfo)
{
*query = (Z_RPNQuery*) odr_malloc(odr, sizeof(Z_RPNQuery));
if (set)
{
(*query)->attributeSetId =
yaz_string_to_oid_odr(yaz_oid_std(),
*query = (Z_RPNQuery*) odr_malloc(odr, sizeof(Z_RPNQuery));
if (set)
{
(*query)->attributeSetId =
yaz_string_to_oid_odr(yaz_oid_std(),
{
if (check_diagnostic(ptr, odr, error_code, addinfo))
return;
{
if (check_diagnostic(ptr, odr, error_code, addinfo))
return;