You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Munendra S N (Jira)" <ji...@apache.org> on 2019/09/16 04:43:00 UTC
[jira] [Commented] (SOLR-13272) Interval facet support for JSON
faceting
[ https://issues.apache.org/jira/browse/SOLR-13272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16930231#comment-16930231 ]
Munendra S N commented on SOLR-13272:
-------------------------------------
I have made few changes based on the offline discussion with [~apoorvprecisely].
[^SOLR-13272.patch]
h4. Request
{code:json}
{
"pubyear": {
"type": "range",
"field": "pubyear_i",
"intervals": [
{
"from": 1990,
"to": 1999,
"inclusive_to": false,
"inclusive_from": true
},
{
"range": "[2000,2200]"
}
]
}
}
{code}
* {{from}} and {{to}} are optional when not specified defaults to {{\*}}. So, the user can pass {{\*}} as value for from or to
* {{range}} format is similar to {{IntervalFacets}} syntax in Classical Faceting
* Reason for supporting two formats
** {{from}} and {{to}} is more flexible and more JSONic
** other {{range}} is similar to classical faceting. So, familiarity to the users
h4. Response
{code:java}
{
"buckets": [
{
"val": "[2,3]",
"count": 200
},
{
"val": "[*,6)",
"count": 300
}
]
}
{code}
* The default {{key}} is formed based on {{from}}, {{to}}, {{inclusive_to}} and {{inclusive_from}}
h3. Changes from Last Patch
* Making from and to optional to support {{before}} and {{after}} cases
* More test cases (mostly, adopted from range faceting existing tests)
* Minor bug fixes
* More request validation
In the latest patch, I have removed support custom {{key}}. This is because, when {{refineFacets}} is called only {{bucketVal}} is available. In case of custom key, I couldn't find easier way to get {{low}} and {{high}}.
h3. Pending changes
* Direct {{other}} and {{include}} support, if needed. There are already ways to achieve this like using {{\*}}
* Supporting custom {{key}}
Both of the above tasks can be picked up separately.
[~mkhludnev] [~ichattopadhyaya] [~yseeley@gmail.com] [~janhoy] [~hossman] Please review. Let me know if Github's PR is needed for review
Also, As {{intervals}} is part of range facets, should we just rename it to {{ranges}}?
> Interval facet support for JSON faceting
> ----------------------------------------
>
> Key: SOLR-13272
> URL: https://issues.apache.org/jira/browse/SOLR-13272
> Project: Solr
> Issue Type: New Feature
> Components: Facet Module
> Reporter: Apoorv Bhawsar
> Assignee: Ishan Chattopadhyaya
> Priority: Major
> Attachments: SOLR-13272.patch
>
> Time Spent: 3h 10m
> Remaining Estimate: 0h
>
> Interval facet is supported in classical facet component but has no support in json facet requests.
> In cases of block join and aggregations, this would be helpful
> Assuming request format -
> {code:java}
> json.facet={pubyear:{type : interval,field : pubyear_i,intervals:[{key:"2000-2200",value:"[2000,2200]"}]}}
> {code}
>
> PR https://github.com/apache/lucene-solr/pull/597
--
This message was sent by Atlassian Jira
(v8.3.2#803003)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org