Changeset 37:cfb19c3c4214


Ignore:
Timestamp:
29.07.2010 14:40:12 (7 years ago)
Author:
andre.hagenbruch@rub.de
Branch:
default
Message:

Further improvements on bibliographic templates; integration of DBpedia information based on MESH

Files:
9 added
30 edited

Legend:

Unmodified
Added
Removed
  • django/repo/search/views.py

    r28 r37  
    156156    offset = 0 
    157157    if len(request.GET.get('page', '')) > 0: 
    158         offset = int(request.GET.get('page')) * 10 
     158        offset = int(request.GET.get('page')) * 10 - 10 
    159159 
    160160    # Handle the smartass cases for empty queries and people who are used to 
     
    277277 
    278278    docs = result['response']['docs'] 
     279    #logging.error(result.get('response')) 
    279280    ctx['docs'] = docs 
    280281                 
     
    508509 
    509510def entry(request, entry_id, suffix): 
    510     if request.META.get('HTTP_ACCEPT') == 'application/mods+xml' or suffix == '.xml': 
     511    mime_type = request.GET.get('format', '') 
     512    if request.META.get('HTTP_ACCEPT') == 'application/mods+xml' or suffix == '.xml' or mime_type == 'application/mods xml' or mime_type == 'application/mods+xml': 
    511513        params = 'q=entryID:%s&wt=python' % entry_id 
    512514        result = _fetch_result(params) 
     
    544546    elif record.get('editor'): 
    545547        persons = record.get('editor') 
     548 
     549    # Make locations and locators iterable in parallel 
     550    standort = zip(record.get('location', ''), record.get('locator', '')) 
     551 
     552    # Make unique locations and their ISILs iterable in parallel 
     553    ulocations = set(record.get('location', '')) 
     554    uisils = set(record.get('isil', '')) 
     555    #bibinfo = zip(record.get('location', ''), record.get('isil', '')) 
     556    bibinfo = zip(ulocations, uisils) 
    546557 
    547558    # Dirty hack... :-D 
     
    570581    highlights = [] 
    571582    try: 
    572         hparams = 'q={!raw f=text}%s+AND+id:%s&hl=true&hl.fl=ro_abstract&hl.mergeContiguous&hl.snippets=5&fl=highlighting&wt=python' % (request.session.get('query').replace('{!raw+f%3Dtext}', ''), entry_id) 
     583        hparams = 'q=%s+AND+id:%s&hl=true&hl.fl=ro_abstract+dbpedia_abstract&hl.mergeContiguous&hl.snippets=5&fl=highlighting&wt=python' % (request.session.get('query').replace('{!raw+f%3Dtext}', ''), entry_id) 
     584        #hparams = 'q={!raw f=text}%s+AND+id:%s&hl=true&hl.fl=ro_abstract&hl.mergeContiguous&hl.snippets=5&fl=highlighting&wt=python' % (request.session.get('query').replace('{!raw+f%3Dtext}', ''), entry_id) 
    573585        hresult = _fetch_result(hparams) 
    574586 
    575         for highlight in hresult.get('highlighting').get(entry_id).get('ro_abstract'): 
     587        for highlight in hresult.get('highlighting').get(entry_id).get('ro_abstract', ''): 
     588            #logging.debug(highlight) 
     589            highlights.append(highlight) 
     590        for highlight in hresult.get('highlighting').get(entry_id).get('dbpedia_abstract', ''): 
    576591            #logging.debug(highlight) 
    577592            highlights.append(highlight) 
     
    589604    if pos is not None: 
    590605        pos = pos + 1 
     606 
     607    dbpedias = record.get('dbpedia_uri_label') 
     608    uris_labels = {} 
     609    for dbpedia in dbpedias: 
     610        uri, label = dbpedia.split('#') 
     611        uris_labels.setdefault(uri, label) 
    591612 
    592613    return render_to_response('record.html', 
     
    603624                              'highlights': highlights, 
    604625                              'query': myquery, 
     626                              'standort': standort, 
     627                              'bibinfo': bibinfo, 
     628                              'dbpedia': uris_labels, 
    605629                              }, 
    606630                              context_instance=RequestContext(request) 
     
    975999    max_count = facets[1] 
    9761000 
     1001    facet_map = { 
     1002        'person': 'fperson', 
     1003        'subject': 'fsubject', 
     1004        'journal': 'fjtitle' 
     1005    } 
     1006 
    9771007    freq_range = float(max_count - min_count) 
    9781008 
     
    9881018            del facets[0:2] 
    9891019            weight = int(MAX_WEIGHT * (count - min_count) / freq_range) 
    990             #facet_dict.setdefault(cat, {'query': facet + ':%22' + cat + '%22', 'weight': weight}) 
    991             facet_dict.setdefault(cat, {'query': '%s/%s' % (facet, cat), 'weight': weight}) 
     1020            facet_dict.setdefault(cat, {'query': facet_map.get(facet) + ':%22' + cat + '%22', 'weight': weight}) 
     1021            #facet_dict.setdefault(cat, {'query': '%s/%s' % (facet, cat), 'weight': weight}) 
    9921022 
    9931023        tagcloud = [(cat, facet_dict[cat]) for cat in sorted(facet_dict.keys())] 
     
    9961026            cat, count = facets[0:2] 
    9971027            del facets[0:2] 
    998             #facet_dict.setdefault(cat, {'query': facet + ':%22' + cat + '%22', 'weight': 0}) 
    999             facet_dict.setdefault(cat, {'query': '%s/%s' % (facet, cat), 'weight': weight}) 
     1028            facet_dict.setdefault(cat, {'query': facet_map.get(facet) + ':%22' + cat + '%22', 'weight': 0}) 
     1029            #facet_dict.setdefault(cat, {'query': '%s/%s' % (facet, cat), 'weight': weight}) 
    10001030 
    10011031        tagcloud = [(cat, facet_dict[cat]) for cat in sorted(facet_dict.keys())] 
     
    13491379        try: 
    13501380            myperson = simplejson.loads(urllib.urlopen('http://bibliographie-admin.ub.rub.de/rubauthor/%s' % pnd).read()) 
    1351             myperson.setdefault(pnd, {}).setdefault('alias', variantNames[0]) 
     1381            myperson.setdefault(pnd, {}).setdefault('alias', variantNames) 
    13521382        except ValueError: 
    13531383            templ = get_template('error.html') 
     
    14591489    ) 
    14601490 
     1491def orga(request, orgaid): 
     1492    params = 'q=fakid:%s+OR+instid:%s&facet=true&facet.field=fakultaet&facet.mincount=1&facet.tree=fakultaet,fach&facet.tree=zentraleeinheit,fach&facet.field=zentraleeinheit&wt=python&rows=0&facet.field=fsubject&facet.field=genrel1&facet.tree=genrel1,genrel2' % (orgaid, orgaid) 
     1493    result = _fetch_result(params) 
     1494    #logging.debug(result) 
     1495 
     1496    genre_tree = result['facet_counts']['trees']['genrel1,genrel2'] 
     1497    fak_tree = result['facet_counts']['trees']['fakultaet,fach'] 
     1498    ze_tree = result['facet_counts']['trees']['zentraleeinheit,fach'] 
     1499 
     1500    genre = result['facet_counts']['facet_fields']['genrel1'] 
     1501    fak = result['facet_counts']['facet_fields']['fakultaet'] 
     1502    ze = result['facet_counts']['facet_fields']['zentraleeinheit'] 
     1503 
     1504    fakultaet_facet = _concatenate_facets(fak, fak_tree) 
     1505    genre_facet = _concatenate_facets(genre, genre_tree) 
     1506    zentraleeinheit_facet = _concatenate_facets(ze, ze_tree) 
     1507     
     1508    subject_facet = _concatenate_facets(result['facet_counts']['facet_fields']['fsubject'], []) 
     1509 
     1510    params = 'q=fakid:%s+OR+instid:%s&facet=true&facet.field=fdate&facet.sort=index&wt=python&facet.mincount=1&rows=1' % (orgaid, orgaid) 
     1511    tresult = _fetch_result(params) 
     1512    timeline = _make_timeline(tresult) 
     1513    logging.info(timeline) 
     1514    return render_to_response('orga.html',{ 
     1515        'orgaid': orgaid, 
     1516        'fakultaet_facet': fakultaet_facet, 
     1517        'zentraleeinheit_facet': zentraleeinheit_facet, 
     1518        'genre_facet': genre_facet, 
     1519        'subject_facet': subject_facet, 
     1520        'timeline': timeline, 
     1521    }, 
     1522    context_instance=RequestContext(request) 
     1523    ) 
    14611524 
    14621525def autocomplete(request): 
    1463     query = 'wt=json&json.wrf=%s&rows=%s&timestamp=%s&q=%s&limit=%s&_=%s' % (request.GET.get('callback'), request.GET.get('rows'), request.GET.get('timestamp'), '%22' + request.GET.get('q') + '%22', request.GET.get('limit'), request.GET.get('_')) 
     1526    query = 'wt=json&json.wrf=%s&rows=%s&timestamp=%s&q=autocomplete:%s&limit=%s&_=%s' % (request.GET.get('callback'), request.GET.get('rows'), request.GET.get('timestamp'), '%22' + request.GET.get('q') + '%22', request.GET.get('limit'), request.GET.get('_')) 
    14641527    result = urllib.urlopen(settings.SOLR_URL, query).read() 
    14651528    request.session['query'] = request.GET.get('q') 
  • django/repo/urls.py

    r27 r37  
    3434        (r'^persons/(.)?$', persons), 
    3535        (r'^person/(.+)', person), 
     36        (r'^orga/([0-9])+', orga), 
    3637        (r'^subject/(.+)', subject), 
    3738        (r'^journalgroup/(?P<title>.+?)/(?P<journals>(?:[0-9]{4}-?[0-9X]{4};?)+)+', journalgroup), 
     
    4748        #(r'^entry/(.+?_\d+)/pos/(\d+)', entry), 
    4849        #(r'^entry/(.+?)/pos/(\d+)', entry), 
    49         (r'^entry/(.+?)(\..+?)?/', entry), 
     50        (r'^entry/([0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12})(\..+)?', entry), 
    5051        #(r'^entry/(.+?_\d+)', entry_nopag), 
    5152        #(r'^entry/(.+)', entry_nopag), 
  • django/templates/base.html

    r35 r37  
    7272        </script> 
    7373        {% endblock javascript %} 
     74        {% block extrajs %}{% endblock extrajs %} 
    7475        {% block unapi %}{% endblock unapi %} 
    7576    </head> 
  • django/templates/einzeltreffer/artikel.html

    r34 r37  
    22<dd>{% if record.editor %} 
    33    {% for editor in record.editor %} 
    4     {% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd> 
    5 {% else %}<a href="#" class="rootVoice">{{ editor }}; </a> 
     4    {% if forloop.last %}<a href="/search/?q=fperson:%22{{ editor }}%22">{{ editor }}</a></dd> 
     5{% else %}<a href="/search/?q=fperson:%22{{ editor }}%22">{{ editor }}; </a> 
    66{% endif %} 
    77{% endfor %}: 
     
    99{% if record.journal_title %}{{ record.journal_title }}. {% endif %} 
    1010{% if record.edition %} - {{ record.edition }}. Aufl.{% endif %} 
    11 {% if record.place %} - {{ record.place }}{% endif %} 
     11{% if record.place %} - {{ record.place.0 }}{% endif %} 
    1212{% if record.publisher %} : {{ record.publisher.0 }}, {% endif %} 
    1313{% if record.date %}{{ record.date }}, {% endif %} 
     
    1515{% if record.issn %} 
    1616<dt>ISSN</dt> 
    17 <dd>{{ record.issn.0 }}{% if record.tictoc %} <a href="{{ record.tictoc.0 }}"><img longdesc="Current Content Feed der Zeitschrift {{ record.journal_title }}" src="{{ MEDIA_URL }}/css/screen/img/icons/feed.png" alt="Current Contents Feed dieser Zeitschrift"/></a>{% endif %}{% if record.jcr %} <a href="http://gateway.isiknowledge.com/gateway/Gateway.cgi?GWVersion=2&SrcAuth=Bochum&SrcApp=bobib&KeyRecord={{ record.issn.0 }}&DestApp=JCR&PointOfEntry=Impact">(Peer reviewed)</a>{% endif %}</dd> 
     17<dd>{{ record.issn.0 }}{% if record.tictoc %} <a href="{{ record.tictoc.0 }}"><img longdesc="Current Content Feed der Zeitschrift {{ record.journal_title }}" src="{{ MEDIA_URL }}/css/screen/img/icons/feed.png" alt="Current Contents Feed dieser Zeitschrift"/></a>{% endif %}{% if record.jcr %} <a href="http://gateway.isiknowledge.com/gateway/Gateway.cgi?GWVersion=2&amp;SrcAuth=Bochum&amp;SrcApp=bobib&amp;KeyRecord={{ record.issn.0 }}&amp;DestApp=JCR&amp;PointOfEntry=Impact">(Peer reviewed)</a>{% endif %}</dd> 
    1818{% endif %} 
    1919{% if record.zdbid %} 
     
    3838{% endfor %} 
    3939{% endif %} 
     40{% if record.mesh_term %} 
     41<dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     42<dd> 
     43    {% for mesh in record.mesh_term %} 
     44    {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&amp;cmd=DetailsSearch">{{ mesh }}</a></dd> 
     45{% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&amp;cmd=DetailsSearch">{{ mesh }}; </a> 
     46{% endif %} 
     47{% endfor %} 
     48{% endif %} 
    4049{% if record.subject %} 
    4150<dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    4251<dd>{% for subject in record.subject %} 
    43     {% if forloop.last %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a></dd> 
    44 {% else %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a>; 
     52    {% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a></dd> 
     53{% else %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a>; 
    4554{% endif %} 
    4655{% endfor %} 
  • django/templates/einzeltreffer/aufsatz.html

    r29 r37  
    22{% load amazon_util %} 
    33{% if record.isbn %} 
    4 <img src="{{ record.isbn.0|amazon_url }}" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="125" alt="Titelcover"/> 
     4<img src="{{ record.isbn.0|amazon_url }}" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="125" alt="Cover"/> 
    55{% else %} 
    66<img src="{{ MEDIA_URL }}/covers/{{ record.issn.0|no_dash }}.gif" width="100" alt="Cover" style="float:right; padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;"/> 
    77{% endif %} 
    8 {#<img src="/media/css/screen/img/icons/bookcover.png" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="100" alt="Titelcover"/>#} 
    9 <h4>{{ record.title|safe }}{% if record.alternative %} = {{ record.alternative }}{% endif %}{% if record.titeluzsatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
     8<h4>{{ record.title|safe }}{% if record.parallel_title %} = {{ record.parallel_title }}{% endif %}{% if record.titelzusatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
    109<div class="myMenu"> 
    1110    <dl class="rootVoices"> 
    12         {% if record.alternative %} 
    13         <dt>Titel</dt> 
    14         <dd>{{ record.alternative }}</dd> 
    15         {% endif %} 
    16         {% if record.titelzusatz %} 
    17         <dt>Titel</dt> 
    18         <dd>{{ record.titelzusatz %}</dd> 
    19         {% endif %} 
    20         {% if record.creator %} 
    21         <dt>Verfasser</dt> 
    22         <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %} 
     11        {% if record.genrel2 != "Beitrag in Gesetzeskommentar" %} 
     12            {% if record.creator %} 
     13            <dt>Verfasser</dt> 
     14            <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="/search?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %} 
     15            {% endif %} 
    2316        {% endif %} 
    2417        {% if record.contributor %} 
    2518        <dt>Beitragender</dt> 
    26         <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }}; </a>{% endif %}{% endfor %} 
     19        <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="/search?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}; </a>{% endif %}{% endfor %} 
    2720        {% endif %} 
    2821 
     
    3528        {% endifequal %} 
    3629 
     30        {% ifequal record.genrel2 "Vorwort" %} 
     31        {% include "einzeltreffer/artikel.html" %} 
     32        {% endifequal %} 
     33 
     34        {% ifequal record.genrel2 "Zeitungsartikel" %} 
     35        {% include "einzeltreffer/artikel.html" %} 
     36        {% endifequal %} 
     37 
    3738        {% ifequal record.genrel2 "Lexikonartikel" %} 
    3839        {% include "einzeltreffer/lexikonartikel.html" %} 
     
    4041 
    4142        {% ifequal record.genrel2 "Beitrag in Gesetzeskommentar" %} 
    42         {% include "einzeltreffer/artikel.html" %} 
     43        {% include "einzeltreffer/gesetz.html" %} 
    4344        {% endifequal %} 
    4445 
     
    4647        {% ifequal record.genrel2 "Beitrag in Sammelwerk" %} 
    4748        <dt>In</dt> 
    48         <dd>{% for editor in record.editor %}{% if forloop.last %} {{ editor }} (Hrsg.):{% else %}{{ editor }}; {% endif %}{% endfor %} {{ record.journal_title }}. {% if record.edition %} {{ record.edition }} - {% endif %}{% if record.place %}{{ record.place.0 }} : {% endif %}{% if record.publisher.0 %}{{ record.publisher.0 }}, {% endif %}{% if record.date %}{{ record.date }},{% endif %}{% if record.pages %} S. {{ record.pages.0 }}{% endif %}{% if record.series_title %}. - ({{ record.series_title.0 }}){% endif %}</dd> 
     49        <dd>{% for editor in record.editor %}{% if forloop.last %} <a href="/search?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a> (Hrsg.):{% else %}<a href="/search?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a>; {% endif %}{% endfor %} {{ record.journal_title }}. {% if record.edition %} {{ record.edition }} - {% endif %}{% if record.place %}{{ record.place.0 }} : {% endif %}{% if record.publisher.0 %}{{ record.publisher.0 }}, {% endif %}{% if record.date %}{{ record.date }}{% endif %}{% if record.pages %}, S. {{ record.pages.0 }}{% endif %}{% if record.series_title %}. - ({{ record.series_title.0 }}{% if record.series_volume %} ; {{ record.series_volume.0 }}{% endif %}){% endif %}{% if record.host_volume %}. - Bd. {{ record.host_volume }}{% endif %}</dd> 
    4950        {% if record.isbn %} 
    5051        <dt>ISBN</dt> 
     
    6566        {% endif %} 
    6667        {% endif %} 
     68        {% if record.zentraleeinheit %} 
     69        <dt>Zentrale Einrichtung</dt> 
     70        <dd>{{ record.zentraleeinheit }}</dd> 
     71        {% endif %} 
    6772    </dl> 
    6873</div> 
  • django/templates/einzeltreffer/buch.html

    r33 r37  
    11{% load amazon_util %} 
    22{% if record.isbn %} 
    3 <img src="{{ record.isbn.0|amazon_url }}" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="125" alt="Titelcover"/> 
     3<img src="{{ record.isbn.0|amazon_url }}" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="125" alt="Cover"/> 
    44{% endif %} 
    5 <h4>{{ record.title|safe }}{% if record.alternative %} = {{ record.alternative }}{% endif %}{% if record.titeluzsatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
     5<h4>{{ record.title|safe }}{% if record.parallel_title %} = {{ record.parallel_title }}{% endif %}{% if record.titelzusatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
    66<div class="myMenu"> 
    77    <dl class="rootVoices"> 
    88        {% if record.creator %} 
    99        <dt>Verfasser</dt> 
    10         <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %} 
     10        <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1111        {% endif %} 
    1212        {% if record.editor %} 
    1313        <dt>Herausgeber</dt> 
    14         <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %} 
     14        <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="/search?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a>{% else %}<a href="/search?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1515        {% endif %} 
    1616        {% if record.betreuer %} 
    1717        <dt>Betreuer</dt> 
    18         <dd>{% for betreuer in record.betreuer %}{% if forloop.last %}<a href="#" class="rootVoice">{{ betreuer }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ betreuer }};&nbsp;</a>{% endif %}{% endfor %} 
     18        <dd>{% for betreuer in record.betreuer %}{% if forloop.last %}<a href="/search?q=betreuer:%22{{ betreuer }}%22" class="rootVoice">{{ betreuer }}</a>{% else %}<a href="/search?q=betreuer:%22{{ betreuer }}%22" class="rootVoice">{{ betreuer }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1919        {% endif %} 
    2020        {% if record.begruender %} 
    2121        <dt>Begründer</dt> 
    22         <dd>{% for begruender in record.begruender %}{% if forloop.last %}<a href="#" class="rootVoice">{{ begruender }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ begruender }};&nbsp;</a>{% endif %}{% endfor %} 
     22        <dd>{% for begruender in record.begruender %}{% if forloop.last %}<a href="/search?q=begruender:%22{{ begruender }}%22" class="rootVoice">{{ begruender }}</a>{% else %}<a href="/search?q=begruender:%22{{ begruender }}%22" class="rootVoice">{{ begruender }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    2323        {% endif %} 
    2424        {% if record.contributor %} 
    2525        <dt>Beitragender</dt> 
    26         <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %} 
     26        <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a>{% else %}<a href="/search?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    2727        {% endif %} 
    2828        {% if record.institution %} 
    2929        <dt>Institution</dt> 
    30         <dd>{% for institution in record.institution %}{% if forloop.last %}<a href="#" class="rootVoice">{{ institution }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ institution }};&nbsp;</a>{% endif %}{% endfor %} 
     30        <dd>{% for institution in record.institution %}{% if forloop.last %}<a href="/search?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }}</a>{% else %}<a href="/search?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    3131        {% endif %} 
    3232        {% if record.edition %} 
     
    8383        {% if record.language %} 
    8484        <dt>Sprache{{ record.language|pluralize:"n" }}</dt> 
    85         <dd>{% for lang in record.language %}{% if forloop.last %}<a href="#" class="rootVoice">{{ lang }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ lang }};&nbsp;</a>{% endif %}{% endfor %} 
     85        <dd>{% for lang in record.language %}{% if forloop.last %} {{ lang }}{% else %}{{ lang }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    8686        {% endif %} 
    87         {% if record.mesh %} 
    88         <dt>MeSH-{{ record.mesh|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    89         <dd>{% for mesh in record.mesh %}{% if forloop.last %}<a href="#" class="rootVoice">{{ mesh }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ mesh }};&nbsp;</a>{% endif %}{% endfor %} 
     87        {% if record.mesh_term %} 
     88        <dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     89        <dd> 
     90            {% for mesh in record.mesh_term %} 
     91            {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     92        {% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     93        {% endif %} 
     94        {% endfor %} 
    9095        {% endif %} 
    9196        {% if record.stwterm %} 
     
    99104        {% if record.subject %} 
    100105        <dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    101         <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="#" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="/search?q=subject:{{ subject }}" class="rootVoice">{{ subject }}; </a>{% endif %}{% endfor %} 
     106        <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22" class="rootVoice">{{ subject }}</a>{% else %}<a href="/search?q=subject:%22{{ subject }}%22" class="rootVoice">{{ subject }}; </a>{% endif %}{% endfor %}</dd> 
    102107        {% endif %} 
    103108        {% if record.toc_link or record.toc_text %} 
     
    111116        {% if record.note %} 
    112117        <dt>Anmerkungen</dt> 
    113         <dd>{{ record.note }}</dd> 
     118        <dd>{{ record.note.0 }}</dd> 
    114119        {% endif %} 
     120        {% if record.fach %} 
     121        <dt>Fach</dt> 
     122        <dd>{{ record.fach }}</dd> 
     123        {% else %} 
     124        {% if record.fakultaet %} 
    115125        <dt>Fakultät</dt> 
    116126        <dd>{{ record.fakultaet }}</dd> 
    117         {% if record.fach %} 
    118         <dt>Lehrstuhl/Institut</dt> 
    119         <dd>{{ record.fach }}</dd> 
    120127        {% endif %} 
    121          
     128        {% endif %} 
     129        {% if record.zentraleeinheit %} 
     130        <dt>Zentrale Einrichtung</dt> 
     131        <dd>{{ record.zentraleeinheit }}</dd> 
     132        {% endif %} 
    122133    </dl> 
    123134</div> 
  • django/templates/einzeltreffer/graue_literatur.html

    r33 r37  
    11{% if record.creator %} 
    22<dt>Verfasser</dt> 
    3 <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %} 
     3<dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    44{% endif %} 
    55 
    66{% if record.contributor %} 
    77<dt>{{ record.contributor|length|pluralize:"Beitragender, Beitragende" }}</dt> 
    8 <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %} 
     8<dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search/?q=contributor%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a>{% else %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    99{% endif %} 
    1010{% if record.institution %} 
    1111<dt>Institution{{ record.institution|pluralize:"en" }}</dt> 
    12 <dd>{% for institution in record.institution %}{% if forloop.last %}<a href="#" class="rootVoice">{{ institution }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ institution }};&nbsp;</a>{% endif %}{% endfor %} 
     12<dd>{% for institution in record.institution %}{% if forloop.last %}<a href="/search/?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }}</a>{% else %}<a href="/search/?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }};&nbsp;</a>{% endif %}{% endfor %} 
    1313{% endif %} 
    1414{% if record.pages or record.beigabe %} 
    1515<dt>Umfang</dt> 
    16 <dd>{% if record.pages%}{{ record.pages.0 }} S.{% endif %}{% if record.beigabe %}: {{ record.beigabe }}{% endif %}</dd> 
     16<dd>{% if record.pages%}S. {{ record.pages.0 }}{% endif %}{% if record.beigabe %} : {{ record.beigabe }}{% endif %}</dd> 
    1717{% endif %} 
    1818{% if record.urn %} 
     
    2626{% if record.language %} 
    2727<dt>Sprache{{ record.language|pluralize:"en" }}</dt> 
    28 <dd>{% for lang in record.language %}{% if forloop.last %}<a href="#" class="rootVoice">{{ lang }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ lang }};&nbsp;</a>{% endif %}{% endfor %} 
     28<dd>{% for lang in record.language %}{% if forloop.last %} {{ lang }}{% else %}{{ lang }};&nbsp;{% endif %}{% endfor %}</dd> 
    2929{% endif %} 
    30 {% if record.mesh %} 
    31 <dt>MeSH-{{ record.mesh|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    32 <dd>{% for mesh in record.mesh %}{% if forloop.last %}<a href="#" class="rootVoice">{{ mesh }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ mesh }};&nbsp;</a>{% endif %}{% endfor %} 
     30{% if record.mesh_term %} 
     31<dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     32<dd> 
     33    {% for mesh in record.mesh_term %} 
     34    {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     35{% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     36{% endif %} 
     37{% endfor %} 
    3338{% endif %} 
    3439{% if record.stwterm %} 
     
    4247{% if record.subject %} 
    4348<dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    44 <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="#" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %} 
     49<dd>{% for subject in record.subject %}{% if forloop.last %}<a href="/search/?q=fsubject:{{ subject }}" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="/search/?q=fsubject:{{ subject }}" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %} 
    4550{% endif %} 
    4651{% if record.toc_link or record.toc_text %} 
     
    5459{% if record.note %} 
    5560<dt>Anmerkungen</dt> 
    56 <dd>{{ record.note }}</dd> 
     61<dd>{{ record.note.0}}</dd> 
    5762{% endif %} 
  • django/templates/einzeltreffer/internetdokument.html

    r33 r37  
    1 <h4>{{ record.title|safe }}{% if record.alternative %} = {{ record.alternative }}{% endif %}{% if record.titeluzsatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
     1<h4>{{ record.title|safe }}{% if record.parallel_title %} = {{ record.parallel_title }}{% endif %}{% if record.titelzusatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
    22<div class="myMenu"> 
    33    <dl class="rootVoices"> 
    44        {% if record.creator %} 
    55        <dt>Verfasser</dt> 
    6         <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %} 
     6        <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    77        {% endif %} 
    88        {% if record.editor %} 
    99        <dt>Herausgeber</dt> 
    10         <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %} 
     10        <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a>{% else %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1111        {% endif %} 
    1212        {% if record.contributor %} 
    1313        <dt>Mitarbeiter</dt> 
    14         <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %} 
     14        <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a>{% else %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1515        {% endif %} 
    1616        {% if record.institution %} 
    1717        <dt>Institution</dt> 
    18         <dd>{{ record.institution}}</dd> 
     18        <dd>{% for institution in record.institution %}{% if forloop.last %}<a href="/search/?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }}</a>{% else %}<a href="/search/?q=institution:%22{{ institution }}%22" class="rootVoice">{{ institution }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1919        {% endif %} 
    2020        {% if record.edition %} 
     
    2828        {% if record.pages or record.beigabe %} 
    2929        <dt>Umfang</dt> 
    30         <dd>{% if record.pages%}{{ record.pages.0 }}{% endif %}{% if record.beigabe %}: {{ record.beigabe }}{% endif %}</dd> 
     30        <dd>{% if record.pages%}{{ record.pages.0 }} S.{% endif %}{% if record.beigabe %} : {{ record.beigabe }}{% endif %}</dd> 
    3131        {% endif %} 
    3232        {% if record.baende %} 
     
    4242        <dd>{{ record.urn }}</dd> 
    4343        {% endif %} 
    44  
    45         {# Book series #} 
    46         {% ifequal record.genrel2 "Monographie" %} 
    47         {% include "einzeltreffer/schriftenreihe.html" %} 
    48         {% endifequal %} 
    49         {% ifequal record.genrel2 "Sammelwerk" %} 
    50         {% include "einzeltreffer/schriftenreihe.html" %} 
    51         {% endifequal %} 
    52         {% ifequal record.genrel2 "Tagungsband" %} 
    53         {% include "einzeltreffer/schriftenreihe.html" %} 
    54         {% endifequal %} 
    55         {% ifequal record.genrel2 "Edition" %} 
    56         {% include "einzeltreffer/schriftenreihe.html" %} 
    57         {% endifequal %} 
    58  
    59         {# Special issues #} 
    60         {% ifequal record.genrel2 "Sonderheft" %} 
    61         {% include "einzeltreffer/sonderheft.html" %} 
    62         {% endifequal %} 
    63  
    6444        {% if record.genrel2 %} 
    6545        <dt>Publikationstyp</dt> 
     
    7050        <dd>{{ record.language.0 }}</dd> 
    7151        {% endif %} 
    72         {% if record.mesh %} 
    73         <dt>MeSH-{{ record.mesh|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    74         <dd>{% for mesh in record.mesh %}{% if forloop.last %}<a href="#" class="rootVoice">{{ mesh }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ mesh }};&nbsp;</a>{% endif %}{% endfor %} 
     52        {% if record.mesh_term %} 
     53        <dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     54        <dd> 
     55            {% for mesh in record.mesh_term %} 
     56            {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     57        {% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     58        {% endif %} 
     59        {% endfor %} 
    7560        {% endif %} 
    7661        {% if record.stwterm %} 
     
    8469        {% if record.subject %} 
    8570        <dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    86         <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="#" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %} 
     71        <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="/subject/?q=fsubject:%22{{ subject }}%22" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="/subject/?q=fsubject:%22{{ subject }}%22" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %} 
    8772        {% endif %} 
    8873        {% if record.toc_link or record.toc_text %} 
     
    9681        {% if record.note %} 
    9782        <dt>Anmerkungen</dt> 
    98         <dd>{{ record.note }}</dd> 
     83        <dd>{{ record.note.0 }}</dd> 
    9984        {% endif %} 
    10085        <dt>Fakultät</dt> 
  • django/templates/einzeltreffer/lexikonartikel.html

    r28 r37  
    22<dd>{% if record.editor %} 
    33    {% for editor in record.editor %} 
    4     {% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd> 
    5 {% else %}<a href="#" class="rootVoice">{{ editor }}; </a> 
     4    {% if forloop.last %}<a href="/subject/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a> 
     5{% else %}<a href="/subject/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}; </a> 
    66{% endif %} 
    77{% endfor %}: 
     
    99{% if record.journal_title %}{{ record.journal_title }}. {% endif %} 
    1010{% if record.edition %} - {{ record.edition }}. Aufl.{% endif %} 
    11 {% if record.place %} - {{ record.place }}{% endif %} 
    12 {% if record.publisher %}:{{ record.publisher }}, {% endif %} 
     11{% if record.place %} - {{ record.place.0 }}{% endif %} 
     12{% if record.publisher %}: {{ record.publisher.0 }}, {% endif %} 
    1313{% if record.date %}{{ record.date }}, {% endif %} 
    14 {% if record.pages %}S. {{ record.pages.0 }}{% endif %}</dd> 
     14{% if record.pages %}S. {{ record.pages.0 }}{% endif %} 
     15{% if record.series_title %}({{ record.series_title }} ; {{ record.series_volume }}){% endif %}{% if record.host_volume %}. - Bd. {{ record.host_volume }}{% endif %}</dd> 
    1516{% if record.issn %} 
    1617<dt>ISSN</dt> 
     
    3839{% endfor %} 
    3940{% endif %} 
     41{% if record.mesh_term %} 
     42<dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     43<dd> 
     44    {% for mesh in record.mesh_term %} 
     45    {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     46{% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     47{% endif %} 
     48{% endfor %} 
     49{% endif %} 
    4050{% if record.subject %} 
    4151<dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    4252<dd>{% for subject in record.subject %} 
    43     {% if forloop.last %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a></dd> 
    44 {% else %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a>; 
     53    {% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a></dd> 
     54{% else %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a>; 
    4555{% endif %} 
    4656{% endfor %} 
  • django/templates/einzeltreffer/patent.html

    r28 r37  
    11{% if record.erfinder %} 
    22<dt>Erfinder</dt> 
    3 <dd>{% for erfinder in record.erfinder %}{% if forloop.last %}<a href="#" class="rootVoice">{{ erfinder }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ erfinder }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
     3<dd>{% for erfinder in record.erfinder %}{% if forloop.last %}<a href="/search/?q=erfinder:%22{{ erfinder }}%22" class="rootVoice">{{ erfinder }}</a></dd>{% else %}<a href="/search/?q=erfinder:%22{{ erfinder }}%22" class="rootVoice">{{ erfinder }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    44{% endif %} 
    55{% if record.veroeffentlichungsnr %} 
     
    1313{% if record.anmelder %} 
    1414<dt>Anmelder</dt> 
    15 <dd>{% for anmelder in record.anmelder %}{% if forloop.last %}<a href="#" class="rootVoice">{{ anmelder }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ anmelder }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
     15<dd>{% for anmelder in record.anmelder %}{% if forloop.last %}<a href="/search/?q=anmelder:%22{{ anmelder }}%22" class="rootVoice">{{ anmelder }}</a></dd>{% else %}<a href="/search/?q=anmelder:%22{{ anmelder }}%22" class="rootVoice">{{ anmelder }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1616{% endif %} 
    1717{% if record.anmeldeland %} 
  • django/templates/einzeltreffer/pressemitteilung.html

    r28 r37  
    11{% if record.creator %} 
    22<dt>Verfasser</dt> 
    3 <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %} 
     3<dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %}</dd> 
    44{% endif %} 
    5 <dt>In</dt> 
    6 <dd>{% if record.editor %} 
    7     {% for editor in record.editor %} 
    8     {% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd> 
    9 {% else %}<a href="#" class="rootVoice">{{ editor }}; </a> 
     5{% if record.editor %} 
     6<dt>Herausgeber</dt> 
     7<dd>{% for editor in record.editor %}{% if forloop.last %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a>{% else %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}; </a>{% endif %}{% endfor %}</dd> 
    108{% endif %} 
    11 {% endfor %}: 
     9{% if record.place or record.date %} 
     10<dt>Erschienen</dt> 
     11<dd>{% if record.place %}{{ record.place.0 }}{% endif %}{% if record.date %}, {{ record.date }}{% endif %}</dd> 
    1212{% endif %} 
    13 {% if record.journal_title %}{{ record.journal_title }}. {% endif %} 
    14 {% if record.edition %} - {{ record.edition }}. Aufl.{% endif %} 
    15 {% if record.place %} - {{ record.place }}{% endif %} 
    16 {% if record.publisher %}:{{ record.publisher.0 }}, {% endif %} 
    17 {% if record.date %}{{ record.date }}, {% endif %} 
    18 {% if record.pages %}S. {{ record.pages.0 }}{% endif %}</dd> 
     13{% if record.pages or record.beigaben %} 
     14<dt>Umfang</dt> 
     15<dd>{% if record.pages %}S. {{ record.pages.0 }}{% endif %}{% if record.beigaben %} : {{ record.beigaben }}{% endif %}</dd> 
     16{% endif %} 
    1917{% if record.issn %} 
    2018<dt>ISSN</dt> 
     
    4240{% endfor %} 
    4341{% endif %} 
     42{% if record.mesh_term %} 
     43<dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     44<dd> 
     45    {% for mesh in record.mesh_term %} 
     46    {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     47{% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     48{% endif %} 
     49{% endfor %} 
     50{% endif %} 
    4451{% if record.subject %} 
    4552<dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    4653<dd>{% for subject in record.subject %} 
    47     {% if forloop.last %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a></dd> 
    48 {% else %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a>; 
     54    {% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a></dd> 
     55{% else %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a>; 
    4956{% endif %} 
    5057{% endfor %} 
  • django/templates/einzeltreffer/schriftenreihe.html

    r33 r37  
    11{% if record.series_title or record.volume %} 
    22<dt>Schriftenreihe</dt> 
    3 <dd>{% if record.series_title %}{{ record.series_title.0 }}{% endif %}{%if record.volume %}; {{ record.volume.0 }}{% endif %}</dd> 
     3<dd>{% if record.series_title %}{{ record.series_title.0 }}{% endif %}{%if record.series_volume %}; {{ record.series_volume.0 }}{% endif %}</dd> 
    44    {% endif %} 
  • django/templates/einzeltreffer/software.html

    r33 r37  
    11<img src="css/screen/img/icons/bookcover.png" style="float:right;padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;" width="100" alt="Titelcover"/> 
    2 <h4>{{ record.title|safe }}{% if record.alternative %} = {{ record.alternative }}{% endif %}{% if record.titeluzsatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
     2<h4>{{ record.title|safe }}{% if record.parallel_title %} = {{ record.parallel_title }}{% endif %}{% if record.titelzusatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
    33<div class="myMenu"> 
    44    <dl class="rootVoices"> 
    55        {% if record.creator %} 
    66        <dt>Verfasser</dt> 
    7         <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %} 
     7        <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    88        {% endif %} 
    99        {% if record.editor %} 
    1010        <dt>Herausgeber</dt> 
    11         <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %} 
     11        <dd>{% for editor in record.editor %}{% if forloop.last %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a>{% else %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1212        {% endif %} 
    1313        {% if record.entwickler %} 
    1414        <dt>Entwickler</dt> 
    15         <dd>{% for entwickler in record.entwickler %}{% if forloop.last %}<a href="#" class="rootVoice">{{ entwickler }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ entwickler }};&nbsp;</a>{% endif %}{% endfor %} 
     15        <dd>{% for entwickler in record.entwickler %}{% if forloop.last %}<a href="/search/?q=entwickler:%22{{ entwickler }}%22" class="rootVoice">{{ entwickler }}</a>{% else %}<a href="/search/?q=entwickler:%22{{ entwickler }}%22" class="rootVoice">{{ entwickler }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    1616        {% endif %} 
    1717        {% if record.contributor %} 
    1818        <dt>Mitarbeiter</dt> 
    19         <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %} 
     19        <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a>{% else %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    2020        {% endif %} 
    2121        {% if record.institution %} 
     
    7575        <dd>{{ record.language.0 }}</dd> 
    7676        {% endif %} 
    77         {% if record.mesh %} 
    78         <dt>MeSH-{{ record.mesh|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    79         <dd>{% for mesh in record.mesh %}{% if forloop.last %}<a href="#" class="rootVoice">{{ mesh }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ mesh }};&nbsp;</a>{% endif %}{% endfor %} 
     77        {% if record.mesh_term %} 
     78        <dt>MESH-{{ record.stwterm|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
     79        <dd> 
     80            {% for mesh in record.mesh_term %} 
     81            {% if forloop.last %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch"}">{{ mesh }}</a></dd> 
     82            {% else %}<a href="http://www.ncbi.nlm.nih.gov/pubmed?term=%22{{ mesh }}%22[MeSH Terms]&cmd=DetailsSearch">{{ mesh }}; </a> 
     83            {% endif %} 
     84            {% endfor %} 
    8085        {% endif %} 
    8186        {% if record.stwterm %} 
     
    8994        {% if record.subject %} 
    9095        <dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    91         <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="#" class="rootVoice">{{ subject }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %} 
     96        <dd>{% for subject in record.subject %}{% if forloop.last %}<a href="/search/?q=fsubject:%22{{ subject }}%22" class="rootVoice">{{ subject }}</a>{% else %}<a href="/search/?q=fsubject:%22{{ subject }}%22" class="rootVoice">{{ subject }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    9297        {% endif %} 
    9398        {% if record.toc_link or record.toc_text %} 
     
    101106        {% if record.note %} 
    102107        <dt>Anmerkungen</dt> 
    103         <dd>{{ record.note }}</dd> 
     108        <dd>{{ record.note.0 }}</dd> 
    104109        {% endif %} 
    105110        <dt>Fakultät</dt> 
  • django/templates/einzeltreffer/sonstiges.html

    r29 r37  
    44<img src="{{ MEDIA_URL }}/covers/{{ record.issn.0|no_dash }}.gif" width="100" alt="Cover" style="float:right; padding-left:0.5em; padding-bottom: 0.5em; padding-top: 0.5em; background-color:#fff;"/> 
    55{% endif %} 
    6 <h4>{{ record.title|safe }}{% if record.alternative %} = {{ record.alternative }}{% endif %}{% if record.titeluzsatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
     6<h4>{{ record.title|safe }}{% if record.parallel_title %} = {{ record.parallel_title }}{% endif %}{% if record.titelzusatz %} ({{ record.titelzusatz }}){% endif %}</h4> 
    77<div class="myMenu"> 
    88    <dl class="rootVoices"> 
     
    3131        {% endif %} 
    3232        {% endif %} 
     33        {% if record.zentraleeinheit %} 
     34        <dt>Zentrale Einrichtung</dt> 
     35        <dd>{{ record.zentraleeinheit }}</dd> 
     36        {% endif %} 
    3337    </dl> 
    3438</div> 
  • django/templates/einzeltreffer/vortrag.html

    r28 r37  
    11{% if record.vortragender %} 
    22<dt>{{ record.vortragender|pluralize:"Vortragender,Vortragende" }}</dt> 
    3 <dd>{% for vortragender in record.vortragender %}{% if forloop.last %}<a href="#" class="rootVoice">{{ vortragender }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ vortragender }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
     3<dd>{% for vortragender in record.vortragender %}{% if forloop.last %}<a href="/search/?q=vortragender:%22{{ vortragender }}%22" class="rootVoice">{{ vortragender }}</a>{% else %}<a href="/search/?q=vortragender:%22{{ vortragender }}%22" class="rootVoice">{{ vortragender }};&nbsp;</a>{% endif %}{% endfor %}</dd> 
    44{% endif %} 
    55{% if record.date or record.place %} 
     
    1010<dt>{{ record.subject|pluralize:"Schlagwort,Schlagwörter" }}</dt> 
    1111<dd>{% for subject in record.subject %} 
    12     {% if forloop.last %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a></dd> 
    13 {% else %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a>;  
     12    {% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a></dd> 
     13{% else %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a>; 
    1414{% endif %} 
    1515{% endfor %} 
  • django/templates/einzeltreffer/vorwort.html

    r28 r37  
    11{% if record.creator %} 
    22<dt>Verfasser</dt> 
    3 <dd>{% for creator in record.creator %}{% if forloop.last %}<a href="#" class="rootVoice">{{ creator }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %} 
     3<dd>{% for creator in record.creator %}{% if forloop.last %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}</a>{% else %}<a href="/search/?q=creator:%22{{ creator }}%22" class="rootVoice">{{ creator }}; </a>{% endif %}{% endfor %}</dd> 
    44{% endif %} 
    55{% if record.contributor %} 
    66<dt>{{ record.contributor|length|pluralize:"Beitragender, Beitragende" }}</dt> 
    7 <dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="#" class="rootVoice">{{ contributor }}</a></dd>{% else %}<a href="#" class="rootVoice">{{ contributor }}; </a>{% endif %}{% endfor %} 
     7<dd>{% for contributor in record.contributor %}{% if forloop.last %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}</a>{% else %}<a href="/search/?q=contributor:%22{{ contributor }}%22" class="rootVoice">{{ contributor }}; </a>{% endif %}{% endfor %}</dd> 
    88{% endif %} 
    99<dt>In</dt> 
    1010<dd>{% if record.editor %} 
    1111    {% for editor in record.editor %} 
    12     {% if forloop.last %}<a href="#" class="rootVoice">{{ editor }}</a></dd> 
    13 {% else %}<a href="#" class="rootVoice">{{ editor }}; </a> 
     12    {% if forloop.last %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}</a> 
     13    {% else %}<a href="/search/?q=editor:%22{{ editor }}%22" class="rootVoice">{{ editor }}; </a></dd> 
    1414{% endif %} 
    1515{% endfor %}: 
     
    4949<dt>{{ record.subject|pluralize:'Schlagwort, Schlagwörter' }}</dt> 
    5050<dd>{% for subject in record.subject %} 
    51     {% if forloop.last %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a></dd> 
    52 {% else %}<a href="/search?q=fsubject:{{ subject }}">{{ subject }}</a>; 
     51    {% if forloop.last %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a> 
     52{% else %}<a href="/search?q=fsubject:%22{{ subject }}%22">{{ subject }}</a>;</dd> 
    5353{% endif %} 
    5454{% endfor %} 
  • django/templates/empty.html

    r29 r37  
    5757 
    5858                                                                        {% for tag, value in tagcloud %} 
    59     <a href="/{{ value.query }}" class="tagcloud-{{ value.weight }}">{{ tag }}</a> 
     59    <a href="/search/?q={{ value.query }}" class="tagcloud-{{ value.weight }}">{{ tag }}</a> 
    6060                                                                        {% endfor %} 
    6161</div> 
  • django/templates/index.html

    r35 r37  
    2727                        <li> 
    2828                            {% endif %} 
    29                             <a about="http://bibliographie.ub.rub.de" rel="dcterms:hasPart" href="/search?q=fakultaet:{% autoescape off %}%22{% endautoescape %}{{ facet.cat|safe|urlencode }}{% autoescape off %}%22{% endautoescape %}">{{ facet.cat }} ({{ facet.count }})</a> 
    30                             <span about="http://bibliographie.ub.rub.de/search?q=*:*&amp;fq=fperson%22{{ facet.cat|safe|urlencode }}%22&amp;sort={{ sorting }}" property="dcterms:extent" content="{{ facet.count }}"></span> 
    31                             <span about="http://bibliographie.ub.rub.de/search?q=*:*&amp;fq=fperson%22{{ facet.cat|safe|urlencode }}%22&amp;sort={{ sorting }}" property="foaf:Person" content="{{ facet.cat }}"></span> 
     29                            <a about="http://bibliographie.ub.rub.de" rel="dcterms:hasPart" href="http://134.147.247.36:8000/search?q=fakultaet:{% autoescape off %}%22{% endautoescape %}{{ facet.cat|safe|urlencode }}{% autoescape off %}%22{% endautoescape %}">{{ facet.cat }} ({{ facet.count }})</a> 
    3230                            {% if facet.subs %} 
    3331                            {% for sub in facet.subs %} 
  • django/templates/journal.html

    r29 r37  
    1111                {% endif %} 
    1212        {% endblock headtitle %} 
    13 {% block javascript %} 
     13{% block extrajs %} 
    1414<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.min.js"></script> 
    1515<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.navigate.js"></script> 
     
    1717<script language="javascript" type="text/javascript" src="{{ MEDIA_URL }}/js/excanvas.min.js"> 
    1818</script><![endif]--> 
    19 {% endblock javascript %} 
     19{% endblock extrajs %} 
    2020{% block body%}<body id="titelvollansicht">{% endblock %} 
    2121{% block breadcrumb %} 
  • django/templates/journals.html

    r28 r37  
    1111                {% endif %} 
    1212        {% endblock headtitle %} 
    13 {% block javascript %} 
     13{% block extrajs %} 
    1414<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.min.js"></script> 
    1515<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.navigate.js"></script> 
     
    1717<script language="javascript" type="text/javascript" src="{{ MEDIA_URL }}/js/excanvas.min.js"> 
    1818</script><![endif]--> 
    19 {% endblock javascript %} 
     19{% endblock extrajs %} 
    2020{% block body%}<body id="titelvollansicht">{% endblock %} 
    2121{% block breadcrumb %} 
  • django/templates/overview.html

    r24 r37  
    11{% extends "base.html" %} 
    2 {% block javascript %} 
     2{% block extrajs %} 
    33<style type="text/css"> 
    44 
     
    4545    {% endfor %} 
    4646</style> 
    47 {% endblock javascript %} 
     47{% endblock extrajs %} 
    4848{% block institutions_facets %} 
    4949<div class="r1"> 
  • django/templates/person.html

    r29 r37  
    1111                {% endif %} 
    1212        {% endblock headtitle %} 
    13 {% block javascript %} 
     13{% block extrajs %} 
    1414<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.min.js"></script> 
    1515<script type="text/javascript" src="{{ MEDIA_URL }}/js/jquery.flot.navigate.js"></script> 
     
    1919 
    2020 
    21 {% endblock javascript %} 
     21{% endblock extrajs %} 
    2222{% block body%}<body id="titelvollansicht">{% endblock %} 
    2323{% block breadcrumb %} 
     
    5959<div id="visualisierung"> 
    6060<h3 about ="/person/{{ pndid }}" typeof="foaf:Person"><span property="foaf:familyName">{{ info.nachname }}</span>, <span property="foaf:givenName">{{ info.vorname }}</span></h3> 
    61 <dl>{% if info.alias %}<dt>Andere Namen</dt><dd>{{ info.alias }}</dd>{% endif %} 
     61<dl>{% if info.alias %}<dt>Andere Namen</dt><dd>{% for alias in info.alias %}{{ alias }}<br/>{% endfor %}</dd>{% endif %} 
    6262    <dt>Neueste Publikationen</dt> 
    6363    <dd> 
     
    6666            <li><a href="/entry/{{ record_id.id }}" title="{{ record_id.title }}">{{ record_id.title }} ({{ record_id.fdate }})</a></li> 
    6767            {% endfor %} 
    68             <li id="alle_publikationen"><a href="/search?q=pndid:{{ id }}" title="Alle Publikationen von {{ info.vorname }} {{ info.nachname }}">Alle Publikationen</a></li> 
     68            <li id="alle_publikationen"><a href="/search?q=pndid:{{ id }}" rel="foaf:publications" title="Alle Publikationen von {{ info.vorname }} {{ info.nachname }}">Alle Publikationen</a></li> 
    6969        </ul>         
    7070    </dd> 
     
    9292        {% endif %} 
    9393        {% if fakultaet_facet %} 
    94         <h4 class="ausgeklappt">Fakultäten</h4> 
     94        <h4 class="ausgeklappt">Fakultät{{ fakultaet_facet|pluralize:"en" }}</h4> 
    9595        <ul> 
    9696            {% for facet in fakultaet_facet %} 
     
    155155        <dt>Normdaten</dt><dd> 
    156156        <ul> 
     157            {% for id, info in person.items %} 
    157158            <li><a rel="owl:sameAs" href="http://d-nb.info/gnd/{{ id }}">Nachweis in der Deutschen Nationalbibliothek</a> <a href="http://d-nb.info/gnd/{{ id }}/about">(RDF)</a></li> 
     159            {% endfor %} 
    158160            {% for viaf in viaf_urls %} 
    159161            <li><a rel="owl:sameAs" href="{{ viaf }}">Nachweis in VIAF</a> <a href="{{ viaf }}/rdf.xml">(RDF)</a></li> 
  • django/templates/record.html

    r33 r37  
    7272                                            </div> 
    7373                                            <div> 
     74                                                {% if pnd %} 
    7475                                                <h4>über diese Person{{ pnd|pluralize:"en" }}</h4> 
    7576                                                <ul class="rahmen3"> 
     
    7879                                                    {% endfor %} 
    7980                                                </ul> 
     81                                                {% endif %} 
    8082                                                {% if record.subject %} 
    8183                                                <h4>zu diese{{ record.subject|pluralize:"m,n" }} {{ record.subject|pluralize:"Schlagwort,Schlagwörtern" }}</h4> 
     
    98100                                                </ul> 
    99101                                                {% endif %} 
     102                                                {% if bibinfo %} 
     103                                                <h4>über diese Bibliothek{{ bibinfo|pluralize:"en" }}</h4> 
     104                                                <ul> 
     105                                                    {% for bib, isil in bibinfo %} 
     106                                                    <li><a href="http://lobid.org/organisation/{{ isil }}">{{ bib }}</a> <a href="http://lobid.org/organisation/{{ isil }}/about.rdf">(RDF)</a></li> 
     107                                                    {% endfor %} 
     108                                                </ul> 
     109                                                {% endif %} 
     110                                                {% if record.dbpedia_uri %}{#a href="http://dbpedia.org"><img src="{{ MEDIA_URL }}/css/screen/img/icons/dbpedia_logo.png" alt="DBpedia-Logo"/>&nbsp;</a>#} 
     111                                                <h4>aus der <img src="{{ MEDIA_URL }}/css/screen/img/icons/dbpedia_logo.png" alt="DBpedia-Logo"/></h4> 
     112                                                <ul> 
     113                                                    {% for uri, label in dbpedia.items %}<li><a href="{{ uri }}">{{ label }}</a></li>{% endfor %} 
     114                                                </ul> 
     115{% endif %} 
    100116                                            </div> 
    101117                                        </div> 
     
    201217                                                    <div id="tabs"> 
    202218                                                        <ul> 
    203                                                             <li><a href="#tabs-1">Bestand</a></li> 
     219                                                            {% if record.doi or record.url or record.locator or record.isbn or record.issn or record.bibliographicCitation %} 
     220                                                                <li><a href="#tabs-1">Bestand</a></li> 
     221                                                            {% endif %} 
    204222                                                            <li><a href="#tabs-2">Export</a></li> 
    205223                                                            {% if moreLikeThis %} 
    206                                                             <li><a href="#tabs-3"> Ähnliche Titel</a></li> 
     224                                                                <li><a href="#tabs-3"> Ähnliche Titel</a></li> 
    207225                                                            {% endif %} 
    208226                                                        </ul> 
     
    216234                                                                {% endif %} 
    217235                                                                {% if record.url %} 
    218                                                                 <dd><a href="{{ record.url.0 }}">{{ record.url.0 }}</a></dd> 
    219                                                                 {% endif %} 
    220                                                                 {% endif %} 
    221                                                                 {% if record.location %} 
    222                                                                 <dt>Standort</dt> 
    223                                                                 <dd>{{ record.location.0 }} 
    224                                                                 {% endif %} 
    225                                                                 {% if record.locator %} :  
    226                                                                 <a href="http://beta.ub.rub.de/opac/proxy/shelf_locator/{{ record.locator.0 }}">{{ record.locator.0 }}</a></dd> 
     236                                                                <dd>{% for url in record.url %}<a href="{{ url }}">{{ url }}</a><br/>{% endfor %}</dd> 
     237                                                                {% endif %} 
     238                                                                {% endif %} 
     239                                                                {% if record.locator %} 
     240                                                                <dt>Standort{{ record.locator|pluralize:"e" }}</dt> 
     241                                                                <dd>{% for location, locator in standort %} 
     242                                                                <a href="http://beta.ub.rub.de/opac/proxy/shelf_locator/{{ locator }}">{{ location }} : {{ locator }}</a><br/> 
     243                                                                {% endfor %} 
     244                                                                </dd> 
    227245                                                                {% endif %} 
    228246                                                                {% if record.isbn %} 
     
    251269                                                                <dt>Bookmark</dt> 
    252270                                                                <dd><a href="http://www.bibsonomy.org/BibtexHandler?requTask=upload&amp;url=http://134.147.247.36&amp;description={{ record.title|urlencode }}&amp;encoding=UTF-8&amp;selection={{ record.bibtex|urlencode }}">Bibsonomy</a></dd> 
    253                                                                 <dt>RDF</dt> 
    254                                                                 <dd>XML, N3, Turtle, N Triples</dd> 
     271                                                                {#<dt>RDF</dt>#} 
     272                                                                {#<dd>XML, N3, Turtle, N Triples</dd>#} 
    255273                                                            </dl> 
    256274                                                        </div> 
     
    282300                    <!-- IE Column Clearing --> 
    283301                    <div id="ie_clearing"> &#160; </div> 
    284                
    285  
    286                
  • django/templates/resultlist.html

    r29 r37  
    354354                                            <div class="cover"> 
    355355                                                {% if doc.isbn %} 
    356                                                 <img src="{{ doc.isbn.0|amazon_url }}" width="50" alt="Kein Cover!"/> 
     356                                                <img src="{{ doc.isbn.0|amazon_url }}" width="50" alt="Cover"/> 
    357357                                                {% else %} 
    358                                                 <img src="{{ MEDIA_URL }}/covers/{{ doc.issn.0 }}.gif" width="50" alt="Titelcover"/> 
     358                                                <img src="{{ MEDIA_URL }}/covers/{{ doc.issn.0 }}.gif" width="50" alt="Cover"/> 
    359359                                                {% endif %} 
    360360                                            </div> 
  • django/templates/trefferliste/artikel.html

    r26 r37  
    1616{% endfor %} 
    1717{% endif %} 
    18 <a href="/entry/{{ doc.entryID }}/"><strong>{{ doc.title|safe|truncatewords:10 }}</strong></a><br/> 
    19 In: {{ doc.journal_title }}{% if doc.edition %}, {{ doc.edition }}, {% endif %}{% if doc.volume %}. Jg. {{ doc.volume }}{% endif %}{% if doc.date %}. {{ doc.date }}{% endif %}{% if doc.issue %}, Ausg. {{ doc.issue }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %} 
     18<a href="/entry/{{ doc.entryID }}"><strong>{{ doc.title|safe|truncatewords:10 }}</strong></a><br/> 
     19In: {{ doc.journal_title }}{% if doc.edition %}, {{ doc.edition }}, {% endif %}{% if doc.series_volume %}. Jg. {{ doc.series_volume }}{% endif %}{% if doc.date %}. {{ doc.date }}{% endif %}{% if doc.issue %}, Ausg. {{ doc.issue }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %} 
  • django/templates/trefferliste/aufsatz.html

    r32 r37  
    1616    {% endfor %} 
    1717{% endif %} 
    18 <a href="/entry/{{ doc.entryID }}/"><strong>{{ doc.title|safe|truncatewords:10 }}</strong></a><br/> 
    19 In: {{ doc.journal_title }}. {% if doc.edition %} {{ doc.edition }}. {% endif %}{% if doc.volume %}Bd. {{ doc.volume.0 }}.{% endif %}{% if doc.date %}{{ doc.date }}{% endif %}{% if doc.issue %}, H. {{ doc.issue }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %} 
     18<a href="/entry/{{ doc.entryID }}"><strong>{{ doc.title|safe|truncatewords:10 }}</strong></a><br/> 
     19In: {{ doc.journal_title }}. {% if doc.edition %} {{ doc.edition }}. {% endif %}{% if doc.series_volume %}Bd. {{ doc.series_volume.0 }}.{% endif %}{% if doc.date %}{{ doc.date }}{% endif %}{% if doc.issue %}, H. {{ doc.issue }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %} 
  • django/templates/trefferliste/beitrag.html

    r33 r37  
    77{% endfor %} 
    88<a href="/entry/{{ doc.entryID }}/"><strong>{{ doc.title|safe|truncatewords:10 }}</strong></a><br/> 
    9 In: {% for editor in doc.editor %}{% if forloop.last %} <strong>{{ editor }} (Hrsg.)</strong>{% else %}<strong>{{ editor }}</strong>; {% endif %}{% endfor %}: {{ doc.journal_title }}. {% if doc.edition %} {{ doc.edition }} - {% endif %}{% if doc.place %}{{ doc.place.0 }}: {% endif %}{% if doc.publisher.0 %}{{ doc.publisher.0 }}, {% endif %}{% if doc.date %}{{ doc.date }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %}{% if doc.series_title %}. - ({{ doc.series_title.0 }}{% if doc.volume %}, {{ doc.volume.0 }}{% endif %}){% endif %} {% if doc.volume %}. - Bd. {{ doc.volume.0 }}{% endif %} 
     9In: {% if doc.editor %}{% for editor in doc.editor %}{% if forloop.last %} <strong>{{ editor }} (Hrsg.)</strong>{% else %}<strong>{{ editor }}</strong>; {% endif %}{% endfor %}: {% endif %}{{ doc.journal_title }}. {% if doc.edition %} {{ doc.edition }} - {% endif %}{% if doc.place %}{{ doc.place.0 }}: {% endif %}{% if doc.publisher.0 %}{{ doc.publisher.0 }}, {% endif %}{% if doc.date %}{{ doc.date }}{% endif %}{% if doc.pages %}, S. {{ doc.pages.0 }}{% endif %}{% if doc.series_title %}. - ({{ doc.series_title.0 }}{% if doc.volume %}, {{ doc.volume.0 }}{% endif %}){% endif %} {% if doc.volume %}. - Bd. {{ doc.volume.0 }}{% endif %} 
  • feeder.py

    r24 r37  
    1111import logging 
    1212from mods2solr import Collection 
    13 #from solr_util import commit 
     13from solr_util import commit 
    1414from solr_util import optimize 
    1515from solr_util import spellcheck_index 
     
    2828        'institution': 'Fakultaet', 
    2929        'inst_label': 'Biologie und Biotechnologie', 
    30         'disziplin': 'Naturwissenschaft', 
     30        'label': 'Biologie und Biotechnologie', 
     31        'disziplin': 'Naturwissenschaft', 
     32        'fakid': '19', 
    3133    }, 
    3234    'chemie': { 
     
    3638        'label': 'Chemie und Biochemie', 
    3739        'disziplin': 'Naturwissenschaft', 
     40        'fakid': '18', 
    3841    }, 
    3942    'geographie': { 
     
    4346        'label': 'Geographie', 
    4447        'disziplin': 'Naturwissenschaft', 
     48        'fakid': '17', 
     49        'instid': '706', 
    4550    }, 
    4651    'geologie': { 
     
    5055        'label': 'Geologie', 
    5156        'disziplin': 'Naturwissenschaft', 
     57        'fakid': '17', 
     58        'instid': '707', 
    5259    }, 
    5360    'archaeologie': { 
     
    5764        'label': 'Archäologie', 
    5865        'disziplin': 'Geisteswissenschaft', 
     66        'fakid': '4', 
     67        'instid': '516', 
    5968    }, 
    6069    'musik': { 
     
    6473        'label': 'Musikwissenschaft', 
    6574        'disziplin': 'Geisteswissenschaft', 
     75        'fakid': '4', 
     76        'instid': '514', 
    6677    }, 
    6778    'geschichte': { 
     
    7182        'label': 'Geschichte', 
    7283        'disziplin': 'Geisteswissenschaft', 
     84        'fakid': '4', 
     85        'instid': '511', 
    7386    }, 
    7487    'jura': { 
     
    7790        'inst_label': 'Jura', 
    7891        'disziplin': 'Geisteswissenschaft', 
     92        'fakid': '6', 
    7993    }, 
    8094    'maschinenbau': { 
     
    8397        'inst_label': 'Maschinenbau', 
    8498        'disziplin': 'Ingenieurwissenschaft', 
     99        'fakid': '13', 
    85100    }, 
    86101    'medizin': { 
     
    90105        'inst_label': 'Medizin', 
    91106        'disziplin': 'Medizin', 
     107        'fakid': '20', 
    92108    }, 
    93109    'anglistik': { 
     
    97113        'label': 'Anglistik', 
    98114        'disziplin': 'Geisteswissenschaft', 
     115        'fakid': '5', 
     116        'instid': '524', 
    99117    }, 
    100118    'germanistik': { 
     
    104122        'label': 'Germanistik', 
    105123        'disziplin': 'Geisteswissenschaft', 
     124        'fakid': '5', 
     125        'instid': '523', 
    106126    }, 
    107127    'linguistik': { 
     
    111131        'label': 'Linguistik und Computerlinguistik', 
    112132        'disziplin': 'Geisteswissenschaft', 
     133        'fakid': '5', 
     134        'instid': '521', 
    113135    }, 
    114136    'romanistik': { 
     
    118140        'label': 'Romanistik', 
    119141        'disziplin': 'Geisteswissenschaft', 
     142        'fakid': '5', 
     143        'instid': '525', 
    120144    }, 
    121145    'philosophie': { 
     
    125149        'label': 'Philosophie', 
    126150        'disziplin': 'Geisteswissenschaft', 
     151        'fakid': '3', 
     152        'instid': '506' 
    127153    }, 
    128154    'physik': { 
     
    132158        'label': 'Physik und Astronomie', 
    133159        'disziplin': 'Naturwissenschaft', 
     160        'fakid': '16', 
    134161    }, 
    135162    'psychologie': { 
     
    138165        'inst_label': 'Psychologie', 
    139166        'disziplin': 'Geisteswissenschaft', 
     167        'fakid': '11', 
    140168    }, 
    141169    'sozialwissenschaft': { 
     
    144172        'inst_label': 'Sozialwissenschaft', 
    145173        'disziplin': 'Geisteswissenschaft', 
     174        'fakid': '8', 
    146175    }, 
    147176    'wirtschaftswissenschaften': { 
     
    150179        'inst_label': 'Wirtschaftswissenschaften', 
    151180        'disziplin': 'Geisteswissenschaft', 
     181        'fakid': '7', 
    152182    }, 
    153183    'lehrerbildung': { 
     
    156186        'inst_label': 'Lehrerbildung', 
    157187        'disziplin': 'Geisteswissenschaft', 
     188        'fakid': '0', 
     189        'instid': '0012', 
    158190    }, 
    159191    'neuroinformatik': { 
     
    162194        'inst_label': 'Neuroinformatik', 
    163195        'disziplin': 'Naturwissenschaft', 
     196        'fakid': '0', 
     197        'instid': '925', 
    164198    }, 
    165199    'neuroscience': { 
     
    169203        'label': 'Research Department Neuroscience', 
    170204        'disziplin': 'Naturwissenschaft', 
     205        'fakid': '0', 
     206        'instid': '980', 
    171207    }, 
    172208    'etechnik': { 
     
    176212        'label': 'Elektrotechnik und Informationstechnik', 
    177213        'disziplin': 'Ingenieurwissenschaft', 
     214        'fakid': '14', 
    178215    }, 
    179216    'bauwiss': { 
     
    183220        'label': 'Bau- und Umweltingenieurwissenschaften', 
    184221        'disziplin': 'Ingenieurwissenschft', 
     222        'fakid': '12', 
    185223    }, 
    186224    'mathematik': { 
     
    189227        'inst_label': 'Mathematik', 
    190228        'disziplin': 'Naturwissenschaft', 
     229        'fakid': '15', 
    191230    }, 
    192231    'kaththeol': { 
     
    196235        'label': 'Katholische Theologie', 
    197236        'disziplin': 'Geisteswissenschaft', 
     237        'fakid': '2', 
    198238    }, 
    199239    'evtheol': { 
     
    203243        'label': 'Evangelische Theologie', 
    204244        'disziplin': 'Geisteswissenschaft', 
     245        'fakid': '1', 
    205246    }, 
    206247    'slavistik': { 
     
    210251        'label': 'Slavistik', 
    211252        'disziplin': 'Geisteswissenschaft', 
     253        'fakid': '5', 
     254        'instid': '526', 
    212255    }, 
    213256    'erziehungswissenschaft': { 
     
    217260        'label': 'Erziehungswissenschaft', 
    218261        'disziplin': 'Geisteswissenschaft', 
     262        'fakid': '3', 
     263        'instid': '504', 
    219264    }, 
    220265} 
     
    235280    # Alle Kollektionen indexieren 
    236281    start = datetime.datetime.now () 
    237     for fach in COL_INFO: 
    238         logging.info(fach)#.encode('utf8') 
    239 #        if type(COL_INFO[fach]['filename']) is ListType: 
    240 #            for fn in COL_INFO[fach]['filename']: 
    241 # 
    242 #                col = Collection(path + fn, fach.capitalize(), COL_INFO[fach]['disziplin'], institution=COL_INFO[fach]['institution'], inst_label=COL_INFO[fach]['inst_label'], debug=False) 
    243 #                col.feed() 
    244 #        else: 
    245         try: 
    246             col = Collection(path + COL_INFO[fach]['filename'], COL_INFO[fach]['label'], COL_INFO[fach]['disziplin'], institution=COL_INFO[fach]['institution'], inst_label=COL_INFO[fach]['inst_label'], debug=False) 
    247         except KeyError: 
    248             col = Collection(path + COL_INFO[fach]['filename'], fach, COL_INFO[fach]['disziplin'], institution=COL_INFO[fach]['institution'], inst_label=COL_INFO[fach]['inst_label'], debug=False) 
    249  
     282    for subject in COL_INFO: 
     283        logging.info(subject)#.encode('utf8') 
     284        col = Collection(filename=path + COL_INFO.get(subject).get('filename', ''), fach=COL_INFO.get(subject).get('label', subject), disziplin=COL_INFO.get(subject).get('disziplin', ''), institution=COL_INFO.get(subject).get('institution', ''), inst_label=COL_INFO.get(subject).get('inst_label', ''), debug=False, fakid=COL_INFO.get(subject).get('fakid', ''), instid=COL_INFO.get(subject).get('instid', '')) 
    250285        col.feed() 
    251286    optimize() 
    252     time.sleep(30) 
     287    time.sleep(60) 
    253288    spellcheck_index() 
     289    commit() 
    254290    end = datetime.datetime.now () 
    255291    logging.info('KOMPLETT: %s' % (end - start)) 
    256292         
    257293    #Eine Kollektion konvertieren 
    258 #    test = Collection(path + 'wirtschaftswissenschaften.xml', 'Medizin', 'Medizin', institution = 'Fakultaet', inst_label = 'Medizin', debug = True) 
     294#    test = Collection(filename=path + 'medizin_1.xml', fach='Medizin', disziplin='Medizin', institution = 'Fakultaet', inst_label = 'Medizin', debug = True) 
    259295#    test.convert() 
    260296 
    261297# Eine Kollektion indexieren 
    262     # test = Collection('mods-xml/' + 'zentrale-einrichtungen/neuroinformatik.xml', 'Neuroinformatik', institution = 'Zentrale wissenschaftliche Einrichtungen', inst_label = 'Neuroinformatik') 
    263     # test.feed() 
     298    #test = Collection(filename=path + 'jura.xml', fach='Medizin', disziplin='Medizin', institution = 'Fakultaet', inst_label = 'Medizin', debug = True) 
     299    #test.feed() 
     300 
    264301 
    265302 
  • mods2solr.py

    r27 r37  
    77Copyright (c) 2009 University Library Bochum. All rights reserved. 
    88""" 
    9 import urllib 
    10 import logging 
    11  
    12 logging.basicConfig(level=logging.DEBUG) 
    13  
    14 MODS_NAMESPACE = 'http://www.loc.gov/mods/v3' 
    15 DCTERMS_NAMESPACE = 'http://purl.org/dc/terms' 
    16 XLINK_NAMESPACE = 'http://www.w3.org/1999/xlink' 
    17 MODS = '{%s}' % MODS_NAMESPACE 
    18 DCTERMS = '{%s}' % DCTERMS_NAMESPACE 
    19 XLINK = '{%s}' % XLINK_NAMESPACE 
    20  
    21 NSMAP = {None: MODS_NAMESPACE, 
    22     'dcterms': DCTERMS_NAMESPACE, 
    23     'xlink': XLINK_NAMESPACE 
    24 } 
    259 
    2610from MARCCodes import MARCRelators 
     
    4226from tictocs import * 
    4327from xml_util import xml2cdata 
     28from resources import sigelmap 
     29import urllib 
     30import logging 
     31import cPickle as pickle 
     32 
     33logging.basicConfig(level=logging.DEBUG) 
     34 
     35MODS_NAMESPACE = 'http://www.loc.gov/mods/v3' 
     36DCTERMS_NAMESPACE = 'http://purl.org/dc/terms' 
     37XLINK_NAMESPACE = 'http://www.w3.org/1999/xlink' 
     38MODS = '{%s}' % MODS_NAMESPACE 
     39DCTERMS = '{%s}' % DCTERMS_NAMESPACE 
     40XLINK = '{%s}' % XLINK_NAMESPACE 
     41 
     42NSMAP = {None: MODS_NAMESPACE, 
     43    'dcterms': DCTERMS_NAMESPACE, 
     44    'xlink': XLINK_NAMESPACE 
     45} 
    4446 
    4547# from lang_id import * 
     
    5961    'Zeitungsartikel' : 'Aufsatz', 
    6062    'Rezension' : 'Aufsatz', 
    61     'Beitrag in Gesetzeskommentar' : 'Ausatz', 
    62     'Lexikonartikel' : 'Ausatz', 
     63    'Beitrag in Gesetzeskommentar' : 'Aufsatz', 
     64    'Lexikonartikel' : 'Aufsatz', 
    6365    'Vorwort' : 'Aufsatz', 
    6466    'Poster Abstract' : 'Aufsatz', 
     
    206208 
    207209DATE_RANGE_RE = re.compile('(\d{4})-\[?\d{4}\]?') 
     210MESH_MAP = pickle.load(open('mesh_map.pkl', 'rb')) 
     211DBPEDIA_MAP = pickle.load(open('dbpedia_mesh_map2.pkl', 'rb')) 
    208212 
    209213def get_title(twig): 
     
    240244         
    241245    for myid in ids: 
    242         p = c.query(""" 
    243                                         SELECT DISTINCT ?pref 
    244                                         WHERE { 
    245                                                 <http://zbw.eu/stw/descriptor/%s> skos:prefLabel ?pref. 
    246                                         } 
    247                                         """ % myid) 
     246        #logging.debug(myid) 
     247        p = c.query('select distinct ?pref where{<http://zbw.eu/beta/stw/descriptor/%s> skos:prefLabel ?pref}' % myid) 
    248248                                 
    249249        a = c.query(""" 
    250250                                        SELECT DISTINCT ?alt 
    251251                                        WHERE { 
    252                                                 <http://zbw.eu/stw/descriptor/%s> skos:altLabel ?alt. 
     252                                                <http://zbw.eu/beta/stw/descriptor/%s> skos:altLabel ?alt 
    253253                                        } 
    254254                                        """ % myid) 
     
    257257                                        SELECT DISTINCT ?narrower 
    258258                                        WHERE { 
    259                                                 <http://zbw.eu/beta/descriptor/%s> skos:narrower ?nar. ?nar skos:prefLabel ?narrower 
     259                                                <http://zbw.eu/beta/stw/descriptor/%s> skos:narrower ?nar. ?nar skos:prefLabel ?narrower 
    260260                                        } 
    261261                                        """ % myid) 
     
    271271                                        SELECT DISTINCT ?related 
    272272                                        WHERE { 
    273                                                 <http://zbw.eu/stw/descriptor/%s> skos:related ?rel. ?rel skos:prefLabel ?related 
     273                                                <http://zbw.eu/beta/stw/descriptor/%s> skos:related ?rel. ?rel skos:prefLabel ?related 
    274274                                        } 
    275275                                        """ % myid) 
     
    277277        #logging.debug(p) 
    278278 
     279 
    279280        for r in p: 
     281            #logging.error(p) 
    280282            for i in r: 
     283                #logging.debug(i) 
    281284                try: 
    282285                    subjects.add(r[i]['value']) 
     
    284287                        descriptors.setdefault(myid, []).append(r[i]['value']) 
    285288                except TypeError: 
    286                     #logging.debug(i) 
     289                    #logging.debug(r) 
    287290                    raise 
    288291                                                 
     
    328331class Collection(object): 
    329332         
    330     def __init__(self, filename, fach, disziplin, **args): 
    331         self.filename = filename 
     333    def __init__(self, **args): 
     334        self.filename = args.get('filename') 
    332335        #self.fakultaet = fakultaet 
    333         self.fach = fach 
    334         self.disziplin = disziplin 
     336        self.fach = args.get('fach', '') 
     337        self.disziplin = args.get('disziplin', '') 
    335338        self.institution = args.get('institution', '') 
    336339        self.inst_label = args.get('inst_label', '') 
     340        self.fakid = args.get('fakid', '') 
     341        self.instid = args.get('instid', '') 
    337342        self.debug = args.get('debug', '') 
    338  
     343         
    339344    def feed(self): 
    340345        update(Collection.convert(self)) 
     
    379384                    doc.append(solr('zentraleeinheit', self.inst_label)) 
    380385                if self.inst_label.lower() != self.fach.lower(): 
     386                    #logging.error('%s => %s' % self.inst_label.lower(), self.fach.lower()) 
    381387                    doc.append(solr('fach', self.fach)) 
     388                if self.fakid is not None: 
     389                    doc.append(solr('fakid', self.fakid)) 
     390                if self.instid != '': 
     391                    doc.append(solr('instid', self.instid)) 
     392                 
    382393                #doc.append(solr('recordCreationDate', datetime.datetime.now().isoformat()[:-9] + '00Z')) 
    383394                #doc.append(solr('id', 'tag:bibliographie.ub.rub.de,2009:%s:%s' % (self.fach.replace(' ', '_').decode('utf-8'), str(record_counter)))) 
     
    487498                            dcds_tree.append(stmt('contributor', realname)) 
    488499                            dc_list.append(dc('contributor', realname)) 
     500                        if namerole == 'hnr' and nametype == 'personal': 
     501                            doc.append(solr('gefeierter', realname)) 
     502                            dcds_tree.append(stmt('contributor', realname)) 
     503                            dc_list.append(dc('contributor', realname)) 
     504 
    489505                        else: 
    490506                            pass 
     
    517533                            json_dict.setdefault('titleInfo', {}).setdefault('title', get_title(elem)) 
    518534                    if elem.tag == '%ssubject' % MODS: 
    519                         for topic in elem: 
    520                             doc.append(solr('subject', topic.text)) 
    521                             doc.append(solr('fsubject', topic.text)) 
    522                             doc.append(solr('tagcloud', topic.text)) 
    523                             dcds_tree.append(stmt('subject', topic.text)) 
    524                             keywords.append(umlaut(topic.text)) 
    525                             ris_list.append('KW  - %s\n' % topic.text) 
    526                             dc_list.append(dc('subject', topic.text)) 
    527                             json_dict.setdefault('subject', {}).setdefault('topic', []).append(topic.text) 
     535                        if elem.attrib.get('authority', '') == 'stw': 
     536                            if elem.text != '18012-3': # 'Deutschland' blows up the subject list... 
     537                                for topic in elem: 
     538                                    stw_ids.append(topic.text) 
     539                        if elem.attrib.get('authority', '') == 'international patent classification': 
     540                            doc.append(solr('ipc', elem.text)) 
     541                        if elem.attrib.get('authority', '') == 'mesh': 
     542                            for topic in elem: 
     543                                doc.append(solr('mesh_descr', topic.text)) 
     544                                try: 
     545                                    doc.append(solr('mesh_term', MESH_MAP.get(topic.text))) 
     546                                    doc.append(solr('fsubject', MESH_MAP.get(topic.text))) 
     547                                except KeyError: 
     548                                    logging.warn('MESH descriptor %s could not be mapped!' % topic_text) 
     549                                try: 
     550                                    for label in DBPEDIA_MAP.get(topic.text).get('labels').values(): 
     551                                        doc.append(solr('dbpedia_label', label)) 
     552                                    for comment in DBPEDIA_MAP.get(topic.text).get('comments').values(): 
     553                                        doc.append(solr('dbpedia_abstract', comment)) 
     554                                    doc.append(solr('dbpedia_uri', DBPEDIA_MAP.get(topic.text).get('URI'))) 
     555                                    doc.append(solr('dbpedia_uri_label', '%s#%s' % (DBPEDIA_MAP.get(topic.text).get('URI'), DBPEDIA_MAP.get(topic.text).get('labels').get('en')))) 
     556                                except AttributeError: 
     557                                    pass 
     558 
     559                        if elem.attrib.get('authority', 'thesoz'): 
     560                            pass # No mapping yet... 
     561                        if elem.attrib.get('authority', 'lcc'): 
     562                            pass # No mapping yet... 
     563                        else: 
     564                            for topic in elem: 
     565                                doc.append(solr('subject', topic.text)) 
     566                                doc.append(solr('fsubject', topic.text)) 
     567                                doc.append(solr('tagcloud', topic.text)) 
     568                                dcds_tree.append(stmt('subject', topic.text)) 
     569                                keywords.append(umlaut(topic.text)) 
     570                                ris_list.append('KW  - %s\n' % topic.text) 
     571                                dc_list.append(dc('subject', topic.text)) 
     572                                json_dict.setdefault('subject', {}).setdefault('topic', []).append(topic.text) 
    528573                    if elem.tag == '%sidentifier' % MODS: 
    529574                        if elem.attrib.get('type') == 'isbn': 
     
    621666                                        if detail.tag == '%sdate' % MODS: 
    622667                                            #doc.append(solr('date', '%s%s' % (detail.text, '-01-01T00:00:00Z'))) 
    623                                             year = detail.text 
     668                                            year = '' 
     669                                            if debug_genre == 'NewspaperArticle': 
     670                                                mydate = detail.text 
     671                                                dateparts = mydate.split('-') 
     672                                                try: 
     673                                                    year = '%s.%s.%s' % (dateparts[2], dateparts[1], dateparts[0]) 
     674                                                except IndexError: 
     675                                                    year = '??.??.%s' % (dateparts[0]) 
     676                                            else: 
     677                                                year = detail.text 
    624678                                            doc.append(solr('date', year)) 
    625679                                            #print year 
     
    633687                                                doc.append(solr('fdate', date_range.group(1))) 
    634688                                            else: 
    635                                                 doc.append(solr('fdate', year[:4])) 
     689                                                if debug_genre != 'NewspaperArticle': 
     690                                                    doc.append(solr('fdate', year[:4])) 
     691                                                else: 
     692                                                    doc.append(solr('fdate', year[-4:])) 
    636693                                            dcds_tree.append(stmt('issued', detail.text)) 
    637694                                            dc_list.append(dc('date', detail.text)) 
     
    644701                                                ris_list.append('IS  - %s\n' % detail[0].text) 
    645702                                            if detail.attrib['type'] == 'volume': 
    646                                                 doc.append(solr('volume', detail[0].text)) 
     703                                                doc.append(solr('host_volume', detail[0].text)) 
    647704                                                bibtex_list.append('\tvolume = {%s},\n' % detail[0].text) 
    648705                                                ris_list.append('VL  - %s\n' % detail[0].text) 
     706                                            if detail.attrib['type'] == 'delivery complement': 
     707                                                doc.append(solr('complement_number', detail[0].text)) 
    649708                                        if detail.tag == '%sextent' % MODS: 
    650709                                            if detail.attrib['unit'] == 'pages': 
     
    678737                                                        if detail.attrib['type'] == 'issue': 
    679738                                                            doc.append(solr('issue', detail[0].text)) 
    680                                                         #if detail.attrib['type'] == 'volume': 
    681                                                             #doc.append(solr('volume', detail[0].text)) 
     739                                                        if detail.attrib['type'] == 'volume': 
     740                                                            doc.append(solr('series_volume', detail[0].text)) 
    682741                                                    if detail.tag == '%sextent' % MODS: 
    683742                                                        if detail.attrib['unit'] == 'pages': 
     
    690749                                            ris_list.append('PB  - %s\n' % info.text) 
    691750                                            bibtex_list.append('\tpublisher = {%s},\n' % umlaut(info.text)) 
     751                                        if info.tag == '%splace' % MODS: 
     752                                            doc.append(solr('place', info[0].text)) 
     753                                        if info.tag == '%spages' % MODS: 
     754                                            doc.append(solr('pages', info[0].text)) 
    692755                                        if info.tag == '%sdateIssued' % MODS: 
    693756                                            if debug_genre == 'ContributionInLegalCommentary': 
    694                                                 pass 
     757                                                doc.append(solr('complement_date', info.text)) 
    695758                                            else: 
    696759                                                if info.text: 
     
    773836                                            if detail.attrib['type'] == 'issue': 
    774837                                                doc.append(solr('issue', detail[0].text)) 
    775                                             #if detail.attrib['type'] == 'volume': 
    776                                                 #doc.append(solr('volume', detail[0].text)) 
     838                                            if detail.attrib['type'] == 'volume': 
     839                                                doc.append(solr('series_volume', detail[0].text)) 
    777840                                        if detail.tag == '%sextent' % MODS: 
    778841                                            if detail.attrib['unit'] == 'pages': 
    779842                                                doc.append(solr('pages', detail[0].text)) 
     843                                if series.tag == '%soriginInfo' % MODS: 
     844                                    for origin in series: 
     845                                        if origin.tag == '%sedition' % MODS: 
     846                                            doc.append(solr('edition', origin.text)) 
     847                                            bibtex_list.append('\tedition = {%s},\n' % origin.text) 
     848                                        if origin.tag == '%spublisher' % MODS: 
     849                                            doc.append(solr('publisher', origin.text)) 
     850                                            dcds_tree.append(stmt('publisher', origin.text)) 
     851                                            bibtex_list.append('\tpublisher = {%s},\n' % umlaut(origin.text)) 
     852                                        if origin.tag == '%splace' % MODS: 
     853                                            doc.append(solr('place', origin[0].text)) 
     854                                        if info.tag == '%spages' % MODS: 
     855                                            doc.append(solr('pages', info[0].text)) 
     856                                        if origin.tag == '%sdateIssued' % MODS: 
     857                                            doc.append(solr('date', origin.text)) 
     858                                            #logging.debug('%s in %s' % (info.text, debug_id)) 
     859                                            if DATE_RANGE_RE.search(info.text): 
     860                                                date_range = DATE_RANGE_RE.search(info.text) 
     861                                                doc.append(solr('fdate', date_range.group(1))) 
     862                                            else: 
     863                                                doc.append(solr('fdate', origin.text[:4])) 
     864                                                #logging.debug('%s in %s' % (origin.text, debug_id)) 
     865                                            bibtex_list.append('\tyear = {%s},\n' % origin.text) 
     866                                            ris_list.append('Y1  - %s///\n' % origin.text) 
     867                                            dcds_tree.append(stmt('issued', origin.text)) 
     868                                            dc_list.append(dc('date', origin.text)) 
     869                                        if origin.tag == '%sdateOther' % MODS: 
     870                                            doc.append(solr('date_other', origin.text)) 
     871                    if elem.tag == '%slocation' % MODS: 
    780872                        if elem.attrib.get('type') == 'isReferencedBy': 
    781873                                pass 
     
    808900                    if elem.tag == '%slocation' % MODS: 
    809901                        for location in elem: 
     902                            #mylocation = '' 
    810903                            if location.tag == '%sphysicalLocation' % MODS: 
    811                                 doc.append(solr('location', location.text)) 
     904                                doc.append(solr('isil', 'DE-%s' % location.text.replace('/', '-'))) 
     905                                doc.append(solr('location', sigelmap.get(location.text, ''))) 
    812906                            if location.tag == '%sshelfLocator' % MODS: 
    813907                                doc.append(solr('locator', location.text)) 
     
    847941                        data.remove(elem) 
    848942                        #logging.debug(etree.tostring(data)) 
    849                     if elem.tag == '%sclassification' % MODS: 
    850                         if elem.attrib.get('authority', '') == 'stw': 
    851                             if elem.text != '18012-3': # 'Deutschland' blows up the subject list... 
    852                                 stw_ids.append(elem.text) 
    853                             elif elem.attrib.get('authority', '') == 'international patent classification': 
    854                                 doc.append(solr('ipc', elem.text)) 
     943#                    if elem.tag == '%sclassification' % MODS: 
     944#                        if elem.attrib.get('authority', '') == 'stw': 
     945#                            if elem.text != '18012-3': # 'Deutschland' blows up the subject list... 
     946#                                stw_ids.append(elem.text) 
     947#                            elif elem.attrib.get('authority', '') == 'international patent classification': 
     948#                                doc.append(solr('ipc', elem.text)) 
    855949                    if elem.tag == '%sphysicalDescription' % MODS: 
    856950                        for extent in elem: 
     
    868962                                elif extent.attrib.get('displayLabel') == u'Lizenznummer': 
    869963                                    doc.append(solr('licence_no', extent.attrib.get('displayLabel'))) 
     964                                elif extent.attrib.get('displayLabel') == u'Anzahl Bände': 
     965                                    doc.append(solr('host_volume', extent.text)) 
    870966                            if extent.tag == '%sform' % MODS: 
    871967                                if debug_genre == 'Software': 
     
    903999                        elif elem.attrib.get('displayLabel') == u'Prioritätsdaten': 
    9041000                            doc.append(solr('prio', elem.attrib.get('displayLabel'))) 
     1001                        if elem.attrib.get('displayLabel') == u'Titelzusätze': 
     1002                            doc.append(solr('titelzusatz', elem.text.replace('[', '').replace(']', ''))) 
     1003                        try: 
     1004                            elem.attrib['displayLabel'] 
     1005                        except KeyError: 
     1006                            doc.append(solr('note', elem.text)) 
    9051007 
    9061008 
     
    9351037                                 
    9361038                if stw_ids: 
     1039                    #logging.debug(stw_ids) 
    9371040                    (stw_descriptors, stw_subjects) = sparql(stw_ids) 
    9381041                    for stw_desc in stw_descriptors: 
     1042                        #logging.debug(stw_desc) 
    9391043                        doc.append(solr('stwdesc', stw_desc)) 
    9401044                        for term in stw_descriptors[stw_desc]: 
     
    9421046                                                         
    9431047                    for stw_subject in stw_subjects: 
     1048                        #logging.debug(stw_subject) 
    9441049                        doc.append(solr('fsubject', stw_subject)) 
    9451050                                 
  • solr/trunk/example/solr/conf/schema.xml

    r26 r37  
    338338    <fieldtype name="ignored" stored="false" indexed="false" class="solr.StrField" />  
    339339    <fieldtype name="uuid" class="solr.UUIDField" indexed="true"/> 
     340 
     341    <!-- AHA, 07-13-10: N-Gram field for auto-complete --> 
     342    <fieldType name="ngtext" class="solr.TextField" positionIncrementGap="100"> 
     343     <analyzer type="index"> 
     344       <tokenizer class="solr.KeywordTokenizerFactory"/> 
     345       <filter class="solr.LowerCaseFilterFactory"/> 
     346       <filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="25" /> 
     347     </analyzer> 
     348     <analyzer type="query"> 
     349       <tokenizer class="solr.KeywordTokenizerFactory"/> 
     350       <filter class="solr.LowerCaseFilterFactory"/> 
     351     </analyzer> 
     352    </fieldType> 
    340353 </types> 
    341354 
     
    397410        <!-- Entwickler --> 
    398411        <field name="entwickler" type="nostem" indexed="true" stored="true" multiValued="true"/> 
     412        <!-- Gefeierter --> 
     413        <field name="gefeierter" type="nostem" indexed="true" stored="true" multiValued="true"/> 
     414 
    399415        <!-- Navigator fuer Verfasser/Herausgeber/Mitarbeiter --> 
    400416        <field name="fperson" type="string" indexed="true" stored="true" multiValued="true" omitNorms="true"/> 
    401         <!-- Feld für Personen in der erweiterten Suche --> 
     417        <!-- Feld fuer Personen in der erweiterten Suche --> 
    402418        <field name="person" type="nostem" indexed="true" stored="true" multiValued="true"/> 
    403419        <!-- Institution --> 
     
    417433        <!-- IPC --> 
    418434        <field name="ipc" type="string" indexed="false" stored="true" multiValued="true"/> 
    419          
     435        <!-- MESH Deskriptor --> 
     436        <field name="mesh_descr" type="string" indexed="true" stored="true" multiValued="true" omitNorms="true"/> 
     437        <!-- MESH Schlagwort --> 
     438        <field name="mesh_term" type="string" indexed="true" stored="true" multiValued="true"/> 
     439 
     440        <!-- dbpedia Label --> 
     441        <field name="dbpedia_label" type="text" indexed="true" stored="true" multiValued="true"/> 
     442        <!-- dbpedia Abstract --> 
     443        <field name="dbpedia_abstract" type="text" indexed="true" stored="true" multiValued="true"/> 
     444        <!-- dbpedia URI --> 
     445        <field name="dbpedia_uri" type="text" indexed="true" stored="true" multiValued="true"/> 
     446        <!-- dbpedia URI + Label --> 
     447        <field name="dbpedia_uri_label" type="text" indexed="true" stored="true" multiValued="true"/> 
     448 
    420449        <!-- Prioritaetsdaten --> 
    421450        <field name="prio" type="string" indexed="false" stored="true" multiValued="true"/> 
     
    451480        <field name="issue" type="string" stored="true" omitNorms="true"/> 
    452481        <!-- Jahrgang --> 
    453         <field name="volume" type="string" stored="true" omitNorms="true" multiValued="true"/> 
     482        <field name="series_volume" type="string" stored="true" omitNorms="true" multiValued="true"/> 
    454483        <!-- Seitenangaben --> 
    455484        <field name="pages" type="string" stored="true" multiValued="true" omitNorms="true"/> 
     
    457486        <field name="edition" type="string" stored="true" omitNorms="true"/> 
    458487        <!-- Anzahl der Baende --> 
    459         <field name="volumes" type="string" stored="true" omitNorms="true"/> 
    460          
     488        <field name="host_volume" type="string" stored="true" omitNorms="true"/> 
     489        <!-- Nummer der Ergaenzungslieferung --> 
     490        <field name="complement_number" type="string" stored="true" omitNorms="true"/> 
     491 
    461492        <!-- Bibliothek --> 
    462493        <field name="location" type="string" indexed="true" stored="true" multiValued="true"/> 
    463494        <!-- Signatur --> 
    464495        <field name="locator" type="string" stored="true" multiValued="true" omitNorms="true"/> 
    465         <!-- Standort ist die Kombination aus Bibliothek und Signatur --> 
    466         <field name="standort" type="string" stored="true" multiValued="true" omitNorms="true"/> 
     496        <!-- ISIL --> 
     497        <field name="isil" type="string" stored="true" multiValued="true" omitNorms="true"/> 
    467498 
    468499        <!-- Erscheinungsjahr --> 
     
    473504        <!-- Anderes Datum --> 
    474505        <field name="date_other" type="string" indexed="true" stored="true" omitNorms="true"/> 
     506        <!-- Datum der Ergaenzungslieferung --> 
     507        <field name="complement_date" type="string" indexed="true" stored="true" omitNorms="true"/> 
    475508 
    476509        <!-- Exportfelder --> 
     
    501534        <!-- Fach --> 
    502535        <field name="fach" type="string" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/> 
     536        <!-- ID fuer Fakultaet --> 
     537        <field name="fakid" type="string" indexed="true" stored="true" omitNorms="true"/> 
     538        <!-- ID fuer Fach --> 
     539        <field name="instid" type="string" indexed="true" stored="true" omitNorms="true"/> 
     540 
    503541        <!-- Erzeugungsdatum des Datensatzes --> 
    504542        <field name="recordCreationDate" type="date" indexed="true" stored="true" omitNorms="true"/> 
     
    536574        <!-- Feld fuer Spell-Checking --> 
    537575        <field name="spell" type="textSpell" indexed="true" stored="true" multiValued="true"/> 
     576 
     577        <!-- Feld fuer Auto-Complete --> 
     578        <field name="autocomplete" type="ngtext" indexed="true" stored="true" omitNorms="true" omitTermFreqAndPositions="true" multiValued="true"/> 
    538579 
    539580        <!-- ISSN --> 
     
    637678   <copyField source="stwdesc" dest="text"/> 
    638679   <copyField source="stwterm" dest="text"/> 
     680   <copyField source="mesh_descr" dest="text"/> 
     681   <copyField source="mesh_term" dest="text"/> 
     682   <copyField source="dbpedia_label" dest="text"/> 
     683   <copyField source="dbpedia_abstract" dest="text"/> 
     684 
     685   <copyField source="creator" dest="autocomplete"/> 
     686   <copyField source="contributor" dest="autocomplete"/> 
     687   <copyField source="editor" dest="autocomplete"/> 
     688   <copyField source="publisher" dest="autocomplete"/> 
     689   <copyField source="title" dest="autocomplete"/> 
     690   <copyField source="titelzusatz" dest="autocomplete"/> 
     691   <copyField source="parallel_title" dest="autocomplete"/> 
     692   <copyField source="uniform_title" dest="autocomplete"/> 
     693   <copyField source="subject" dest="autocomplete"/> 
     694   <copyField source="journal_title" dest="autocomplete"/> 
     695   <copyField source="series_title" dest="autocomplete"/> 
     696   <copyField source="abstract" dest="autocomplete"/> 
     697   <copyField source="ro_abstract" dest="autocomplete"/> 
     698   <copyField source="stwterm" dest="autocomplete"/> 
     699   <copyField source="mesh_term" dest="autocomplete"/> 
     700   <copyField source="dbpedia_label" dest="autocomplete"/> 
     701   <copyField source="dbpedia_abstract" dest="autocomplete"/> 
     702 
    639703   <copyField source="title" dest="spell"/> 
    640704   <copyField source="parallel_title" dest="spell"/> 
     
    647711   <copyField source="journal_title" dest="spell"/> 
    648712   <copyField source="series_title" dest="spell"/> 
     713   <copyField source="dbpedia_label" dest="spell"/> 
     714   <copyField source="dbpedia_abstract" dest="spell"/> 
     715 
    649716    
    650717 <!-- Similarity is the scoring routine for each document vs. a query. 
Note: See TracChangeset for help on using the changeset viewer.