Dspace Arama filtreleri ve kenar çubuğu özelleştirmesi

Açık Erişim Filtre Özelleştirme

Arama filtreleri ve kenar çubuğu yönleri Özelleştirme

Bu bölümde arama filtreleri ve kenar çubuğu fasetlerinin özellikleri açıklanmaktadır. Her kenar çubuğu faseti, arama filtrelerinin referans listesinde bulunmalıdır. Aşağıda, kenar çubuğu yönü olarak kullanılmayan bir arama filtresinin bir örnek yapılandırması verilmiştir.

<bean id="searchFilterTitle" class="org.dspace.discovery.configuration.DiscoverySearchFilter"><font></font>
    <property name="indexFieldName" value="title"/><font></font>
    <property name="metadataFields"><font></font>
        <list><font></font>
            <value>dc.title</value><font></font>
        </list><font></font>
    </property><font></font>
</bean><font></font>

Bu tür fasulye için id ve sınıf özellikleri zorunludur. İçerdiği özellikler aşağıda tartışılmıştır.

  • indexFieldName (Zorunlu) : Benzersiz bir arama filtresi adı, meta veriler bu alan adı altında Solr'da dizine eklenecek.
  • metadataFields (Zorunlu): Fasete dahil edilmesi gereken meta veri alanlarının listesi.

Kenar çubuğu fasetleri arama filtresini genişletir ve buna bazı ekstra özellikler ekler, aşağıda ayrıca kenar çubuğu faset olarak da kullanılan bir arama filtresi örneği verilmiştir.

<bean id="searchFilterAuthor" class="org.dspace.discovery.configuration.SidebarFacetConfiguration"><font></font>
        <property name="indexFieldName" value="author"/><font></font>
        <property name="metadataFields"><font></font>
            <list><font></font>
                <value>dc.contributor.author</value><font></font>
                <value>dc.creator</value><font></font>
            </list><font></font>
        </property><font></font>
        <property name="facetLimit" value="10"/><font></font>
        <property name="sortOrder" value="COUNT"/><font></font>
        <property name="type" value="text"/><font></font>
    </bean>

Sınıf olarak değiştirildiğini Not DiscoverySearchFilter için SidebarFacetConfiguration bu ekstra özelliklere desteklemek için gereklidir.

  • facetLimit (isteğe bağlı) : Gösterilecek maksimum değer sayısı. Bu özellik isteğe bağlıdır, hiçbiri belirtilmezse, "10" varsayılan değeri kullanılır. Filtrenin  tarih tarihi varsa , tarihler otomatik olarak gruplandırıldığından bu özellik kullanılmayacaktır.
  • sortOrder (isteğe bağlı) : Kenar çubuğu fasetlerinin sıralama düzeni, COUNT veya VALUE olabilir. Varsayılan değer COUNT.
    • COUNT Yön, depoda görünme sayısına göre sıralanır
    • DEĞER Faktörler alfabetik olarak sıralanacaktır
  • type (isteğe bağlı): kenar çubuğu yönünün türü "tarih" veya "metin" olabilir, "metin" varsayılan değerdir.
    • metin: Fasetlere olduğu gibi muamele edilecektir
    • tarih : Sadece yıl Solr indeksinde kaydedilecektir. Bu yıllar, birini seçtiğinizde küçülecek aralıklarda otomatik olarak görüntülenir.

Hiyerarşik (taksonomi temelli) kenar çubuğu fasetleri

Keşif, hiyerarşik olarak yapılandırılmış meta veri alanlarında özel detaylandırma işlemlerini destekliyor. Bu detaylandırmanın işe yaraması için, bunu etkinleştirdiğiniz alandaki meta veriler bir ayırıcıya bölünerek terimlerden oluşmalıdır. Örneğin, Kartografya ve Fotogrametri'nin her iki terimde ayırıcı "::" olarak bölündüğü "CARTOGRAPHY :: PHOTOGRAMMETRY" gibi meta verileri tuttuğunuz bir dc.subject.taxonomy alana sahip olabilirsiniz. Kenar çubuğu yalnızca üst düzey yüzeyleri gösterecektir, görünümün üzerine tıklandığında tüm yüzey seçenekleri görüntülenecektir.

