Rania Stathopoulou created DS-1231:
--------------------------------------
Summary: Index (for search) botth display and stored values for
fields using controlled vocabularies
Key: DS-1231
URL: https://jira.duraspace.org/browse/DS-1231
Project: DSpace
Issue Type: Improvement
Components: DSpace API
Affects Versions: 1.8.2
Reporter: Rania Stathopoulou
Attachments: README.txt, search_index_ControlledVocabulary
In submission process, when the "input-type" of an element is set to "dropdown"
(/dspace/config/input-forms.xml),
by default DSpace stores the "stored-value" and shows the "displayed-value" in
submission form.
Nevertheless, in order for a user to find the item he must knows the
"stored-value", since only this value is indexed.
The proposed improvement is applied in order to index both the
"displayed-value" and the "stored-value" of an item.
Specifically, the user can set if he wants also to index the displayed-value in
Fields to Index for Search by setting 'controlledVocabulary'
or 'controlledVocabularyMultilingual' as value for [type] property for a
respective search index.
There are two options:
a) put 'controlledVocabulary' next to the respective search index field in
dspace.cfg, so both the "stored-value(s)" and the respective
"displayed-value(s)" will be indexed
b) put 'controlledVocabularyMultilingual' next to the respective search index
field in dspace.cfg, so both the "stored-value(s)" and the respective localized
"displayed-value(s)" will be indexed for all the repository supported locales.
In this case, the displayed-value(s) are set as message keys and the message
values must be set in message.properties for each language supported by the
repository.
-------------------------------------------------
EXAMPLES
-------------------------------------------------
a) When in input forms we have:
<field>
<dc-schema>dc</dc-schema>
<dc-element>language</dc-element>
<dc-qualifier></dc-qualifier>
<repeatable>true</repeatable>
<label>Type</label>
<input-type value-pairs-name="common_languages">dropdown</input-type>
<hint> Select the language(s) of content of the item. To select more
than one value in the list, you may have to hold down the "CTRL" or "Shift"
key.</hint>
<required></required>
</field>
where:
<value-pairs value-pairs-name="common_languages" dc-term="language_iso">
<pair>
<displayed-value>Greek</displayed-value>
<stored-value>gre</stored-value>
</pair>
<pair>
<displayed-value>English</displayed-value>
<stored-value>eng</stored-value>
</pair>
<pair>
<displayed-value>French</displayed-value>
<stored-value>fre</stored-value>
</pair>
<pair>
<displayed-value>German</displayed-value>
<stored-value>ger</stored-value>
</pair>
<pair>
<displayed-value>Spanish</displayed-value>
<stored-value>spa</stored-value>
</pair>
...
</value-pairs>
Then, if we want to index the languages, we should put search.index.{i} =
language:dc.language:controlledVocabulary in dspace.cfg.
In this case, the same items will be found if someones searches by language for
the word 'Spanish' or the word 'spa'.
a) When in input forms we have:
<field>
<dc-schema>dc</dc-schema>
<dc-element>language</dc-element>
<dc-qualifier></dc-qualifier>
<repeatable>true</repeatable>
<label>Type</label>
<input-type
value-pairs-name="common_languages_Multilingual">dropdown</input-type>
<hint> Select the language(s) of content of the item. To select more
than one value in the list, you may have to hold down the "CTRL" or "Shift"
key.</hint>
<required></required>
</field>
where:
<value-pairs value-pairs-name="common_languages_Multilingual"
dc-term="language_iso">
<pair>
<displayed-value>jsp.self-archive.dc.language.gre</displayed-value>
<stored-value>gre</stored-value>
</pair>
<pair>
<displayed-value>jsp.self-archive.dc.language.eng</displayed-value>
<stored-value>eng</stored-value>
</pair>
<pair>
<displayed-value>jsp.self-archive.dc.language.fre</displayed-value>
<stored-value>fre</stored-value>
</pair>
<pair>
<displayed-value>jsp.self-archive.dc.language.ger</displayed-value>
<stored-value>ger</stored-value>
</pair>
<pair>
<displayed-value>jsp.self-archive.dc.language.spa</displayed-value>
<stored-value>spa</stored-value>
</pair>
...
</value-pairs>
Then, if we want to index the languages, we should put search.index.{i} =
language:dc.language:controlledVocabularyMultilingual in dspace.cfg.
In this case, the same items will be found if someone searches by language for
the word 'Spanish' or the word 'spa' or the word 'Ισπανικά' if the repository
supports the English and Greek locale.
e.g. (search for 'Greek' or 'Ελληνικά' as search type Language)
http://repository.edulll.gr/edulll/advanced-search
Important Note: The support of multilingual displayed values by the submission
form, is an on-going work from National Documention Centre, which will be
included in another patch.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.duraspace.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Dspace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-devel