Я создал фасет, используя параметры запроса, как показано ниже.
"constraint": [
{
"name": "Full Name",
"range":
{
"type": "xs:string",
"element": {"name": "Full Name" }
}
}
]
Я вижу, что свойства "Полное имя" возвращаются в отсортированном порядке по свойству "фасет", а также мы можем контролировать порядок сортировки (по возрастанию или по убыванию).
"facets": {
"Full Name": {
"type": "xs:string",
"facetValues": [
{
"name": "John H",
"count": 1,
"value": "John H"
},
{
"name": "Mary",
"count": 1,
"value": "Mary"
}
]
}
}
Но мое требование - сортировать имена сначала по ролям, а затем по именам. Например, Джон - это HR, а Мэри - бухгалтер, поэтому Мэри должна предстать перед Джоном, поскольку ее роль (бухгалтер) предшествует роли Джона (HR) в порядке сортировки. Есть ли способ сортировки индексированных ограничений по дополнительным свойствам?
Один из способов, который я слышал, - создать составное свойство (роль + имя) и создать индекс диапазона для составного свойства. Это предложенный подход?