<bean id="searchFilterSubject" class="org.dspace.discovery.configuration.HierarchicalSidebarFacetConfiguration"><font></font>
    <property name="indexFieldName" value="subject"/><font></font>
    <property name="metadataFields"><font></font>
        <list><font></font>
            <value>dc.subject</value><font></font>
        </list><font></font>
    </property><font></font>
    <property name="sortOrder" value="COUNT"/><font></font>
    <property name="splitter" value="::"/><font></font>
    <property name="skipFirstNodeLevel" value="false"/><font></font>
</bean><font></font>

Sınıf olarak değiştirildiğini Not SidebarFacetConfiguration için HierarchicalSidebarFacetConfiguration bu ekstra özelliklere desteklemek için gereklidir.

  • ayırıcı (gerekli) : Ayrı düğümleri ayırmak için kullanılan ayırıcı
  • skipFirstNodeLevel (isteğe bağlı) : Kök düğüm seviyesinin gösterilip gösterilmeyeceği. Bazı hiyerarşik veriler için tek bir kök düğümü vardır. Çoğu durumda, alakalı olmadığından gösterilmesi gerekmez. Bu özellik varsayılan olarak geçerlidir.

Arama sonuçları için seçenek özelleştirmeyi sıralama

Bu bölüm, varsayılan yapılandırmadan sortTitle ve sortDateIssued gibi ayrı bir SortConfiguration özelliklerini açıklar. Özel sıralama seçenekleri oluşturmak için, önceden var olanların özelliklerini değiştirebilir veya sıfırdan tamamen yeni bir tane oluşturabilirsiniz.

SortTitle SortConfiguration'ın neye benzediği şöyle:

<bean id="sortTitle" class="org.dspace.discovery.configuration.DiscoverySortFieldConfiguration"><font></font>
        <property name="metadataField" value="dc.title"/><font></font>
        <property name="type" value="text"/><font></font>
 </bean>

Bu tür fasulye için id ve sınıf özellikleri zorunludur. İçerdiği özellikler aşağıda tartışılmıştır.

  • metadataField (Zorunlu): Sıralama değerlerini gösteren meta veri alanı
  • type (isteğe bağlı): herhangi bir tanımlanmış metin kullanılmazsa, sıralama seçeneğinin türü tarih veya metin olabilir.

DiscoveryConfiguration

DiscoveryConfiguration Grupları kenar çubuğu fasetleri, arama filtreleri, arama sıralama seçenekleri ve son gönderimler için yapılandırmaları. Aynı kenar çubuğu yüzeylerini göstermek istiyorsanız, deponuzun her yerinde aynı arama filtrelerini, arama seçeneklerini ve son gönderileri kullanın, yalnızca bir DiscoveryConfiguration'a ihtiyacınız olacak ve sadece defaultConfiguration'ı da düzenleyebilirsiniz.

DiscoveryConfiguration, özel kenar çubuğu fasetlerini, arama filtrelerini, ... belirli topluluklarda veya koleksiyon ana sayfasında kullanmayı çok kolaylaştırır. Koleksiyonlarınız heterojen ise bu özellikle yararlıdır. Örneğin, konferans bildirileri içeren bir koleksiyonda, konferans tarihi için, işlemlerin asıl yayınlanma tarihinden daha ilgili olabilecek bir kenar çubuğu yönü önermek isteyebilirsiniz. Bildiriler içeren bir koleksiyonda, fon veren kuruluşlara veya yayıncılara faset sunmak isteyebilirsiniz, bu alanlar öğrenme objeleri gibi öğeler için önemli değildir.

DiscoveryConfiguration beş bölümden oluşur

  • Uygulanabilir sidebarFacets listesi
  • Uygulanabilir searchFilters listesi
  • Uygulanabilir searchSortFields listesi
  • Varsayılan filtre sorguları (isteğe bağlı)
  • Son gönderilenler ekranının yapılandırması
  • Etiket bulutu modelinin yapılandırması

