def test_marcxml_to_cool_struct_preparation(self): """Bibfield - intermediate structure from marc xml""" #First record from demobibcfg.xml xml = """ <record> <datafield tag="037" ind1=" " ind2=" "> <subfield code="a">CERN-EX-0106015</subfield> </datafield> <datafield tag="100" ind1=" " ind2=" "> <subfield code="a">Photolab</subfield> </datafield> <datafield tag="245" ind1=" " ind2=" "> <subfield code="a">ALEPH experiment: Candidate of Higgs boson production</subfield> </datafield> <datafield tag="246" ind1=" " ind2="1"> <subfield code="a">Expérience ALEPH: Candidat de la production d'un boson Higgs</subfield> </datafield> <datafield tag="260" ind1=" " ind2=" "> <subfield code="c">14 06 2000</subfield> </datafield> <datafield tag="340" ind1=" " ind2=" "> <subfield code="a">FILM</subfield> </datafield> <datafield tag="520" ind1=" " ind2=" "> <subfield code="a">Candidate for the associated production of the Higgs boson and Z boson. Both, the Higgs and Z boson decay into 2 jets each. The green and the yellow jets belong to the Higgs boson. They represent the fragmentation of a bottom andanti-bottom quark. The red and the blue jets stem from the decay of the Z boson into a quark anti-quark pair. Left: View of the event along the beam axis. Bottom right: Zoom around the interaction point at the centre showing detailsof the fragmentation of the bottom and anti-bottom quarks. As expected for b quarks, in each jet the decay of a long-lived B meson is visible. Top right: "World map" showing the spatial distribution of the jets in the event.</subfield> </datafield> <datafield tag="595" ind1=" " ind2=" "> <subfield code="a">Press</subfield> </datafield> <datafield tag="650" ind1="1" ind2="7"> <subfield code="2">SzGeCERN</subfield> <subfield code="a">Experiments and Tracks</subfield> </datafield> <datafield tag="653" ind1="1" ind2=" "> <subfield code="a">LEP</subfield> </datafield> <datafield tag="856" ind1="0" ind2=" "> <subfield code="f">[email protected]</subfield> </datafield> <datafield tag="FFT" ind1=" " ind2=" "> <subfield code="a">http://invenio-software.org/download/invenio-demo-site-files/0106015_01.jpg</subfield> <subfield code="r">restricted_picture</subfield> </datafield> <datafield tag="FFT" ind1=" " ind2=" "> <subfield code="a">http://invenio-software.org/download/invenio-demo-site-files/0106015_01.gif</subfield> <subfield code="f">.gif;icon</subfield> <subfield code="r">restricted_picture</subfield> </datafield> <datafield tag="909" ind1="C" ind2="0"> <subfield code="o">0003717PHOPHO</subfield> </datafield> <datafield tag="909" ind1="C" ind2="0"> <subfield code="y">2000</subfield> </datafield> <datafield tag="909" ind1="C" ind2="0"> <subfield code="b">81</subfield> </datafield> <datafield tag="909" ind1="C" ind2="1"> <subfield code="c">2001-06-14</subfield> <subfield code="l">50</subfield> <subfield code="m">2001-08-27</subfield> <subfield code="o">CM</subfield> </datafield> <datafield tag="909" ind1="C" ind2="P"> <subfield code="p">Bldg. 2</subfield> </datafield> <datafield tag="909" ind1="C" ind2="P"> <subfield code="r">Calder, N</subfield> </datafield> <datafield tag="909" ind1="C" ind2="S"> <subfield code="s">n</subfield> <subfield code="w">200231</subfield> </datafield> <datafield tag="980" ind1=" " ind2=" "> <subfield code="a">PICTURE</subfield> </datafield> </record> """ reader = MarcReader(blob=xml, schema='xml') reader._prepare_blob() self.assertTrue(reader.rec_tree) self.assertTrue(len(reader.rec_tree.keys()) >= 14) self.assertTrue('100__' in reader.rec_tree)