/*
- * Copyright (c) 1995-2003, Index Data
+ * Copyright (c) 1995-2004, Index Data
* See the file LICENSE for details.
*
- * $Id: oid.c,v 1.1 2003-10-27 12:21:34 adam Exp $
+ * $Id: oid.c,v 1.6 2004-12-30 00:12:54 adam Exp $
*/
-/*
+/**
+ * \file oid.c
+ * \brief Implements OID database
+ *
* More or less protocol-transparent OID database.
* We could (and should?) extend this so that the user app can add new
* entries to the list at initialization.
"Thesaurus-attset"},
{PROTO_Z3950, CLASS_ATTSET, VAL_IDXPATH, {3,1000,81,2,-1},
"IDXPATH"},
+ {PROTO_Z3950, CLASS_ATTSET, VAL_EXTLITE, {3,1000,81,3,-1},
+ "EXTLITE"},
{PROTO_Z3950, CLASS_DIAGSET, VAL_BIB1, {4,1,-1},
"Bib-1"},
{PROTO_Z3950, CLASS_DIAGSET, VAL_DIAG1, {4,2,-1},
"Intermarc"},
{PROTO_Z3950, CLASS_RECSYN, VAL_CCF, {5,3,-1},
"CCF"},
+ /* MARC21 is just an alias for the original USmarc */
+ {PROTO_Z3950, CLASS_RECSYN, VAL_USMARC, {5,10,-1},
+ "MARC21"},
{PROTO_Z3950, CLASS_RECSYN, VAL_USMARC, {5,10,-1},
"USmarc"},
{PROTO_Z3950, CLASS_RECSYN, VAL_UKMARC, {5,11,-1},
"RUSmarc"},
{PROTO_Z3950, CLASS_RECSYN, VAL_HUNMARC, {5,29,-1},
"Hunmarc"},
+ {PROTO_Z3950, CLASS_RECSYN, VAL_NACSISCATP, {5,30,-1},
+ "NACSIS-CATP"},
+ {PROTO_Z3950, CLASS_RECSYN, VAL_FINMARC2000, {5,31,-1},
+ "FINMARC2000"},
+ {PROTO_Z3950, CLASS_RECSYN, VAL_MARC21FIN, {5,32,-1},
+ "MARC21-fin"},
{PROTO_Z3950, CLASS_RECSYN, VAL_EXPLAIN, {5,100,-1},
"Explain"},
{PROTO_Z3950, CLASS_RECSYN, VAL_SUTRS, {5,101,-1},
"Zthes-tagset"},
{PROTO_Z3950, CLASS_NEGOT, VAL_CHARNEG3, {15,3,-1},
"CharSetandLanguageNegotiation-3"},
+ {PROTO_Z3950, CLASS_NEGOT, VAL_CHARNEG4, {15,4,-1},
+ "CharSetandLanguageNegotiation-4"},
{PROTO_Z3950, CLASS_NEGOT, VAL_ID_CHARSET, {15,1000,81,1,-1},
"ID-Charset" },
{PROTO_Z3950, CLASS_USERINFO,VAL_CQL, {16, 2, -1},
int val = 0, i = 0, oid[OID_SIZE];
struct oident *oident;
- while (isdigit (*name))
+ while (isdigit (*(const unsigned char *) name))
{
val = val*10 + (*name - '0');
name++;
struct oident_list *ol;
oid_init ();
- if (isdigit (*name))
+ if (isdigit (*(const unsigned char *) name))
return oid_getval_raw (name);
for (ol = oident_table; ol; ol = ol->next)
if (!yaz_matchstr(ol->oident.desc, name))