- root = root->children;
- return ingest_sub_record(cl, xdoc, root, record_no, nmem, sdb);
+ xmlNode *sroot;
+ for (sroot = root->children; sroot; sroot = sroot->next)
+ if (sroot->type == XML_ELEMENT_NODE)
+ {
+ const char *mergekey_norm =
+ get_mergekey(xdoc, sroot, cl, record_no, service, nmem,
+ se->mergekey);
+
+ struct record_metadata_attr *mk = (struct record_metadata_attr*)
+ nmem_malloc(nmem, sizeof(*mk));
+ mk->name = 0;
+ mk->value = nmem_strdup(nmem, mergekey_norm);
+ mk->next = 0;
+
+ r = ingest_sub_record(cl, xdoc, sroot, record_no, nmem, sdb,
+ mk);
+ if (r)
+ break;
+ }