Skip to content

Conversation

@homebeaver
Copy link
Contributor

Hi @garydgregory ,

here is EUgen from Europe.
With this PR I provide validation and check digit calculation for VAT Id Numbers VATIN for all countries in the EU. This number is neccessary in the intra comunity trades to apply a zero VAT rate.
You can find a documentation of the different VATINs structures in my VATIN wiki (de)

The validator for all is VATINValidator - it implements the jira issue 494

Pls review and merge.
Regards EUGen

Error:  Failed to execute goal org.apache.maven.plugins:maven-pmd-plugin:3.24.0:check (default-cli) on project commons-validator: PMD 7.4.0 has found 1 violation. For more details see: /home/runner/work/commons-validator/commons-validator/target/pmd.xml -> [Help 1]
minor changes in VATidATCheckDigit
Check Digit calculation/validation
It is a subclass from Modulus97CheckDigit, which is also used to
validate the LEI and German Leitweg, see
apache#61

This implemets parts of
https://issues.apache.org/jira/projects/VALIDATOR/issues/VALIDATOR-494
which does not provide a comment (implicit constructor)
@sebbASF
Copy link
Contributor

sebbASF commented Feb 1, 2025

There are some classes with logging, but not all. What determines whether logging is used?
Is it really needed?

@garydgregory
Copy link
Member

I wouldn't except any logging from this component.

apache#271 (comment)

There are some classes with logging, but not all. ...
Is it really needed?

VATidCZCheckDigit : LOG was used only when DebugEnabled
VATidBGCheckDigit : dto
VATidESCheckDigit : dto
VATidFRCheckDigit : dto
VATidGBCheckDigit : dto
VATidLVCheckDigit : dto + to explain why calculation fails
@homebeaver
Copy link
Contributor Author

I've removed logging.

There is one class with logging left : TidDECheckDigit. The reason is the specification - the link to it is in the class header. The spec is in german. In some cases valid tids should not be used - and I warn with the message recomended in the spec. See page 6+7 of the spec or screenshot:
grafik

I wouldn't except any logging from this component.

@garydgregory
To satisfy you I can remove the class from this PR

@sebbASF
Copy link
Contributor

sebbASF commented Feb 2, 2025

Logging can be completely disabled, so should not be essential to the functioning of a class.

In this case, the log messages are directly associated with an exception (apart from an unnecessary debug log), so I don't see the point of them; they don't provide any extra information.

I think they should be removed as well please.

Copy link
Contributor

@sebbASF sebbASF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As per comments

@homebeaver homebeaver requested a review from sebbASF February 26, 2025 23:46
@homebeaver
Copy link
Contributor Author

Hi @sebbASF , @sebbASF

when merging apache/master to my repo branch I got an error in pom.xml

- cvc-elt.1.a: Cannot find the declaration of element 'project'.
- Downloading external resources is disabled.

The solution is https instead http in pom element 'project'

I resolve this in my pull request and hope you accept this pull. It is waiting to be accepted for more then one year!

regards EUGen

pom.xml Outdated
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">
<project xmlns="https://maven.apache.org/POM/4.0.0"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please revert these changes. They are not valid.

Although the values look like URLs, they are not; they are unique identifiers so must be left as is

@raboof
Copy link
Member

raboof commented Oct 27, 2025

I resolve this in my pull request and hope you accept this pull. It is waiting to be accepted for more then one year!

As mentioned earlier in #271 (comment): keeping this up-to-date looks like quite a maintenance burden. This means the work is valuable to share - but only if we're confident that there will be someone looking after this code after it's merged. I assume you're using this and would be ready to take some of that maintainership on yourself, but it'd be good to have one or two other people showing up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants