[ https://issues.apache.org/jira/browse/SOLR-2202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12925501#action_12925501 ]
Greg Fodor commented on SOLR-2202: ---------------------------------- I think the fact that we *do* have a locale-independent way to specify currency, the ISO code, is the lever we need. You'll notice that the MoneyType is a polyfield of string and double. It could be that we might want to introduce a standard syntax for specifying polyfield values, which could be leveraged here. For PointType it's merely comma delimited. So, we could use the raw long and the ISO code, separated by a comma. price: 12345,USD It's not pretty to look at, but it at least would be a "correct" solution by removing the dependency upon locale altogether. > Money FieldType > --------------- > > Key: SOLR-2202 > URL: https://issues.apache.org/jira/browse/SOLR-2202 > Project: Solr > Issue Type: New Feature > Components: Schema and Analysis > Affects Versions: 1.5 > Reporter: Greg Fodor > Attachments: SOLR-2202-lucene-1.patch, SOLR-2202-solr-1.patch, > SOLR-2202-solr-2.patch > > > Attached please find patches to add support for monetary values to > Solr/Lucene with query-time currency conversion. The following features are > supported: > - Point queries (ex: "price:4.00USD") > - Range quries (ex: "price:[$5.00 TO $10.00]") > - Sorting. > - Currency parsing by either currency code or symbol. > - Symmetric & Asymmetric exchange rates. (Asymmetric exchange rates are > useful if there are fees associated with exchanging the currency.) > At indexing time, money fields can be indexed in a native currency. For > example, if a product on an e-commerce site is listed in Euros, indexing the > price field as "10.00EUR" will index it appropriately. By altering the > currency.xml file, the sorting and querying against Solr can take into > account fluctuations in currency exchange rates without having to re-index > the documents. > The new "money" field type is a polyfield which indexes two fields, one which > contains the amount of the value and another which contains the currency code > or symbol. The currency metadata (names, symbols, codes, and exchange rates) > are expected to be in an xml file which is pointed to by the field type > declaration in the schema.xml. > The current patch is factored such that Money utility functions and > configuration metadata lie in Lucene (see MoneyUtil and CurrencyConfig), > while the MoneyType and MoneyValueSource lie in Solr. This was meant to > mirror the work being done on the spacial field types. > This patch has not yet been deployed to production but will be getting used > to power the international search capabilities of the search engine at Etsy. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org