FHIR Chat · DSTU2 support in IG publisher · committers

Stream: committers

Topic: DSTU2 support in IG publisher


view this post on Zulip Grahame Grieve (Oct 12 2016 at 06:06):

ok everyone, the IG publisher now supports DSTU2. Support is still in beta mode, but it actually works generally, and I seem to be managing the value set/ code system issues (tricky for me).

view this post on Zulip Grahame Grieve (Oct 12 2016 at 06:09):

there's been a consqeunce, a breaking change in the way existing profiles from forge are handled. In the past, you had to mark forge inputs as version 1.0.2. but now, you have to mark them as 1.0.1 instead (loading a profile from forge is procedurally different from publishing a 1.0.2 IG)

view this post on Zulip Grahame Grieve (Oct 12 2016 at 06:10):

@Keith Boone @Eric Haas @Brett Marquard this is for your attention....

view this post on Zulip Eric Haas (Oct 14 2016 at 18:15):

thank you. do all the versions have to be 1.0.1?

view this post on Zulip Grahame Grieve (Oct 14 2016 at 19:10):

you must specifically mark any forge profiles with 1.0;1 - all of them, each of them. Otherwise you don't use 1.0.1 at all

view this post on Zulip Eric Haas (Oct 14 2016 at 21:02):

(deleted)

view this post on Zulip Eric Haas (Oct 14 2016 at 21:06):

do I need to manually load the validation pack?

Root directory: /Users/ehaas/Documents/FHIR/STU3build/tests/ig10                 (00.0097sec)
Terminology Cache is at /Users/ehaas/fhircache                                   (00.0120sec)
Fetch Validation Pack from http://hl7.org/fhir/DSTU2/igpack.zip                  (00.0120sec)
Publishing Content Failed: http://hl7.org/fhir/DSTU2/igpack.zip                  (01.0025sec)
                                                                                 (01.0025sec)
Use -? to get command line help                                                  (01.0025sec)
                                                                                 (01.0026sec)
Stack Dump (for debugging):                                                      (01.0026sec)
java.io.FileNotFoundException: http://hl7.org/fhir/DSTU2/igpack.zip
    at sun.net.www.protocol.

view this post on Zulip Eric Haas (Oct 14 2016 at 21:11):

http://hl7.org/fhir/DSTU2/igpack.zip doesnt resolve but http://hl7.org/fhir/igpack.zip does

view this post on Zulip Grahame Grieve (Oct 14 2016 at 21:13):

no. I'll have to look into that

view this post on Zulip Grahame Grieve (Oct 14 2016 at 22:56):

try again

view this post on Zulip Eric Haas (Oct 19 2016 at 15:44):

@Josh Mandel I immediately tried it out publishing dstu2 IG on the github platform with this

Works fine in my local build but I get this error when I try to publish using the webhook...

Terminology Cache is at /home/sbx_user1051/fhircache                             (00.0471sec)
Fetch Validation Pack from http://hl7.org/fhir/DSTU2/igpack.zip                  (00.0472sec)
Publishing Content Failed: /home/sbx_user1051/fhircache/validation-1.0.2.zip (No such file or directory) (04.0918sec)

Can you take a look at it?

view this post on Zulip Grahame Grieve (Oct 19 2016 at 19:22):

@Eric Haas @Josh Mandel it would have to be me who looks at it, but I would need the log file out of the system temp directory. Even that might not be very useful though - this is the code in question:

view this post on Zulip Grahame Grieve (Oct 19 2016 at 19:22):

  private String grabToLocalCache(String source) throws IOException {
    String fn = Utilities.path(vsCache, "validation-"+version+".zip");
    File f = new File(fn);
    if (!f.exists()) {
      URL url = new URL(source);
      URLConnection c = url.openConnection();
      byte[] cnt = IOUtils.toByteArray(c.getInputStream());
      TextFile.bytesToFile(cnt, fn); 
    }
    return fn;
  }

view this post on Zulip Grahame Grieve (Oct 19 2016 at 19:23):

the question is, does the nominated directory exist? (fhircache)

view this post on Zulip Josh Mandel (Oct 19 2016 at 21:16):

How is it supposed to be created?

view this post on Zulip Grahame Grieve (Oct 19 2016 at 21:18):

publisher creates it itself

view this post on Zulip Grahame Grieve (Oct 19 2016 at 21:19):

using Java mkdirs()

view this post on Zulip Eric Haas (Oct 20 2016 at 01:00):

I assume the system log file is different from the log file that generated the above . Just in case, the whole thing is here.

view this post on Zulip Grahame Grieve (Oct 20 2016 at 01:06):

try setting the vsCache directory like we do in DAF

view this post on Zulip Eric Haas (Oct 20 2016 at 17:30):

