2017-05-12 2 views
0

옵션 내에서 변환 결과를 수정하는 대신 marklogic 내부에서 기본 스 니펫을 사용할 때 다른 결과가 나타납니다. 문제는 다른 결과를 반환하기 위해 snippeting이 무엇을하고 있는지 이해할 수 없다는 것입니다. 기본 설정을 사용하면 모든 일치 항목을 반환하지 않습니다. 모든 기본 숫자를 늘린 후에 마침내 문서에서 모든 일치하는 노드를 받았습니다. 나는 한 문서에서만이 검색을하고있다. 내 옵션은 다음과 같습니다.기본 스 니펫이 모든 일치 항목을 찾지 못함

<options xmlns="http://marklogic.com/appservices/search"> 
    <additional-query> 
     <cts:document-query depth="infinity" xmlns:cts="http://marklogic.com/cts"> 
     <cts:uri>{$uri}</cts:uri> 
     </cts:document-query> 
    </additional-query> 
    <transform-results apply="snippet"> 
     <max-matches>100</max-matches> 
     <max-snippet-chars>200000000000</max-snippet-chars> 
    </transform-results> 
    <search-option>filtered</search-option> 
    </options> 

max-snippet-chars는 정확히 무엇을합니까? 모든 스 니펫 일치의 합계를 의미하는 최대 숯 금액입니까? 문자 한도에 관계없이 문서의 모든 일치 항목을 표시하려면 어떻게해야합니까?

답변

2

max-snippet-chars 설정은 일치하는 최대 문맥 문자 수입니다.

매치 - 토큰 설정은 매치 당 최대 단어 수와 비 단어 (공백 제외)입니다.

최대 일치 설정은 스 니펫 당 최대 일치 횟수입니다.

대한 자세한 내용은 참조하십시오 : 당신은 항상 당신의 자신의 snippeting 루틴을 작성할 수 있습니다

http://docs.marklogic.com/guide/search-dev/query-options#id_36346

의 CTS를 사용하여 : 하이라이트() 함수는 모든 일치를 강조. 참조하십시오

http://docs.marklogic.com/guide/search-dev/query-options#id_61707

가 도움이 희망,

+0

을 왜이 최대-SNIPPIT - 문자 내 설정은 모든 경기를 얻을 모든 necesary하지만 그 최대-경기 내 결과에 영향을주지 않습니다됩니다 조금도? 텍스트 블록을 검색하는 경우 max-snippet-char가 결과를 제한합니까? 또는 경기에 등장 할 캐릭터의 양을 제한하는 것입니다. – Joshhw

+0

검색 API는 문자, 토큰 또는 일치 여부에 상관없이 도달 한 첫 번째 제한에 따라 일치 항목을 수집하는 것으로 중지합니다. – ehennum