Stream: tooling
Topic: Project validation
Ward Weistra (Sep 02 2020 at 15:31):
Hi @Grahame Grieve, we're building project validation for Simplifier.net, intending to validate many project-level situations like:
- Canonicals that are referred to, but are not within the scope (project or package dependencies)
- Duplicate canonicals within project or full scope
- Having no (indirect) dependencies on a FHIR core package
The IG Publisher obviously has many great IG/project level validation rules. I hear there has been conversation before about creating these in a shared format. Do you think that would be doable for (part of) these rules, eg. express them in FHIR Path statements we could share between tooling?
Grahame Grieve (Sep 02 2020 at 20:23):
it sounds difficult. Many of the validation rules are dependent on information that is not presently accessible to FHIRPath statements. And FHIRPath statements are not always the most efficient way do things (most obvious reason: no variables)
Grahame Grieve (Sep 02 2020 at 20:59):
to comment specifically on these rules:
- Canonicals that are referred to, but are not within the scope (project or package dependencies)
Whether a canonical URL that is not resolved by the project or it's dependencies is complicated is an error or not is complicated. The IG publisher always allows references to example.org and acme.com. You can register additional example domains if you want. It's an error if Value set and profile references in profiles don't resolve. It's not an error if code system canonicals in value sets don't resolve - but it does create a warning. Except that it might be an error in some uses.
Duplicate canonicals within project or full scope
That would create errors for the IG publisher, unless.. there might be a way to pull this off. I'll have to make a rule
Having no (indirect) dependencies on a FHIR core package
I don't know what this means?
Ward Weistra (Sep 03 2020 at 12:10):
OK! We'll try to see which ones we can formulate as FHIRPath. There's probably not a smarter way to find the checks in the IG publisher than something like this search?
Having no (indirect) dependencies on a FHIR core package
Raising an error if the project has no direct or indirect dependency on any FHIR core package. (Cause "A FHIR package SHOULD have a dependency to at least one FHIR core package")
Grahame Grieve (Sep 03 2020 at 12:38):
hmm I always will populate a reference. The editor gets no say in this.
Grahame Grieve (Sep 03 2020 at 12:39):
Searching for System.out.println will miss all the good stuff - it will go into qa.html one way or another
Grahame Grieve (Sep 03 2020 at 12:55):
I'm not exactly sure how to figure this out. let me think about it
Last updated: Apr 12 2022 at 19:14 UTC