Is "try setting the vsCache directory like we do in DAF" directed at me and if so how do I do that ?

view this post on Zulip Grahame Grieve (Oct 20 2016 at 19:26):

yes to you. The build seems to be having some caching problem. To troubleshoot it. add an entry for vsCache to the paths in the config file, like we do for DAF

view this post on Zulip Eric Haas (Oct 20 2016 at 20:55):

@Grahame Grieve @Josh Mandel It works!....
This tool and publisher is really slick. Thanks again

I have 'gitignored' the Cache folder- I assume that is not a problem.

view this post on Zulip Grahame Grieve (Oct 20 2016 at 21:05):

have you read the documentation about the cache folder?

view this post on Zulip Eric Haas (Oct 20 2016 at 21:21):

Yeah but it makes more sense now after I asked my question. - NM

view this post on Zulip Eric Haas (Oct 20 2016 at 23:36):

I am not sure I have"specification": "[specification]" right. I want DSTU2 published specification so I put in "specification": "http://hl7.org/fhir/" the references to the core spec are all wonky for example http://hl7.org/fhir/html/medicationorder.html - extra 'html' between the base and the resource id

view this post on Zulip Grahame Grieve (Oct 20 2016 at 23:37):

you should use a version specific reference:

view this post on Zulip Grahame Grieve (Oct 20 2016 at 23:37):

"specification": "http://hl7.org/fhir/DSTU2"

view this post on Zulip Grahame Grieve (Oct 20 2016 at 23:37):

but that doesn't relate to the spurious /html/

view this post on Zulip Grahame Grieve (Oct 20 2016 at 23:39):

that relates to a problem in the IGPack

view this post on Zulip Eric Haas (Oct 20 2016 at 23:41):

..which your problem or mine...

view this post on Zulip Grahame Grieve (Oct 20 2016 at 23:44):

mine

view this post on Zulip Eric Haas (Oct 21 2016 at 18:42):

this issue:
the type Reference(http://hl7.org/fhir/us/argonaut/StructureDefinition/argo-medication) address is ../StructureDefinition/argo-medication.html giving a 404 error.

The right address is instead .../StructureDefinition-argo-medication. html.

It works in DAF? where i define the base. here I'm using the default.

view this post on Zulip Eric Haas (Oct 27 2016 at 17:12):

@Josh Mandel can you check the IG publisher AWS server. it stopped updating at about 3 pm yesterday. Thanks.

view this post on Zulip Josh Mandel (Oct 27 2016 at 17:18):

No changes to my wrapper / autobuild code. Did the publisher tool change?

view this post on Zulip Grahame Grieve (Oct 27 2016 at 19:24):

no

view this post on Zulip Eric Haas (Oct 27 2016 at 20:24):

@Josh Mandel perhaps the transfer of the continuous build may have something do to with it since the code seems to grab the latest IG publisher from the CI build https://chat.fhir.org/#narrow/near/43910/stream/committers/topic/build.2Efhir.2Eorg

view this post on Zulip Josh Mandel (Oct 29 2016 at 03:41):

Oh, that's a good point :-)

view this post on Zulip Josh Mandel (Oct 29 2016 at 03:44):

I'm pushing a change -- thanks for this suggestion!

view this post on Zulip Josh Mandel (Oct 29 2016 at 03:49):

In my debug.tgz, I see a publisher log with

Publishing Content Failed: Must specify which SNOMED CT edition ('sct-edition') to use in the config file (43.0670sec)

Does yours show something similar?

view this post on Zulip Bryn Rhodes (Oct 29 2016 at 16:15):

Josh, yes, we got that with a new IG we put together a few days ago, add this to your ig.json:

view this post on Zulip Bryn Rhodes (Oct 29 2016 at 16:15):

"sct-edition": "http://snomed.info/sct/731000124108",

view this post on Zulip Josh Mandel (Oct 29 2016 at 17:08):

Great! And I fixed my bug in the auto build script (was trying to fetch the jar from the old GitHub.io url).

view this post on Zulip Eric Haas (Oct 31 2016 at 16:31):

Thanks for looking into this Josh but I don't see the code updated at https://github.com/jmandel/fhir-ig-builder

view this post on Zulip Josh Mandel (Oct 31 2016 at 17:31):

Oh, I didn't push to github (will do). But it updates https://github.com/jmandel/fhir-ig-builder/blob/master/src/main/java/iger/Main.java#L40 (and I deployed to AWS, so it should be running).

view this post on Zulip Josh Mandel (Oct 31 2016 at 17:32):

(There, just committed to GitHub.)

view this post on Zulip Eric Haas (Oct 31 2016 at 18:47):

webhooks still not initiating a build when run a curl or push to repo?

view this post on Zulip Eric Haas (Nov 05 2016 at 01:01):

@Grahame Grieve So I have a couple of issues with the IG tool.
1) I have a complex extension that is rendering all the type in the tree view.

