-
- oident.proto = PROTO_Z3950;
- oident.oclass = CLASS_ATTSET;
- oident.value = (enum oid_value) zsui->info.set;
- oid_ent_to_oid (&oident, oid);
-
- data1_mk_tag_data_text (zei->dh, node_attr, "set",
- oident.desc, zei->nmem);
- data1_mk_tag_data_int (zei->dh, node_attr, "use",
- zsui->info.use, zei->nmem);
+
+ index_type_str[0] = zsui->info.index_type;
+ index_type_str[1] = '\0';
+ data1_mk_tag_data_text (zei->dh, node_attr, "type",
+ index_type_str, zei->nmem);
+ if (zsui->info.which == ZEB_SU_SET_USE)
+ {
+ oident.proto = PROTO_Z3950;
+ oident.oclass = CLASS_ATTSET;
+ oident.value = (enum oid_value) zsui->info.u.su.set;
+ oid_ent_to_oid (&oident, oid);
+
+ data1_mk_tag_data_text (zei->dh, node_attr, "set",
+ oident.desc, zei->nmem);
+ data1_mk_tag_data_int (zei->dh, node_attr, "use",
+ zsui->info.u.su.use, zei->nmem);
+ }
+ else if (zsui->info.which == ZEB_SU_STR)
+ {
+ data1_mk_tag_data_text (zei->dh, node_attr, "str",
+ zsui->info.u.str, zei->nmem);
+ }