26 #include <yaz/oid_db.h>
31 const char *zclass,
const char *type)
42 yaz_log(YLOG_WARN,
"Unknown variant type %s in class %s",
46 yaz_log(YLOG_WARN,
"Unknown variant class %s", zclass);
51 char *zclass,
char *type)
65 char *argv[50],line[512];
73 yaz_log(YLOG_WARN|YLOG_ERRNO,
"%s", file);
76 while ((argc = readconf_line(f, &lineno, line, 512, argv, 50)))
77 if (!strcmp(argv[0],
"class"))
83 yaz_log(YLOG_WARN,
"%s:%d: Bad # or args to class",
88 nmem_malloc(mem,
sizeof(*r));
91 r->
name = nmem_strdup(mem, argv[2]);
97 else if (!strcmp(argv[0],
"type"))
103 yaz_log(YLOG_WARN,
"%s:%d: Directive class must precede type",
109 yaz_log(YLOG_WARN,
"%s:%d: Bad # or args to type",
114 r->
name = nmem_strdup(mem, argv[2]);
116 r->
type = atoi(argv[1]);
119 yaz_log(YLOG_WARN,
"%s:%d: Unknown datatype '%s'",
120 file, lineno, argv[3]);
127 else if (!strcmp(argv[0],
"name"))
131 yaz_log(YLOG_WARN,
"%s:%d: Bad # args for name",
135 res->
name = nmem_strdup(mem, argv[1]);
137 else if (!strcmp(argv[0],
"reference"))
141 yaz_log(YLOG_WARN,
"%s:%d: Bad # args for reference",
145 res->
oid = yaz_string_to_oid_nmem(yaz_oid_std(),
146 CLASS_VARSET, argv[1], mem);
149 yaz_log(YLOG_WARN,
"%s:%d: Unknown reference '%s'",
150 file, lineno, argv[1]);
155 yaz_log(YLOG_WARN,
"%s:%d: Unknown directive '%s'",
156 file, lineno, argv[0]);
data1_varset * data1_read_varset(data1_handle dh, const char *file)
data1_vartype * data1_getvartypeby_absyn(data1_handle dh, data1_absyn *absyn, char *zclass, char *type)
data1_vartype * data1_getvartypebyct(data1_handle dh, data1_varset *set, const char *zclass, const char *type)
data1_datatype data1_maptype(data1_handle dh, char *t)
FILE * data1_path_fopen(data1_handle dh, const char *file, const char *mode)
NMEM data1_nmem_get(data1_handle dh)
#define data1_matchstr(s1, s2)
struct data1_varset * set
struct data1_varclass * next
struct data1_vartype * next
struct data1_varclass * zclass