Changed the way implementationName - and version is set.
[yaz-moved-to-github.git] / include / d1_map.h
1 /*
2  * Copyright (c) 1995,1996 Index Data.
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and
5  * its documentation, in whole or in part, for any purpose, is hereby granted,
6  * provided that:
7  *
8  * 1. This copyright and permission notice appear in all copies of the
9  * software and its documentation. Notices of copyright or attribution
10  * which appear at the beginning of any file must remain unchanged.
11  *
12  * 2. The names of Index Data or the individual authors may not be used to
13  * endorse or promote products derived from this software without specific
14  * prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
17  * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
18  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
19  * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
20  * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
21  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
22  * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
24  * OF THIS SOFTWARE.
25  *
26  */
27
28 #ifndef D1_MAP_H
29 #define D1_MAP_H
30
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34
35 typedef struct data1_maptag
36 {
37     int new_field;
38     int type;
39 #define D1_MAPTAG_numeric 1
40 #define D1_MAPTAG_string 2
41     int which;
42     union
43     {
44         int numeric;
45         char *string;
46     } value;
47     struct data1_maptag *next;
48 } data1_maptag;
49
50 typedef struct data1_mapunit
51 {
52     int no_data;
53     char *source_element_name;
54     data1_maptag *target_path;
55     struct data1_mapunit *next;
56 } data1_mapunit;
57
58 typedef struct data1_maptab
59 {
60     char *name;
61     oid_value target_absyn_ref;
62     char *target_absyn_name;
63     data1_mapunit *map;
64     struct data1_maptab *next;
65 } data1_maptab;
66
67 #ifdef __cplusplus
68 }
69 #endif
70
71 #endif