diff options
Diffstat (limited to 'magic/Magdir/marc21')
-rw-r--r-- | magic/Magdir/marc21 | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/magic/Magdir/marc21 b/magic/Magdir/marc21 new file mode 100644 index 0000000..bb4998e --- /dev/null +++ b/magic/Magdir/marc21 @@ -0,0 +1,30 @@ +#-------------------------------------------- +# marc21: file(1) magic for MARC 21 Format +# +# Kevin Ford (kefo@loc.gov) +# +# MARC21 formats are for the representation and communication +# of bibliographic and related information in machine-readable +# form. For more info, see https://www.loc.gov/marc/ + + +# leader position 20-21 must be 45 +# and 22-23 also 00 so far, but we check that later. +20 string 45 +>0 search/2048 \x1e + +# leader starts with 5 digits, followed by codes specific to MARC format +>>0 regex/1l (^[0-9]{5})[acdnp][^bhlnqsu-z] MARC21 Bibliographic +!:mime application/marc +>>0 regex/1l (^[0-9]{5})[acdnosx][z] MARC21 Authority +!:mime application/marc +>>0 regex/1l (^[0-9]{5})[cdn][uvxy] MARC21 Holdings +!:mime application/marc +>>0 regex/1l (^[0-9]{5})[acdn][w] MARC21 Classification +!:mime application/marc +>>0 regex/1l (^[0-9]{5})[cdn][q] MARC21 Community +!:mime application/marc + +# leader position 22-23, should be "00" but is it? +>>0 regex/1l (^.{21})([^0]{2}) (non-conforming) +!:mime application/marc |