- int oid[OID_SIZE];
- struct oident ent;
- ent.proto = PROTO_Z3950;
- ent.oclass = CLASS_USERINFO;
- ent.value = (oid_value) oidval;
-
- if (!oid_ent_to_oid (&ent, oid))
- return 0;
- return yaz_oi_get_string_oid (otherInformation, oid, categoryValue,
- delete_flag);
+ Z_External *z_external = 0;
+ Z_OtherInformationUnit *oi =
+ yaz_oi_update(otherInformation, odr, oid, categoryValue, 0);
+ if (!oi)
+ return;
+ oi->which = Z_OtherInfo_externallyDefinedInfo;
+ z_external = odr_malloc(odr, sizeof(*z_external));
+ z_external->which = Z_External_userFacets;
+ z_external->direct_reference = odr_oiddup(odr, oid);
+ z_external->indirect_reference = 0;
+ z_external->u.facetList = facet_list;
+ oi->information.externallyDefinedInfo = z_external;