* Copyright (c) 1995-2004, Index Data
* See the file LICENSE for details.
*
- * $Id: seshigh.c,v 1.27 2004-09-10 11:28:58 adam Exp $
+ * $Id: seshigh.c,v 1.30 2004-09-30 18:40:13 adam Exp $
*/
/*
rr.comp->u.complex->generic = (Z_Specification *)
odr_malloc(assoc->decode, sizeof(Z_Specification));
+
+ /* schema uri = recordSchema (or NULL if recordSchema is not given) */
rr.comp->u.complex->generic->which = Z_Schema_uri;
rr.comp->u.complex->generic->schema.uri = srw_req->recordSchema;
+
+ /* ESN = recordSchema if recordSchema is present */
rr.comp->u.complex->generic->elementSpec = 0;
+ if (srw_req->recordSchema)
+ {
+ rr.comp->u.complex->generic->elementSpec =
+ (Z_ElementSpec *) odr_malloc(assoc->encode, sizeof(Z_ElementSpec));
+ rr.comp->u.complex->generic->elementSpec->which =
+ Z_ElementSpec_elementSetName;
+ rr.comp->u.complex->generic->elementSpec->u.elementSetName =
+ srw_req->recordSchema;
+ }
rr.stream = assoc->encode;
rr.print = assoc->print;
if (srw_req->recordPacking &&
!strcmp(srw_req->recordPacking, "xml"))
packing = Z_SRW_recordPacking_XML;
- srw_res->record.recordSchema = 0;
+ srw_res->record.recordSchema = rr.schema;
srw_res->record.recordPacking = packing;
srw_res->record.recordData_buf = rr.explain_buf;
srw_res->record.recordData_len = strlen(rr.explain_buf);
assoc->init->implementation_name,
odr_prepend(assoc->encode, "GFS", resp->implementationName));
- version = odr_strdup(assoc->encode, "$Revision: 1.27 $");
+ version = odr_strdup(assoc->encode, "$Revision: 1.30 $");
if (strlen(version) > 10) /* check for unexpanded CVS strings */
version[strlen(version)-2] = '\0';
resp->implementationVersion = odr_prepend(assoc->encode,