projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Example of punctuals removal at sentence end
[yaz-moved-to-github.git]
/
src
/
solr.c
diff --git
a/src/solr.c
b/src/solr.c
index
5c43831
..
16c5fa6
100644
(file)
--- a/
src/solr.c
+++ b/
src/solr.c
@@
-26,7
+26,6
@@
#if YAZ_HAVE_XML2
#include <libxml/parser.h>
#include <libxml/tree.h>
#if YAZ_HAVE_XML2
#include <libxml/parser.h>
#include <libxml/tree.h>
-#endif
static void extract_text_node(xmlNodePtr node, WRBUF wrbuf) {
xmlNodePtr child;
static void extract_text_node(xmlNodePtr node, WRBUF wrbuf) {
xmlNodePtr child;
@@
-204,13
+203,14
@@
static int yaz_solr_decode_facet_counts(ODR o, xmlNodePtr root,
return 0;
}
return 0;
}
-static yaz_solr_decode_suggestion_values(xmlNodePtr ptr, WRBUF wrbuf) {
+static void yaz_solr_decode_suggestion_values(xmlNodePtr listPptr, WRBUF wrbuf)
+{
xmlNodePtr node;
xmlNodePtr node;
- for (node = ptr; node; node= node->next) {
- if (!strcmp(ptr->name,"lst")) {
+ for (node = listPptr; node; node= node->next) {
+ if (!strcmp((char*) node->name, "lst")) {
xmlNodePtr child;
xmlNodePtr child;
- for (child = ptr->children; child; child= child->next) {
- if (match(child, "str", "name", "word")) {
+ for (child = node->children; child; child= child->next) {
+ if (match_xml_node_attribute(child, "str", "name", "word")) {
wrbuf_puts(wrbuf, "<suggestion>");
extract_text_node(child, wrbuf);
wrbuf_puts(wrbuf, "</suggestion>\n");
wrbuf_puts(wrbuf, "<suggestion>");
extract_text_node(child, wrbuf);
wrbuf_puts(wrbuf, "</suggestion>\n");
@@
-220,7
+220,8
@@
static yaz_solr_decode_suggestion_values(xmlNodePtr ptr, WRBUF wrbuf) {
}
}
}
}
-static yaz_solr_decode_suggestion_lst(xmlNodePtr lstPtr, WRBUF wrbuf) {
+static void yaz_solr_decode_suggestion_lst(xmlNodePtr lstPtr, WRBUF wrbuf)
+{
xmlNodePtr node;
for (node = lstPtr; node; node= node->next) {
if (match_xml_node_attribute(node, "arr", "name", "suggestion")) {
xmlNodePtr node;
for (node = lstPtr; node; node= node->next) {
if (match_xml_node_attribute(node, "arr", "name", "suggestion")) {
@@
-234,10
+235,10
@@
static void yaz_solr_decode_misspelled(xmlNodePtr lstPtr, WRBUF wrbuf)
xmlNodePtr node;
for (node = lstPtr; node; node= node->next)
{
xmlNodePtr node;
for (node = lstPtr; node; node= node->next)
{
- if (strcmp((const char*) node->name, "lst")) {
+ if (!strcmp((const char*) node->name, "lst")) {
const char *misspelled = yaz_element_attribute_value_get(node, "lst", "name");
if (misspelled) {
const char *misspelled = yaz_element_attribute_value_get(node, "lst", "name");
if (misspelled) {
- wrbuf_printf(wrbuf, "<misspelled term=\"%s\">", misspelled);
+ wrbuf_printf(wrbuf, "<misspelled term=\"%s\">\n", misspelled);
yaz_solr_decode_suggestion_lst(node->children, wrbuf);
wrbuf_puts(wrbuf, "</misspelled>\n");
}
yaz_solr_decode_suggestion_lst(node->children, wrbuf);
wrbuf_puts(wrbuf, "</misspelled>\n");
}
@@
-260,6
+261,7
@@
static int yaz_solr_decode_spellcheck(ODR o, xmlNodePtr spellcheckPtr, Z_SRW_sea
sr->suggestions = odr_strdup(o, wrbuf_cstr(wrbuf));
return 0;
}
sr->suggestions = odr_strdup(o, wrbuf_cstr(wrbuf));
return 0;
}
+#endif
int yaz_solr_decode_response(ODR o, Z_HTTP_Response *hres, Z_SRW_PDU **pdup)
{
int yaz_solr_decode_response(ODR o, Z_HTTP_Response *hres, Z_SRW_PDU **pdup)
{