hello,
On Mon, Jul 15, 2013 at 11:00:35AM -0400, Bill Dueber wrote:
> The marc-in-json<http://dilettantes.code4lib.org/blog/2010/09/a-proposal-to-serialize-marc-in-json/>
My 2 cents:
* don't specify a MARC-in-Whatever format: define the way you store the
MARC record in memory then just use dumpers from the YAML, JSON, and
other serialization systems.
* marc-in-json itself (as described in the document) use dicts at every
level which leads to 2 issues:
* implementations of transformations and querying are painfull
* explicit use of useless keys = more useless data (not as crappy as
XML but still useless.
MARC::MIR http://search.cpan.org/~marcc/marc-mir-0.4/lib/MARC/MIR.pod
In-memory representation is much simpler to handle, whatever the
programming langage you use.
As comparaison, the same record in MARC::MIR and MIJ.
HTH
MIR:
[ "01471cjm a2200349 a 4500"
, [ [ "001","5674874" ],
[ "005","20030305110405.0" ],
[ "007","sdubsmennmplu" ],
[ "008","930331s1963 nyuppn eng d" ]
[ "035", [ [ "9","(DLC) 93707283" ] ],
, [" "," "] ],
[ "906", [ [ [ "a","7" ] ,
[ "b","cbc" ],
[ "c","copycat" ],
[ "d","4" ],
[ "e","ncip" ],
[ "f","19" ],
[ "g","y-soundrec" ] ],
[ " "," "]] ]
MIJ:
{ "leader":"01471cjm a2200349 a 4500",
"fields":
[ { "001":"5674874" },
{ "005":"20030305110405.0" },
{ "007":"sdubsmennmplu" },
{ "008":"930331s1963 nyuppn eng d" },
{ "035": { "subfields": [
{ "9":"(DLC) 93707283" }
],
"ind1":" ",
"ind2":" " } },
{ "906":
{ "subfields":
[ { "a":"7" },
{ "b":"cbc" },
{ "c":"copycat" },
{ "d":"4" },
{ "e":"ncip" },
{ "f":"19" },
{ "g":"y-soundrec" }
], "ind1":" ", "ind2":" " }}}
--
Marc Chantreux
Université de Strasbourg, Direction Informatique
14 Rue René Descartes,
67084 STRASBOURG CEDEX
☎: 03.68.85.57.40
http://unistra.fr
"Don't believe everything you read on the Internet"
-- Abraham Lincoln
|