MarkLogic - возвращает свойства в фасетах

Я использую параметры запроса для возврата фасетов полного имени. Ниже приведен фрагмент.

"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": "Jim White",
           "count": 1,
           "value": "Jim White"
        }
     ]
   }
} 

Однако у меня есть дополнительные свойства, такие как адрес электронной почты, номер телефона и т. Д., Которые также нужно вернуть. Могу ли я вернуть дополнительные свойства также в свойстве «facets», не создавая индексы диапазона? Я вижу, что все свойства возвращаются в свойстве results.extracted.content, но я пытаюсь вернуть все необходимые свойства вместе, как показано ниже.

"facets":    {
   "Full Name":       {
      "type": "xs:string",
      "facetValues":          [
                     {
            "name": "John H",
            "count": 1,
            "value": "John H"
            "email": "[email protected]",
            "phone": "123456789"
         },
                    {
            "name": "Jim White",
           "count": 1,
           "value": "Jim White"
            "email": "[email protected]",
            "phone": "123456789"
        }
     ]
   }
} 

person Bhanu    schedule 04.09.2018    source источник


Ответы (1)


Фасеты так не работают. Фасеты предназначены для возврата уникальных значений с частотой. Из-за этого они не связаны с такими фактическими документами. Если вы хотите вернуть комбинации свойств, я вижу еще два очевидных варианта:

  • преобразовать результат поиска, чтобы не просто извлекать другие значения, но извлекать комбинации значений вместе, например, используя REST преобразовывает
  • используйте определение tuples для получения комбинаций из нескольких индексов диапазона в в то же время. Работает с конечными точками /v1/values

HTH!

person grtjn    schedule 04.09.2018
comment
{аспекты: {свойство для каждого аспекта}, документы: [результаты поиска]} Я пытался понять, возможно ли что-то подобное вышеупомянутому. Спасибо! - person Bhanu; 04.09.2018