SidebarFacets ve searchFilters listelerini yapılandırma

SidebarFacets ve searchFilters öğelerini değiştirdikten sonra, mevcut öğeleri yeniden çalıştırarak yeniden boyutlandırmayı unutmayın , aksi takdirde değişiklikler görünmez.[dspace]/bin/dspace index-discovery -b

Aşağıda, bu listelerden birinin nasıl yapılandırılabileceğine bir örnek verilmiştir. Fasulye referanslarının her birinin önceden tanımlanmış fasetlerin, filtrelerin veya sıralama seçeneklerinin tam adına karşılık gelmesi önemlidir.

Her kenar çubuğu faseti, arama filtreleri listesinde de bulunmalıdır.

<property name="sidebarFacets"><font></font>
    <list><font></font>
        <ref bean="sidebarFacetAuthor" /><font></font>
        <ref bean="sidebarFacetSubject" /><font></font>
        <ref bean="sidebarFacetDateIssued" /><font></font>
    </list><font></font>
</property>

Arama sıralama alanlarını yapılandırma ve özelleştirme

Arama sıralama alanı yapılandırma bloğu kullanılabilir sıralama alanlarını ve varsayılan bir sıralama alanı ve sıralama düzenini yapılandırma olasılığını içerir.
Aşağıda sıralama yapılandırması örneği verilmiştir.

<property name="searchSortConfiguration"><font></font>
    <bean class="org.dspace.discovery.configuration.DiscoverySortConfiguration"><font></font>
        <!--<property name="defaultSort" ref="sortDateIssued"/>--><font></font>
        <!--DefaultSortOrder can either be desc or asc (desc is default)--><font></font>
        <property name="defaultSortOrder" value="desc"/><font></font>
        <property name="sortFields"><font></font>
            <list><font></font>
                <ref bean="sortTitle" /><font></font>
                <ref bean="sortDateIssued" /><font></font>
            </list><font></font>
        </property><font></font>
    </bean><font></font>
</property>

Mülkiyet adı ve fasulye sınıfı zorunludur. Mülk alanı adları aşağıda tartışılmaktadır.

  • defaultSort (isteğe bağlı): Arama sonuçlarının sıralanacağı varsayılan alan, bu, mevcut bir arama sıralama alanı çekirdeğine bir referans olmalıdır. Hiçbiri verilmezse alaka düzeyi varsayılan olur. SortFields bölümünde açıkça belirtilmemiş olsa bile, iç alaka algoritmasına göre sıralama her zaman kullanılabilir.
  • defaultSortOrder (isteğe bağlı): Varsayılan sıralama düzeni, artan veya azalan olabilir.
  • sortFields (zorunlu): Mevcut sıralama seçeneklerinin listesi, bu listedeki her öğenin mevcut bir sıralama alanı yapılandırma çubuğuna bağlanması gerekir.

Varsayılan filtre sorguları ekleme (İSTEĞE BAĞLI)

Varsayılan filtre sorguları, tüm arama işlemlerinde ve kenar çubuğu tıklatmalarında uygulanır. Varsayılan filtre sorgularının kullanışlı bir uygulaması, tüm döndürülen sonuçların öğe olmasını sağlamaktır. Sonuç olarak, arama işleminin sonucu olarak döndürülen alt topluluklar ve koleksiyonlar filtrelenir.
Yukarıdaki listelerde olduğu gibi, varsayılan filtre sorguları bir liste olarak tanımlanır. İsteğe bağlılar.

<property name="defaultFilterQueries"><font></font>
    <list><font></font>
        <value>query1</value><font></font>
        <value>query2</value><font></font>
    </list><font></font>
</property>

Bu özellik, sırayla sorguları içeren basit bir liste içerir. Bazı olası sorgu örnekleri:

  • search.resourcetype: 2
  • dc.subject: Test
  • dc.contributor.author: "Van de Velde, Kevin"