<div dir="ltr"><div><div><div><div><div><div><div><div>Hi Thorsten,<br><br></div>You could configure a new field in Solr's schema (/WEB-INF/solr/conf/schema.xml) that takes a copy of your title with a type that is appropriate for your sorting requirements.<br>
<br></div>First let's define the new field:<br><br><field name="adjusted_sorttitle_de" type="alphaOnlySort" indexed="true" stored="false" /><br><br></div>"alphaOnlySort" is a predefined type that first transforms the value to lower case and then strips off all non-letters. The result will be a string that consists only of characters between a-z.<br>
</div>Then define a copy directive for this field:<br><br><copyField source="sorttitle_de_s" dest="adjusted_sorttitle_de"/><br><br></div>The source is the name of the field as you specified it in OpenCms. The target is our new field.<br>
<br></div>That's it. Now you should be able to sort your content types by the field "adjusted_sorttitle_de".<br><br></div>Note: if you would like to consider numeric characters also for sorting, you have to declare a new type (copy the alphaOnlySort) and adjust the pattern of the solr.PatternReplaceFilterFactory accordingly.<br>
<br></div><div>HTH,<br></div><div>Stephan<br><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-02-12 10:08 GMT+01:00 Thorsten Duhn <span dir="ltr"><<a href="mailto:duhn@regio-gmbh.de" target="_blank">duhn@regio-gmbh.de</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I'm still in trouble with sorting in Solr. Problem is that I am sorting content types (like list-large and list-small examples in the bootstrap example module) and I want to sort for title of the element. I created a mapping from title in schema, so I can now see "sorttitle_de_s" in Solr index and sort for that. Unfortunally this is still case sensitive (big letters first), but that is the smaller problem. For specific contents I need some possibility to add manual sorting values. So f.i. that one entry is shown first. In other cases special characters like quotation marks should be ignored (without changing Title).<br>

<br>
So it came to my mind that an additional field like "sortname" could be helpful, so in such specific cases a different text is used for sort. But for migration and future editing reasons this should not be required, but optional. Always copying title to sortname by hand for every entry is not useful. So two ideas came to my mind:<br>

<br>
1. Schema could have some default setting so that saving content fills sortname field with title content, if there is no content already.<br>
<br>
2. Solr query could be written in a way, that it uses the sortname field only if it is filled, otherwise it uses the mapped title ("sorttitle_de_s").<br>
<br>
Both ideas did not succeed. I have not seen how to implement such a default mechanism in schema and for Solr I found no solution as well. Comma-separating several fields in query does not work as it assumes empty for "sorttitle" and gives all items with set sorttitle first, and the rest afterwards. Trying FunctionQuery (f.i. "sort=def(sortname_de_s, sorttitle_de_s) asc") throws UnsupportedOperationException.<br>

<br>
Thanks,<br>
Thorsten<br>
<br>
______________________________<u></u>_________________<br>
This mail is sent to you from the opencms-dev mailing list<br>
To change your list options, or to unsubscribe from the list, please visit<br>
<a href="http://lists.opencms.org/cgi-bin/mailman/listinfo/opencms-dev" target="_blank">http://lists.opencms.org/cgi-<u></u>bin/mailman/listinfo/opencms-<u></u>dev</a><br>
<br>
<br>
<br>
</blockquote></div><br></div>