/*
- * Copyright (C) 1995-2005, Index Data ApS
+ * Copyright (C) 1995-2006, Index Data ApS
* All rights reserved.
*
- * $Id: xmlquery.c,v 1.5 2006-02-23 11:17:25 adam Exp $
+ * $Id: xmlquery.c,v 1.9 2006-05-02 20:47:45 adam Exp $
*/
-/**
- * \file querytostr.c
- * \brief Query / XML conversions
- */
+/** \file xmlquery.c
+ \brief Query / XML conversions
+*/
#include <stdio.h>
#include <string.h>
char *strVal(const xmlNode *ptr_cdata, ODR odr)
{
- char *cdata;
- int len = 0;
- const xmlNode *ptr;
-
- for (ptr = ptr_cdata; ptr; ptr = ptr->next)
- if (ptr->type == XML_TEXT_NODE)
- len += xmlStrlen(ptr->content);
- cdata = (char *) odr_malloc(odr, len+1);
- *cdata = '\0';
- for (ptr = ptr_cdata; ptr; ptr = ptr->next)
- if (ptr->type == XML_TEXT_NODE)
- strcat(cdata, (const char *) ptr->content);
- return cdata;
+ return nmem_text_node_cdata(ptr_cdata, odr->mem);
}
void yaz_xml2query_term(const xmlNode *ptr,
void yaz_xml2query(const void *xmlnodep, Z_Query **query, ODR odr,
int *error_code, const char **addinfo)
{
- return yaz_xml2query_(xmlnodep, query, odr, error_code, addinfo);
+ yaz_xml2query_(xmlnodep, query, odr, error_code, addinfo);
}
/* HAVE_XML2 */