Clean log
[yaz-moved-to-github.git] / include / yaz / data1.h
index 3c6ada6..e214fa5 100644 (file)
@@ -23,7 +23,7 @@
  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  * OF THIS SOFTWARE.
  *
- * $Id: data1.h,v 1.13 2002-07-05 16:04:28 adam Exp $
+ * $Id: data1.h,v 1.17 2002-09-24 07:58:59 adam Exp $
  */
 
 #ifndef DATA1_H
@@ -211,6 +211,8 @@ typedef struct data1_absyn
     data1_marctab *marc;
     data1_sub_elements *sub_elements;
     data1_element *main_elements;
+    char *encoding;
+    int  enable_xpath_indexing;
 } data1_absyn;
 
 /*
@@ -293,6 +295,10 @@ typedef struct data1_node
 } data1_node;
 
 YAZ_EXPORT data1_handle data1_create (void);
+
+#define DATA1_FLAG_XML  1
+YAZ_EXPORT data1_handle data1_createx (int flags);
+
 YAZ_EXPORT void data1_destroy(data1_handle dh);
 YAZ_EXPORT data1_node *get_parent_tag(data1_handle dh, data1_node *n);
 YAZ_EXPORT data1_node *data1_read_node(data1_handle dh, const char **buf,
@@ -303,7 +309,8 @@ YAZ_EXPORT data1_node *data1_read_nodex (data1_handle dh, NMEM m,
 YAZ_EXPORT data1_node *data1_read_record(data1_handle dh, 
                                         int (*rf)(void *, char *, size_t),
                                         void *fh, NMEM m);
-YAZ_EXPORT data1_absyn *data1_read_absyn(data1_handle dh, const char *file);
+YAZ_EXPORT data1_absyn *data1_read_absyn(data1_handle dh, const char *file,
+                                         int file_must_exist);
 YAZ_EXPORT data1_tag *data1_gettagbynum(data1_handle dh,
                                        data1_tagset *s,
                                        int type, int value);
@@ -370,6 +377,11 @@ YAZ_EXPORT data1_node *data1_mk_comment_n (data1_handle dh, NMEM mem,
 YAZ_EXPORT data1_node *data1_mk_comment (data1_handle dh, NMEM mem,
                                          const char *buf, data1_node *parent);
 
+YAZ_EXPORT data1_node *data1_mk_preprocess_n (data1_handle dh, NMEM nmem,
+                                              const char *target, size_t len,
+                                              const char **attr,
+                                              data1_node *at);
+
 YAZ_EXPORT data1_node *data1_mk_preprocess (data1_handle dh, NMEM nmem,
                                             const char *target,
                                             const char **attr,
@@ -473,6 +485,10 @@ YAZ_EXPORT int data1_iconv (data1_handle dh, NMEM m, data1_node *n,
                             const char *tocode, 
                             const char *fromcode);
 
+YAZ_EXPORT const char *data1_get_encoding (data1_handle dh, data1_node *n);
+
+YAZ_EXPORT int data1_is_xmlmode(data1_handle dh);
+
 YAZ_END_CDECL
 
 #endif