diff --git a/qurator/mods4pandas/mods4pandas.py b/qurator/mods4pandas/mods4pandas.py index 028b9ac..75f2caf 100755 --- a/qurator/mods4pandas/mods4pandas.py +++ b/qurator/mods4pandas/mods4pandas.py @@ -270,8 +270,11 @@ def pages_to_dict(mets, raise_errors=True) -> List[Dict]: structMap_LOGICAL = mets.find('./mets:structMap[@TYPE="LOGICAL"]', ns) fileSec = mets.find('./mets:fileSec', ns) if structMap_PHYSICAL is None: - # This is expected in a multivolume work! - if structMap_LOGICAL.find('./mets:div[@TYPE="multivolume_work"]', ns) is not None: + # This is expected in a multivolume work or periodical! + if any( + structMap_LOGICAL.find(f'./mets:div[@TYPE="{t}"]', ns) is not None + for t in ["multivolume_work", "periodical"] + ): return [] else: raise ValueError("No structMap[@TYPE='PHYSICAL'] found (but not a multivolume work)")