"\x30\x30\x30\x30\x30\x31\x30\x30\x30\x31\x37\x30\x30\x30\x31\x33"
"#30;\x20\x20\x20\x31\x31\x32\x32\x34\x34\x36\x36\x20#30;\x20\x20"
"#31;\x61\x20\x20\x20\x31\x31\x32\x32\x34\x34\x36\x36\x20#30;#29;";
+ const char *raw_rec = /* raw is xml-string of marcxml_rec */
+ "<raw><record xmlns=\"http://www.loc.gov/MARC21/slim\">\n"
+ " <leader>00080nam a22000498a 4500</leader>\n"
+ " <controlfield tag=\"001\"> 11224466 </controlfield>\n"
+ " <datafield tag=\"010\" ind1=\" \" ind2=\" \">\n"
+ " <subfield code=\"a\"> 11224466 </subfield>\n"
+ " </datafield>\n"
+ "</record>\n</raw>\n";
YAZ_CHECK(conv_configure_test("<backend>"
"<marc"
0, &p));
YAZ_CHECK(conv_convert_test(p, marcxml_rec, marcxml_rec));
yaz_record_conv_destroy(p);
+
+ YAZ_CHECK(conv_configure_test("<backend>"
+ "<select path=\"/raw\"/>"
+ "</backend>",
+ 0, &p));
+ YAZ_CHECK(conv_convert_test(p, raw_rec, marcxml_rec));
+ yaz_record_conv_destroy(p);
}
static void tst_convert2(void)
nmem_destroy(nmem);
}
+static void tst_convert4(void)
+{
+ NMEM nmem = nmem_create();
+ int ret;
+
+ const char *opacxml_rec =
+ "<opacRecord>\n"
+ " <bibliographicRecord>\n"
+ "<record xmlns=\"http://www.loc.gov/MARC21/slim\">\n"
+ " <leader>00077nam a22000498a 4500</leader>\n"
+ " <controlfield tag=\"001\"> 11224466 </controlfield>\n"
+ " <datafield tag=\"010\" ind1=\" \" ind2=\" \">\n"
+ " <subfield code=\"a\">k" "\xc3" "\xb8" /* oslash in UTF_8 */
+ "benhavn</subfield>\n"
+ " </datafield>\n"
+ "</record>\n"
+ " </bibliographicRecord>\n"
+ " <holdings>\n"
+ " <holding>\n"
+ " <shelvingLocation>Sprague Library hidden basement</shelvingLocation>\n"
+ " <callNumber>E98.L7L44 1976 </callNumber>\n"
+ " <volumes/>\n"
+ " </holding>\n"
+ " </holdings>\n"
+ " </opacRecord>\n"
+ ;
+
+ Z_OPACRecord *opac = 0;
+ yaz_marc_t mt = yaz_marc_create();
+ ret = yaz_xml_to_opac(mt, opacxml_rec, strlen(opacxml_rec),
+ &opac, 0 /* iconv */, nmem, 0);
+ YAZ_CHECK(ret);
+ YAZ_CHECK(opac);
+ yaz_marc_destroy(mt);
+ nmem_destroy(nmem);
+}
+
#endif
int main(int argc, char **argv)
tst_convert1();
tst_convert2();
tst_convert3();
- xsltCleanupGlobals();
-#endif
-#if YAZ_HAVE_XML2
- xmlCleanupParser();
+ tst_convert4();
#endif
YAZ_CHECK_TERM;
}