Holiday-request.bpmn20.xml - org.flowable.bpmn.exceptions.XMLException: Error reading XML

Error reading XML after pressing ‘y’ on holiday request approval, the XML is copied right from the Flowable documentation and cleaned by error validation features using Notepad++ XML Plugin. please tell me what is wrong with the XML?

<?xml version="1.0" encoding="UTF-8"?>

log4j:WARN No appenders could be found for logger (org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
ProcessEngine [default] Version: [6.3.1.0]
Found process definition [Holiday Request] with id [holidayRequest:29:87503]
Who are you?
How many holidays do you want to request?
Why do you need them?
Process instances running = 27
87504
null
null
null
0
You have 27 tasks:

  1. Approve or reject request
  2. Approve or reject request
  3. Approve or reject request
  4. Approve or reject request
  5. Approve or reject request
  6. Approve or reject request
  7. Approve or reject request
  8. Approve or reject request
  9. Approve or reject request
  10. Approve or reject request
  11. Approve or reject request
  12. Approve or reject request
  13. Approve or reject request
  14. Approve or reject request
  15. Approve or reject request
  16. Approve or reject request
  17. Approve or reject request
  18. Approve or reject request
  19. Approve or reject request
  20. Approve or reject request
  21. Approve or reject request
  22. Approve or reject request
  23. Approve or reject request
  24. Approve or reject request
  25. Approve or reject request
  26. Approve or reject request
  27. Approve or reject request
    Which task would you like to complete?
    1
    Abe Jun wants 5 of holidays. Do you approve this?
    y
    Exception in thread “main” org.flowable.bpmn.exceptions.XMLException: Error reading XML
    at org.flowable.bpmn.converter.BpmnXMLConverter.convertToBpmnModel(BpmnXMLConverter.java:301)
    at org.flowable.bpmn.converter.BpmnXMLConverter.convertToBpmnModel(BpmnXMLConverter.java:279)
    at org.flowable.engine.impl.bpmn.parser.BpmnParse.execute(BpmnParse.java:148)
    at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.createBpmnParseFromResource(ParsedDeploymentBuilder.java:97)
    at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.build(ParsedDeploymentBuilder.java:55)
    at org.flowable.engine.impl.bpmn.deployer.BpmnDeployer.deploy(BpmnDeployer.java:76)
    at org.flowable.engine.impl.persistence.deploy.DeploymentManager.deploy(DeploymentManager.java:62)
    at org.flowable.engine.impl.persistence.deploy.DeploymentManager.resolveProcessDefinition(DeploymentManager.java:130)
    at org.flowable.engine.impl.persistence.deploy.DeploymentManager.findDeployedProcessDefinitionById(DeploymentManager.java:80)
    at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:50)
    at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:36)
    at org.flowable.engine.impl.util.Flowable5Util.isFlowable5ProcessDefinitionId(Flowable5Util.java:63)
    at org.flowable.engine.impl.cmd.CompleteTaskCmd.execute(CompleteTaskCmd.java:52)
    at org.flowable.engine.impl.cmd.CompleteTaskCmd.execute(CompleteTaskCmd.java:26)
    at org.flowable.engine.impl.cmd.NeedsActiveTaskCmd.execute(NeedsActiveTaskCmd.java:58)
    at org.flowable.engine.impl.interceptor.CommandInvoker$1.run(CommandInvoker.java:51)
    at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperation(CommandInvoker.java:93)
    at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperations(CommandInvoker.java:72)
    at org.flowable.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:56)
    at org.flowable.engine.impl.interceptor.BpmnOverrideContextInterceptor.execute(BpmnOverrideContextInterceptor.java:25)
    at org.flowable.common.engine.impl.interceptor.TransactionContextInterceptor.execute(TransactionContextInterceptor.java:53)
    at org.flowable.common.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:71)
    at org.flowable.common.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:35)
    at org.flowable.common.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:56)
    at org.flowable.common.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:51)
    at org.flowable.engine.impl.TaskServiceImpl.complete(TaskServiceImpl.java:213)
    at HolidayRequest.main(HolidayRequest.java:132)
    Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
    Message: ???
    at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:604)
    at org.flowable.bpmn.converter.BpmnXMLConverter.convertToBpmnModel(BpmnXMLConverter.java:298)
    … 26 more

@JunnyMan It can happen that your file has a hidden character at the beginning of the file and that can cause the error in the parsing. This can be UTF-8 with BOM. I would try to convert the file only to UTF-8 or whichever encoding you are using without the BOM.

Cheers,
Filip