Towards 2.1.40.
[yaz-moved-to-github.git] / src / retrieval.c
index d902642..c9ee789 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (C) 2005-2006, Index Data ApS
  * See the file LICENSE for details.
  *
- * $Id: retrieval.c,v 1.10 2006-05-09 13:39:47 adam Exp $
+ * $Id: retrieval.c,v 1.12 2006-10-10 09:13:52 adam Exp $
  */
 /**
  * \file retrieval.c
@@ -21,7 +21,7 @@
 #include <yaz/tpath.h>
 #include <yaz/proto.h>
 
-#if HAVE_XML2
+#if YAZ_HAVE_XML2
 #include <libxml/parser.h>
 #include <libxml/tree.h>
 #include <libxml/xinclude.h>
@@ -293,9 +293,21 @@ int yaz_retrieval_request(yaz_retrieval_t p,
             else
                 *match_schema = 0;
             if (backend_schema)
-                *backend_schema = el->backend_name;
+            {
+                if (el->backend_name)
+                    *backend_schema = el->backend_name;
+                else if (el->name)
+                    *backend_schema = el->name;                    
+                else
+                    *backend_schema = schema;
+            }
             if (backend_syntax)
-                *backend_syntax = el->backend_syntax;
+            {
+                if (el->backend_syntax)
+                    *backend_syntax = el->backend_syntax;
+                else
+                    *backend_syntax = el->syntax;
+            }
             if (rc)
                 *rc = el->record_conv;
             return 0;