Dear Ferran, Alexander, I will try to explain you how Invenio is evolving and let's see if my understanding is correct, and if this will satisfy your MARC needs (Tibor, Esteban, please correct me anytime I am wrong).
Invenio master uses the MARC structure as a master container for its record representation. I am talking about container because, in the end that's how Invenio sees MARC: a simple way to arrange metadata as fields and subfields. What is the semantic of each of these fields? It's given by the constraint of these fields, by how you build indexes to search over them and how you can represent them when exporting them (e.g. in HTML or in other metadata formats). That's it. Unfortunately, due to how Invenio evolved so far, several semantic aspects of MARC have been hardcoded into Invenio source code, and sometimes, it was hardcoded some CERN convention (making Ferran desperate with us :-) ), rather than MARC21 standard. So in the source code (and not just in the configuration) you can find special treatment of 100/700, of 773 etc. How Invenio is evolving? Well, we recognized MARC is not the only standard, and that we felt restricted by its tabular structure of fields and subfields. (how can you map the variety of METS into MARC? How do you map UNIMARC?). Invenio is growing to gain a new degree of freedom: it is now possible to store something different than MARC as its master format. And MARC? Well you can still store it of course! And in the way Invenio is being redesigned I believe Alexander and Ferran will be happier because there will be less and less hardcoded CERN conventions in the code, and rather it will be possible to express all the specificities of MARC21 semantic in the configuration. How this is going to be possible? Simply by setting up properly the Bibfield configuration in the most suitable way (it's up to you: if you want to express a large part of MARC21 this is going to be allowed), and reusing this configuration in the search part and in the presentation part (thanks to Jinja2 templates that will let you address any field). As a matter of principles, nothing will prevent you from being able to specify in the BibField configuration plain MARC21 (without expressing any further oriented-meaning such as "author", "title", etc.: you will be able to just say, e.g.: there is a field "100%%" that maps to "100%%". And then you leave the semantic to just how these fields are going to be represented in Jinja2 templates. Additionally, if you have as input MARC21, you will be able to store it as master format in the ingestion store as such. Then this will be mapped with BibField, solely for the purpose of searching and presenting it. For export you will be able to re-export exactly what you had as input. You want to let catalogers modify your input? Then you specify through BibField everything that you want to handle. The beauty of it is that you will be able to code MARC21 into Invenio for real, if you wish. Take a look at: <https://github.com/inveniosoftware/invenio-demosite/blob/pu/invenio_demosite/recordext/fields/atlantis.cfg> this is the default BibField configuration of "Atlantis Demo Site". Note: this is not the default of Invenio, just Atlantis. And in Invenio core? Well no configuration is enforced there. It's up to you. You can start off Atlantis configuration and encode the whole MARC21 (or the part of MARC21 that you need), and Invenio will speak MARC21. Or for those handling new documents, you can code there another format and Invenio will speak the other format. In BibField one can even go further and decide to support both MARC21 and other formats and normalize these into an abstract format. It's possible. The important thing is then how you give semantic: through indexing configuration (possibly delegated to ElasticSearch) and to the presentation layer (implemented in Jinja2 templates). In fact, by finally restructuring Invenio and separating the engines from the configuration that gives semantic to things we are now able, in principle, to support MARC21 for real. Since CERN/INSPIRE/ADS don't really need to support it fully, we need your help as MARC21 power user, in order to support it at a larger extent. We already received contribution for UNIMARC: <http://invenio-software.org/repo/personal/invenio-egarciag/commit/?h=0000-bibfield-unimarc-basic-support&id=ebe061c49860c1064b089fad1deaeed78cd3343a> (just an outdated example). and other formats. And other Invenio users are interested into the native support for other non-MARC formats. Invenio is evolving into a framework, where you will be able to compose the digital library that best suits your need. The old, native behavior of Invenio (i.e. MARC-more-or-less-21) is just our starting point. Hope this helps clarifying :-) Cheers! Sam -- Samuele Kaplun Invenio Developer ** <http://invenio-software.org/> INSPIRE Service Manager ** <http://inspirehep.net/>
