fabiobatalha / crossrefapi

A python library that implements the Crossref API.
BSD 2-Clause "Simplified" License
265 stars 44 forks source link

typo in filter? #52

Closed air-kyi closed 1 year ago

air-kyi commented 1 year ago

I am currently unable to use FILTER_VALIDATOR filters that have a '.' in the name, for example, license.url. Is it because of a typo in the function definition?

air-kyi commented 1 year ago

Actually, I think I understand now - that __ is supposed to stand in for . when you make a function call, and it is differentiated from a single underscore _ that is replaced with the hyphen -.

Could we do one of the following?

fabiobatalha commented 1 year ago

Hello @air-kyi

Yes, that is it. Once we receive the filters as open attributes in a python method, it is not possible to use attributes with hyphens (-) or dot (.) in the attributes names.

So we expect to receive _ in place of . and in place of -.

Concerning to you recommendations, it is not possible to replace the names of the filters, we are using the names provided by the Crossref API. It means a major change in all Crossref API that will break the compatibility with all clients using it.

So, include an example in the README.rst file is the right answer for this moment.

It will be nice If you can provide a section in the README.rst for the filter method.