2) The image source 'icon_modifier_extension_simple.png' cannot be resolved,

`The image source '../cc0.png' cannot be resolved` and

The link '../license.html' cannot be resolved

are causing the majority of broken links. where do the .png s live and how do I fix this?

3) a qa error "The extension http://hl7.org/fhir/StructureDefinition/structuredefinition-expression is unknown, and not allowed here" I think is due to the fluent path expresssions in the spreadsheets, but if I leave them it won't build... not a high priority

view this post on Zulip Eric Haas (Nov 05 2016 at 01:13):

on more thing I split DAF Research and US-Core into separate IGs. DAF-research has a profiles that are based US-Core.
I have the type as:
{http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient}

and in ig.json:

"dependencyList": [
 {
 "name": "uscore",
  "location": "http://ig.fhir.me/Healthedata1/US-Core",
   "source": "resources"
 }

and have the definitions.json.zip in the DAF-research resources directory. still the The profile builds on the core resource??
Example

view this post on Zulip Grahame Grieve (Nov 06 2016 at 10:38):

@Eric Haas
- 1 complex extension - can I look at it?
- 2 modifier extensions should be fixed, but delete your cache to get the latest igpack.zip
- 2b the image references are probably in your footer template
3 - the expression one - I'll have to think about that. @Lloyd McKenzie it's not defined in R2 - ideas?

view this post on Zulip Grahame Grieve (Nov 06 2016 at 10:39):

I'll have to look at the build... I'm not sure what you're describing

view this post on Zulip Lloyd McKenzie (Nov 06 2016 at 14:42):

@Grahame Grieve / @Eric Haas So the issue is you're trying to build against DSTU2, but the extension used isn't defined in DSTU2? Unless we want to retroactively update the DSTU2 release to include the extension, I think you'll just need to ignore the message. (Though an extension you can't find the definition of really should be a warning, not an error.)

view this post on Zulip Eric Haas (Nov 06 2016 at 20:08):

@Grahame Grieve the spreadsheet for complex extension is here it is rendered here

view this post on Zulip Eric Haas (Nov 06 2016 at 20:15):

@Grahame Grieve one more important issue which you had concerns about code systems early on... The Argonaut code system is code is defined for code extensions. (e.g. condition category = problem ). But am unable to reference them in IG- if I try to reference them using ths code system ("http://argonaut.hl7.org" )in value set, I get a build error without an error message ( the dreaded Null error after output)

view this post on Zulip Grahame Grieve (Nov 07 2016 at 11:38):

fixed the complex extension. Don't understand the other commnet - can you say more?

view this post on Zulip Eric Haas (Nov 07 2016 at 20:09):

It turned out the valueset was invalid -
it had an empty element. The tool did not generate an error message for this.

view this post on Zulip Eric Haas (Nov 07 2016 at 20:09):

on a separate note Is there an example of a concept map used in a IG?

view this post on Zulip Eric Haas (Nov 07 2016 at 20:09):

@Grahame Grieve re code system error:I discovered the problem on my end and fixed it.

view this post on Zulip Eric Haas (Nov 07 2016 at 21:38):

@Grahame Grieve The following QA item ( >100 occurances in my IGs)

  The image source 'icon_modifier_extension_simple.png' cannot be resolved

is in the build generated artifacts and not from the templates. not a priority but when you get a chance can you fix it?

view this post on Zulip Grahame Grieve (Nov 07 2016 at 22:52):

fixed it, but you have to delete your local cached copy of the igpack (in your vscache directory)

view this post on Zulip Eric Haas (Nov 10 2016 at 01:18):

this did not work I don't see an igpack...

view this post on Zulip Grahame Grieve (Nov 10 2016 at 19:00):

it will be called something else, but it will be the biggest file in the cache directory

view this post on Zulip Eric Haas (Nov 12 2016 at 00:10):

DAF-Research condition is a profile on US-Core. So I have type as Condition{http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition}
But it is rendering as a profile on Condition. See myOct31 post above.

view this post on Zulip Eric Haas (Nov 12 2016 at 00:11):

(deleted)

view this post on Zulip Keith Boone (Dec 07 2016 at 08:05):

So where do I find the IG publisher?

view this post on Zulip Grahame Grieve (Dec 07 2016 at 10:35):

download from the current build

view this post on Zulip Rick Geimer (Dec 07 2016 at 17:20):

Run org.hl7.fhir.igpublisher.jar in the publish directory of the build. You can just double click on it, it's an executable jar.


Last updated: Apr 12 2022 at 19:14 UTC