{"action":"closed","issue":{"url":"https://api.github.com/repos/IDPF/epubcheck/issues/670","repository_url":"https://api.github.com/repos/IDPF/epubcheck","labels_url":"https://api.github.com/repos/IDPF/epubcheck/issues/670/labels{/name}","comments_url":"https://api.github.com/repos/IDPF/epubcheck/issues/670/comments","events_url":"https://api.github.com/repos/IDPF/epubcheck/issues/670/events","html_url":"https://github.com/IDPF/epubcheck/issues/670","id":126683822,"number":670,"title":"Illegal characters in XML output","user":{"login":"bitsgalore","id":1014449,"avatar_url":"https://avatars.githubusercontent.com/u/1014449?v=3","gravatar_id":"","url":"https://api.github.com/users/bitsgalore","html_url":"https://github.com/bitsgalore","followers_url":"https://api.github.com/users/bitsgalore/followers","following_url":"https://api.github.com/users/bitsgalore/following{/other_user}","gists_url":"https://api.github.com/users/bitsgalore/gists{/gist_id}","starred_url":"https://api.github.com/users/bitsgalore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bitsgalore/subscriptions","organizations_url":"https://api.github.com/users/bitsgalore/orgs","repos_url":"https://api.github.com/users/bitsgalore/repos","events_url":"https://api.github.com/users/bitsgalore/events{/privacy}","received_events_url":"https://api.github.com/users/bitsgalore/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/IDPF/epubcheck/labels/bug","name":"bug","color":"fc2929"}],"state":"closed","locked":false,"assignee":{"login":"rdeltour","id":520889,"avatar_url":"https://avatars.githubusercontent.com/u/520889?v=3","gravatar_id":"","url":"https://api.github.com/users/rdeltour","html_url":"https://github.com/rdeltour","followers_url":"https://api.github.com/users/rdeltour/followers","following_url":"https://api.github.com/users/rdeltour/following{/other_user}","gists_url":"https://api.github.com/users/rdeltour/gists{/gist_id}","starred_url":"https://api.github.com/users/rdeltour/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rdeltour/subscriptions","organizations_url":"https://api.github.com/users/rdeltour/orgs","repos_url":"https://api.github.com/users/rdeltour/repos","events_url":"https://api.github.com/users/rdeltour/events{/privacy}","received_events_url":"https://api.github.com/users/rdeltour/received_events","type":"User","site_admin":false},"assignees":[{"login":"rdeltour","id":520889,"avatar_url":"https://avatars.githubusercontent.com/u/520889?v=3","gravatar_id":"","url":"https://api.github.com/users/rdeltour","html_url":"https://github.com/rdeltour","followers_url":"https://api.github.com/users/rdeltour/followers","following_url":"https://api.github.com/users/rdeltour/following{/other_user}","gists_url":"https://api.github.com/users/rdeltour/gists{/gist_id}","starred_url":"https://api.github.com/users/rdeltour/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rdeltour/subscriptions","organizations_url":"https://api.github.com/users/rdeltour/orgs","repos_url":"https://api.github.com/users/rdeltour/repos","events_url":"https://api.github.com/users/rdeltour/events{/privacy}","received_events_url":"https://api.github.com/users/rdeltour/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/IDPF/epubcheck/milestones/3","html_url":"https://github.com/IDPF/epubcheck/milestones/Next","labels_url":"https://api.github.com/repos/IDPF/epubcheck/milestones/3/labels","id":779448,"number":3,"title":"Next","description":"Post 4.0 release.","creator":{"login":"rdeltour","id":520889,"avatar_url":"https://avatars.githubusercontent.com/u/520889?v=3","gravatar_id":"","url":"https://api.github.com/users/rdeltour","html_url":"https://github.com/rdeltour","followers_url":"https://api.github.com/users/rdeltour/followers","following_url":"https://api.github.com/users/rdeltour/following{/other_user}","gists_url":"https://api.github.com/users/rdeltour/gists{/gist_id}","starred_url":"https://api.github.com/users/rdeltour/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rdeltour/subscriptions","organizations_url":"https://api.github.com/users/rdeltour/orgs","repos_url":"https://api.github.com/users/rdeltour/repos","events_url":"https://api.github.com/users/rdeltour/events{/privacy}","received_events_url":"https://api.github.com/users/rdeltour/received_events","type":"User","site_admin":false},"open_issues":16,"closed_issues":6,"state":"open","created_at":"2014-09-05T07:57:11Z","updated_at":"2016-10-04T17:28:43Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-01-14T15:56:17Z","updated_at":"2016-10-04T17:28:43Z","closed_at":"2016-10-04T17:28:43Z","body":"While processing an encrypted EPUB with Epubcheck 4.0.1 (with output to XML format), I ended up with the following output file:\r\n\r\n<https://github.com/KBNLresearch/epubPolicyTests/blob/master/epubcheckout/4.0.1/epub20_encryption_binary_content.xml>\r\n\r\nLine 17 of the output file contains a warning about an illegal XHTML Named entity. However, this very entity (Unicode code point U+000B / 0xb) is included in the output file (line 17, column 81), which makes the output itself invalid XML!  This creates problems if the XML needs to be processed further down the line (in my case I want to run some Schematron rules on it).\r\n\r\nFor rights reasons I cannot share the original EPUB,  but I created a synthetic file that reproduces the problem at:\r\n\r\n<https://github.com/KBNLresearch/epubPolicyTests/blob/master/build/epub20_encryption_binary_content.epub?raw=true>\r\n\r\n(See also about control characters in XML: <https://www.w3.org/International/questions/qa-controls.en.php>)\r\n\r\n "}}
{"actor":{"display_login":"tledoux"}}