FHIR Chat · ig publisher error: jekyll control characters not allowed · IG creation

Stream: IG creation

Topic: ig publisher error: jekyll control characters not allowed


view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:21):

I'm executing the IG Publisher on an implementation guide and am getting the following errors:

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:21):

Jekyll: Source: D:/test igs/generated_output/temp                                (00:01:22.0657sec)
Jekyll: Generating...                                                            (00:01:22.0659sec)
Jekyll: jekyll 3.8.6 | Error:  (D:/test igs/generated_output/temp/_data/structuredefinitions.json): control characters are not allowed at line 1 column 1 (00:01:24.0046sec)
Jekyll has failed - not installed (correcty?). Complete output from running Jekyll: jekyll 3.8.6 | Error:  (D:/test igs/generated_output/temp/_data/structuredefinitions.json): control characters are not allowed at line 1 column 1
                                                                                                              (00:01:24.0061sec)
Publishing Content Failed: Process exited with an error: 1 (Exit value: 1)       (00:01:24.0066sec)
                                                                                 (00:01:24.0066sec)
Use -? to get command line help                                                  (00:01:24.0067sec)
                                                                                 (00:01:24.0073sec)
Stack Dump (for debugging):                                                      (00:01:24.0078sec)
org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
        at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:404)
        at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166)
        at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:153)
        at org.hl7.fhir.igtools.publisher.Publisher.runJekyll(Publisher.java:4355)
        at org.hl7.fhir.igtools.publisher.Publisher.runTool(Publisher.java:4277)
        at org.hl7.fhir.igtools.publisher.Publisher.generate(Publisher.java:3793)
        at org.hl7.fhir.igtools.publisher.Publisher.createIg(Publisher.java:722)
        at org.hl7.fhir.igtools.publisher.Publisher.execute(Publisher.java:600)
        at org.hl7.fhir.igtools.publisher.Publisher.main(Publisher.java:6301)
Exception in thread "main" java.lang.NullPointerException
        at org.hl7.fhir.igtools.publisher.Publisher.main(Publisher.java:6311)

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:22):

I suspect it has something to do with character encoding... But I'm not sure why this would be an issue.

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:22):

Additionally, the error is related to a file that is generated by the IG Publisher

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:22):

The encoding of that file appears to be "UTF-8 BOM" while all the resources are encoded as "UTF-8"

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:23):

I'm not sure why the IG Publisher is encoding this generated file as "UTF-8 BOM"

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:23):

Anyone have any ideas?

view this post on Zulip Arvind Jagannathan (Aug 14 2019 at 22:23):

@Sean McIlvenna recommends I mention @Grahame Grieve and @Lloyd McKenzie :)

view this post on Zulip Grahame Grieve (Aug 14 2019 at 22:51):

is this reproducible on another computer?

view this post on Zulip Lloyd McKenzie (Aug 15 2019 at 00:51):

What's showing up in the referenced JSON file?

view this post on Zulip Grahame Grieve (Aug 15 2019 at 01:03):

Jekyll should not be processing a plain .json file, so it's a bit mystifying.

view this post on Zulip Lloyd McKenzie (Aug 15 2019 at 01:35):

That's a file that might be being used for lookup info. That's what the data files are for. My guess is something not escaped properly.

view this post on Zulip Sean McIlvenna (Aug 15 2019 at 05:31):

@Arvind Jagannathan will have to package up the files into a zip and send them to me so I can test if the same error occurs on my machine. As for what's IN the json file, it just seems to be some lookup information on the various profiles in the IG. I'm surprised you're not aware of it, though, as I was thinking it was generated by the IG Publisher... There was no structuredefinitions.json file in the core IG files, to my knowledge. Again, @Arvind Jagannathan will have to confirm.

view this post on Zulip Grahame Grieve (Aug 15 2019 at 06:54):

I do generate it - I didn’t check the path. But nothing has changed in how it generates...

view this post on Zulip Sean McIlvenna (Aug 15 2019 at 15:25):

ccda-on-fhir.zip

view this post on Zulip Sean McIlvenna (Aug 15 2019 at 15:25):

I got the same error as @Arvind Jagannathan on my computer

view this post on Zulip Sean McIlvenna (Aug 15 2019 at 15:25):

using the package above

view this post on Zulip Grahame Grieve (Aug 15 2019 at 18:58):

looks to me like the error position is wrong from Jekyll. There are bad characters at

  • "such as a radiologists"
  • "Preferably, the patient"

It's not clear to me how that comes about; I am building the file as a string in Java and saving it as UTF-8 (no BOM). I think the input must be badly coded

view this post on Zulip Sean McIlvenna (Aug 15 2019 at 21:02):

@Arvind Jagannathan please investigate what the invalid characters might be at those two points as mentioned by Grahame... Maybe we could put some validation into Trifolia-on-FHIR to warn the user of characters like that. Or perhaps just remove bad characters automatically during the export.

view this post on Zulip Arvind Jagannathan (Aug 15 2019 at 21:33):

@Sean McIlvenna sure thing. I'll look into that. Thanks everyone for the help.

view this post on Zulip Grahame Grieve (Aug 15 2019 at 21:34):

should be encoded correctly? Should be possible, at least


Last updated: Apr 12 2022 at 19:14 UTC