Refactored comparison operator for ChargeIndicator #153
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prerequisite
Problem
When trying to create a HTML output for the electronic invoice mentioned above using the following batch file
java -jar saxon9he.jar ZUGFeRD-invoice.xml ZUGFeRD_1p0_c1p0_s1p0.xslt > output.html PAUSE
the following error will be shown in the console
Cause
Line 1010 in the stylesheet:
The value of udt:Indicator (in this case false) has no type (xs:untypedAtomic).
The value of fn:true() is considered as xs:boolean.
The comparison with the operator "eg" fails, because the types of the two values are different and with the operator "eg" only values of the same type may be compared.
Solution
Replacing the operator "eg" with the operator "=" ensures that the type is automatically determined for comparison (in this case the type of fn:true() which is boolean).
With my changes the HTML file can be created successfully.