+ if (xml)
+ {
+ char str[80];
+ int i;
+ switch(xml)
+ {
+ case YAZ_MARC_XML:
+ wrbuf_puts (wr, "<iso2709\n");
+ sprintf (str, " RecordStatus=\"%c\"\n", buf[5]);
+ wrbuf_puts (wr, str);
+ sprintf (str, " TypeOfRecord=\"%c\"\n", buf[6]);
+ wrbuf_puts (wr, str);
+ for (i = 1; i<=19; i++)
+ {
+ sprintf (str, " ImplDefined%d=\"%c\"\n", i, buf[6+i]);
+ wrbuf_puts (wr, str);
+ }
+ wrbuf_puts (wr, ">\n");
+ break;
+ case YAZ_MARC_OAIMARC:
+ wrbuf_puts(
+ wr,
+ "<oai_marc xmlns=\"http://www.openarchives.org/OIA/oai_marc\""
+ "\n"
+ " xmlns:xsi=\"http://www.w3.org/2000/10/XMLSchema-instance\""
+ "\n"
+ " xsi:schemaLocation=\"http://www.openarchives.org/OAI/oai_marc.xsd\""
+ "\n"
+ );
+
+ sprintf (str, " status=\"%c\" type=\"%c\" catForm=\"%c\">\n",
+ buf[5], buf[6], buf[7]);
+ wrbuf_puts (wr, str);
+ break;
+ case YAZ_MARC_MARCXML:
+ wrbuf_printf(
+ wr,
+ "<collection xmlns=\"http://www.loc.gov/MARC21/slim\">\n"
+ " <record>\n"
+ " <leader>%.24s</leader>\n", buf);
+ break;
+ }
+ }
+ if (debug)
+ {
+ char str[40];
+
+ if (xml)
+ wrbuf_puts (wr, "<!--\n");
+ sprintf (str, "Record length %5d\n", record_length);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Indicator length %5d\n", indicator_length);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Identifier length %5d\n", identifier_length);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Base address %5d\n", base_address);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Length data entry %5d\n", length_data_entry);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Length starting %5d\n", length_starting);
+ wrbuf_puts (wr, str);
+ sprintf (str, "Length implementation %5d\n", length_implementation);
+ wrbuf_puts (wr, str);
+ if (xml)
+ wrbuf_puts (wr, "-->\n");
+ }
+