[ https://issues.apache.org/jira/browse/SOLR-380?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12535755 ]
Peter Binkley commented on SOLR-380: ------------------------------------ Thanks for clarifying how the highlighting would let you see the page numbers. On that model, all we would need would be to enhance the highlighting report to make it show the term positions rather than (or as well a) the terms. But I'm not ready to give up on the map idea yet. I hadn't dug far enough into FieldTypes, evidently. Could we maybe index the text in the normal way, with a token filter that ignores the milestones, and then copyfield the text to a FieldType whose only job is to build and store the map? Provided that the two were tokenizing and filtering in the same way, the position counts would remain in sync; the mapping FieldType would just require a final filter that counted the incoming tokens and took note of the milestones, and generated the map as a series of tokens in whatever format we decide to store the map in. (And Tricia, would you mind tinyfying that url, so the page doesn't get stretched?) > There's no way to convert search results into page-level hits of a > "structured document". > ----------------------------------------------------------------------------------------- > > Key: SOLR-380 > URL: https://issues.apache.org/jira/browse/SOLR-380 > Project: Solr > Issue Type: New Feature > Components: search > Reporter: Tricia Williams > Priority: Minor > > "Paged-Text" FieldType for Solr > A chance to dig into the guts of Solr. The problem: If we index a monograph > in Solr, there's no way to convert search results into page-level hits. The > solution: have a "paged-text" fieldtype which keeps track of page divisions > as it indexes, and reports page-level hits in the search results. > The input would contain page milestones: <page id="234"/>. As Solr processed > the tokens (using its standard tokenizers and filters), it would concurrently > build a structural map of the item, indicating which term position marked the > beginning of which page: <page id="234" firstterm="14324"/>. This map would > be stored in an unindexed field in some efficient format. > At search time, Solr would retrieve term positions for all hits that are > returned in the current request, and use the stored map to determine page ids > for each term position. The results would imitate the results for > highlighting, something like: > <lst name="pages"> > <lst name="doc1"> > <int name="pageid">234</int> > <int name="pageid">236</int> > </lst> > <lst name="doc2"> > <int name="pageid">19</int> > </lst> > </lst> > <lst name="hitpos"> > <lst name="doc1"> > <lst name="234"> > <int > name="pos">14325</int> > </lst> > </lst> > ... > </lst> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.