Community Documentation

Content types and mapping

Last updated September 13, 2012. Created by Claire Hernandez on September 10, 2012.
Edited by Alex Arnaud. Log in to edit this page.

ILS mapping allows us to tell drupal-opac which ILS biblio field must be mapped with which node field of which content type. Before starting to edit mapping, it is usefull that we take a look at what a connector does.

First, it worth knowing that a connector is intended to be compliant with a particular ILS. That means that Koha ILS should have its own, Evergreen ILS should also have its own etc... Each connector should tell drupal-opac for which fields it are available for this ILS.

Attach content types to a server:

As we said in the "opac content types" section, you can have several content types for your opac. Then, you must attach at least one content type to an ILS server. To do that, edit your server and click on the "Content types" tab. Now click on "Add content type":

Content type: Select the content type you have created,
Matching field: Select the field to check. This the ILS field. In other words, the record field before the mapping has been done.
Field value(s): The value Matching field must match to make the incoming record a node of the selected type. This value must be a regular expression with delimiters. i.e if you want the field equal to 'BOOK' type "/^BOOK$/". If you type "/BOOK/" (without ^ and $) this means: contains BOOK.
Weight: This allows to manage order of the rules. Let's say you have a rule telling "content type = biblio if field document_type match /^BOOK$/" and an other telling "content = DVD if editor field match /^foo$/". So, if an incomming record match these two rules, the the lowest weight will be a priority (In the content types overiew of a server, the lowest weight is at the top of the list).

Now let's edting the mapping.

Since drupal-opac module allows multiple content types, mapping are not attach to a server but to a server and content type. In other words, you could create a mapping for biblio content type of "foo" server and an other for the same content type but "bar" server.

In the content types overview page of your server, click on "Mapping" link for the content type of your choice:

Here are 2 main parts. The first is a table containing all fields that are already mapped. For the moment you shoud see the "No fields mapped yet" message. The second below (click on "View unmapped Fields") is a list of all the fields you have created in your opac content type that are not mapped. Note that 3 fields are missing: Title, record identifier and server identifier. This is because drupal-opac automatically maps this 3 fields with corresponding values.

Now click on a node field in unmapped Fields list (the one you want) and you will arrive on a page where you can choose which ILS field you want to map with (If your field is related to a vocabulary see "work with taxonomy and drupal-opac" section). When selecting an new element in the "Mapped with" dropdown list, you get a description just below that tells us what the selected field return exactly. I.e. i'm using Koha ilsdi connector and when selecting "principal author" i get the following description: "This field contains the principal author in 200$f marc field".

Once you have selected the appropriate field, click on Save button to return to the mapping overview page. Your newly created mapping should now appear in the mapped part. You can edit or delete it.
Make as many mapping as you want and get the next step when you are done.

Page status

No known problems

Log in to edit this page

About this page

Drupal version
Drupal 7.x
Level
Beginner, Intermediate
Audience
Site administrators, Site builders

Site Building Guide

Drupal’s online documentation is © 2000-2013 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License. Comments on documentation pages are used to improve content and then deleted.
nobody click here