CoffeePotAn Invisible XML processorNorm Tovey WalshCopyright © 2022 Norm Tovey-WalshCoffeePot version 1.1.0(Based on CoffeeGrinder 1.1.0 and CoffeeFilter 1.1.0.)Table of ContentsIntroduction1. Installing CoffeePot2. Running CoffeePot2.1 The command line2.2 In build tools3. How it works3.1 Mapping a simple rule3.2 Mapping alternatives3.3 Mapping “x?”3.4 Mapping “(x1, x2)?”3.5 Mapping “x*”3.6 Mapping “x+”3.7 Mapping “x1**x2”3.8 Mapping “x1++x2”3.9 Mapping ¯\_(ツ)_/¯3.10 A word about “-”, “@”, and “^”3.11 Insertions4. Finding errors5. Ambiguity6. Configuration7. Output formats7.1 XML7.2 JSON7.3 CSV8. Pragmas8.1 Grammar pragmas8.1.1 csv-columns8.1.2 import8.1.3 xmlns8.2 Rule pragmas8.2.1 csv-heading8.2.2 discard-empty8.2.3 combine8.2.4 regex8.3 Symbol pragmas8.3.1 rename8.3.2 rewriteAppendix A. Property filesA.1 A first attemptA.2 Refining name-valueA.3 More line optionsA.4 Character escapesA.5 Challenges for the readerAppendix B. CachingAppendix C. Change log