Pipeline Parity

BabelFHIR-TS Report

A babelfish on TypeScript and FHIR

Validator parity across FHIR R4 & R5 Implementation Guides. Each profile is tested with empty() and random() resource generation, then validated against the HL7 Java Validator, the Firely SDK Validator, and BabelFHIR-TS internal validate() + Zod schemas.

Download Report JSON Markdown
Metric Definitions
View Docs
Empty Validation Parity (external)
Do internal and reference validator (Firely / HL7) report the same errors for empty() resources?
Random Validation Parity (external)
Do internal and reference validator report the same errors for random() resources?
Random Generation Validation + Parity (external)
Do random() resources pass reference validator validation with zero errors?
Empty Validation Parity (internal)
Do validate() and Zod schema agree on empty() resources?
Random Validation Parity (internal)
Do validate() and Zod schema agree on random() resources?
Random Generation Validation + Parity (internal)
Do random() resources pass internal validate() with zero errors?

Latest Release main v1.6.12

Trend Chart (18 runs)
HL7FirelyInternal
70% 80% 90% 100% 4/7 9/5 8/9 8/2 8/26 30 pkgs 31 pkgs HL7 6.9.12 · Firely 3.3.0 HL7 6.10.0 HL7 6.10.1 · Firely 3.3.1 HL7 6.10.2 HL7 6.10.3 HL7 6.10.4

Average overall % across empty parity, random parity & random validation per pipeline run (18 runs)

Empty Validation Parity 100% 657/657
Random Validation Parity 100% 703/704
Random Generation Validation + Parity 76% 536/704
Per-package breakdown (31 packages)
Package Empty Validation Parity Random Validation Parity Random Generation Validation + Parity
🇨🇭 CH Core 6.0.0 28/28 (100%) 29/29 (100%) 29/29 (100%)
🌍 IPS 2.0.1 27/27 (100%) 27/27 (100%) 27/27 (100%)
📦 Isik Medikation 4.0.3 8/8 (100%) 8/8 (100%) 8/8 (100%)
🔐 SMART 2.2.0 6/6 (100%) 6/6 (100%) 6/6 (100%)
🇺🇸 US Core 9.0.0 ⚠️ 41/41 (100%) 54/54 (100%) 54/54 (100%)
📦 Cpg 2.0.0 ⚠️ 96/96 (100%) 98/98 (100%) 93/98 (95%)
📦 Genomics Reporting 3.0.0 17/17 (100%) 17/17 (100%) 16/17 (94%)
🇩🇪 ISiK Basis 4.0.3 ⚠️ 25/25 (100%) 25/25 (100%) 23/25 (92%)
📦 Sdoh 2.3.0 20/20 (100%) 20/20 (100%) 18/20 (90%)
📦 Qicore 7.0.2 65/65 (100%) 65/65 (100%) 58/65 (89%)
📦 Physical Activity 1.0.0 16/16 (100%) 16/16 (100%) 14/16 (88%)
📦 Mcode 4.0.0 37/37 (100%) 38/38 (100%) 31/38 (82%)
📦 Au Core 2.0.0 ⚠️ 13/13 (100%) 20/20 (100%) 16/20 (80%)
📦 Davinci Pdex 2.1.0 13/13 (100%) 13/13 (100%) 10/13 (77%)
📦 Ndh 1.0.0 ⚠️ 31/31 (100%) 30/30 (100%) 23/30 (77%)
📦 Emedicinal Product 1.0.0 15/15 (100%) 15/15 (100%) 11/15 (73%)
📦 Davinci Pas 2.2.1 29/29 (100%) 29/29 (100%) 20/29 (69%)
📦 Davinci Drug Formulary 2.1.0 8/8 (100%) 8/8 (100%) 5/8 (63%)
📦 Vitals 1.0.0 1/1 (100%) 15/15 (100%) 9/15 (60%)
📦 Sdc 4.0.0 34/34 (100%) 34/34 (100%) 20/34 (59%)
📦 Cqfmeasures 5.0.0 ⚠️ 12/12 (100%) 12/12 (100%) 6/12 (50%)
📦 Davinci Deqm 5.0.0 11/11 (100%) 11/11 (100%) 5/11 (45%)
📦 De Basisprofil 1.6.0 9/9 (100%) 19/19 (100%) 8/19 (42%)
📦 Carin Bb 2.2.0 16/16 (100%) 16/16 (100%) 6/16 (38%)
📦 Pixm 3.1.0 11/11 (100%) 11/11 (100%) 4/11 (36%)
📦 Mhd 4.2.4 31/31 (100%) 31/31 (100%) 11/31 (35%)
📦 Davinci Cdex 2.1.0 7/7 (100%) 7/7 (100%) 2/7 (29%)
📦 Davinci Dtr 2.2.0 14/14 (100%) 14/14 (100%) 2/14 (14%)
📦 Davinci Alerts 1.1.0 8/8 (100%) 8/8 (100%) 1/8 (13%)
📦 Ae Research 1.0.1 1/1 (100%) 1/1 (100%) 0/1 (0%)
📦 Kbv Erp 1.4.4 ⚠️ 7/7 (100%) 6/7 (86%) 0/7 (0%)
Empty Validation Parity 100% 666/666
Random Validation Parity 93% 616/665
Random Generation Validation + Parity 74% 492/665
Per-package breakdown (31 packages)
Package Empty Validation Parity Random Validation Parity Random Generation Validation + Parity
📦 Carin Bb 2.2.0 ⚠️ 6/6 (100%) 6/6 (100%) 6/6 (100%)
📦 Davinci Pdex 2.1.0 ⚠️ 12/12 (100%) 11/11 (100%) 11/11 (100%)
🇩🇪 ISiK Basis 4.0.3 ⚠️ 26/26 (100%) 26/26 (100%) 26/26 (100%)
📦 Isik Medikation 4.0.3 8/8 (100%) 8/8 (100%) 8/8 (100%)
🔐 SMART 2.2.0 6/6 (100%) 6/6 (100%) 6/6 (100%)
🇺🇸 US Core 9.0.0 55/55 (100%) 55/55 (100%) 55/55 (100%)
📦 Genomics Reporting 3.0.0 17/17 (100%) 17/17 (100%) 16/17 (94%)
📦 Physical Activity 1.0.0 ⚠️ 12/12 (100%) 12/12 (100%) 11/12 (92%)
📦 Mcode 4.0.0 ⚠️ 35/35 (100%) 35/35 (100%) 30/35 (86%)
📦 Au Core 2.0.0 ⚠️ 20/20 (100%) 20/20 (100%) 16/20 (80%)
📦 Ndh 1.0.0 ⚠️ 28/28 (100%) 28/28 (100%) 21/28 (75%)
📦 Pixm 3.1.0 11/11 (100%) 11/11 (100%) 4/11 (36%)
📦 Davinci Cdex 2.1.0 7/7 (100%) 7/7 (100%) 1/7 (14%)
📦 Ae Research 1.0.1 1/1 (100%) 1/1 (100%) 0/1 (0%)
📦 Cpg 2.0.0 ⚠️ 96/96 (100%) 93/96 (97%) 76/96 (79%)
🌍 IPS 2.0.1 ⚠️ 25/25 (100%) 24/25 (96%) 24/25 (96%)
📦 Davinci Pas 2.2.1 ⚠️ 22/22 (100%) 21/22 (95%) 15/22 (68%)
📦 Sdoh 2.3.0 ⚠️ 16/16 (100%) 15/16 (94%) 12/16 (75%)
🇨🇭 CH Core 6.0.0 29/29 (100%) 27/29 (93%) 22/29 (76%)
📦 Sdc 4.0.0 34/34 (100%) 31/34 (91%) 20/34 (59%)
📦 Davinci Deqm 5.0.0 11/11 (100%) 10/11 (91%) 5/11 (45%)
📦 Qicore 7.0.2 65/65 (100%) 56/65 (86%) 50/65 (77%)
📦 Davinci Drug Formulary 2.1.0 ⚠️ 7/7 (100%) 6/7 (86%) 5/7 (71%)
📦 Davinci Dtr 2.2.0 14/14 (100%) 12/14 (86%) 2/14 (14%)
📦 Cqfmeasures 5.0.0 13/13 (100%) 11/13 (85%) 6/13 (46%)
📦 Mhd 4.2.4 ⚠️ 30/30 (100%) 25/30 (83%) 10/30 (33%)
📦 Vitals 1.0.0 15/15 (100%) 12/15 (80%) 13/15 (87%)
📦 De Basisprofil 1.6.0 19/19 (100%) 14/19 (74%) 8/19 (42%)
📦 Emedicinal Product 1.0.0 15/15 (100%) 11/15 (73%) 12/15 (80%)
📦 Davinci Alerts 1.1.0 ⚠️ 3/3 (100%) 2/3 (67%) 1/3 (33%)
📦 Kbv Erp 1.4.4 8/8 (100%) 3/8 (38%) 0/8 (0%)

No data available yet.

⏱ Validation Timing — 3196 resources: validate() 24.96s, Zod 4.39s, HL7 4140.03s, Firely 1619.06s
Package Resources Val Total Val Avg Zod TotalZod Avg HL7 TotalHL7 Avg Firely TotalFirely Avg
ae-research 10 0.09s 9.4ms 0.02s1.7ms 40.19s20092.5ms 27.76s13878ms
au-core 120 1.02s 8.5ms 0.17s1.5ms 80.12s1602.3ms 40.61s812.3ms
carin-bb 44 0.99s 22.6ms 0.12s2.7ms 124.97s3905.3ms 33.7s1053.1ms
ch-core 176 1.38s 7.8ms 0.2s1.1ms 97.54s1681.7ms 40.33s695.4ms
cpg 264 0.99s 3.8ms 0.42s1.6ms 225.87s1140.7ms 64.53s325.9ms
cqfmeasures 88 0.78s 8.8ms 0.16s1.8ms 65.53s2520.5ms 30.28s1164.7ms
davinci-alerts 20 0.23s 11.5ms 0.05s2.4ms 130.04s8127.7ms 86.53s5408.3ms
davinci-cdex 30 0.25s 8.4ms 0.1s3.2ms 172.23s12302.3ms 114.04s8145.6ms
davinci-deqm 68 0.7s 10.3ms 0.09s1.4ms 114.63s5210.5ms 57.99s2636.1ms
davinci-drug-formulary 42 0.4s 9.5ms 0.06s1.5ms 126.59s7912.2ms 51.09s3193.2ms
davinci-dtr 192 1.23s 6.4ms 0.1s0.5ms 272.9s9746.4ms 65.85s2351.9ms
davinci-pas 194 1.84s 9.5ms 0.23s1.2ms 404.21s6969.2ms 52.95s912.9ms
davinci-pdex 118 0.47s 4ms 0.12s1ms 427.02s16423.8ms 39.64s1524.6ms
de-basisprofil 170 0.82s 4.8ms 0.16s0.9ms 39.38s1036.3ms 40.52s1066.3ms
emedicinal-product 30 0.17s 5.8ms 0.06s1.9ms 45.2s1506.6ms 38.33s1277.7ms
genomics-reporting 96 0.38s 4ms 0.12s1.3ms 73.89s2173.3ms 34.11s1003.3ms
ips 76 0.37s 4.8ms 0.13s1.7ms 58.33s1080.3ms 44.87s830.9ms
isik-basis 126 2.44s 19.4ms 0.17s1.3ms 60.26s1076ms 33.82s603.9ms
isik-medikation 32 1.01s 31.6ms 0.04s1.2ms 61.74s3859.1ms 23.46s1466.4ms
kbv-erp 64 1.07s 16.7ms 0.08s1.2ms 71.34s4458.6ms 43.91s2744.1ms
mcode 142 0.76s 5.4ms 0.21s1.5ms 129.11s1698.8ms 58.76s773.1ms
mhd 78 0.92s 11.8ms 0.16s2ms 169.24s2729.6ms 57.29s924ms
ndh 176 0.89s 5.1ms 0.19s1.1ms 162.72s2624.5ms 38.34s618.4ms
physical-activity 38 0.54s 14.1ms 0.11s3ms 75.49s2359.1ms 57.75s1804.6ms
pixm 30 0.35s 11.6ms 0.1s3.3ms 69.31s3150.2ms 36.69s1667.8ms
qicore 172 0.8s 4.6ms 0.26s1.5ms 275.01s2115.4ms 98.42s757.1ms
sdc 320 1.63s 5.1ms 0.26s0.8ms 120.5s1772.1ms 88.23s1297.5ms
sdoh 50 0.53s 10.5ms 0.1s1.9ms 142.57s3564.3ms 45.56s1139ms
smart 18 0.44s 24.2ms 0.04s2.4ms 56.37s4697.4ms 28.86s2405.3ms
us-core 164 1.25s 7.6ms 0.29s1.8ms 192.64s1751.3ms 113.42s1031.1ms
vitals 48 0.22s 4.6ms 0.07s1.5ms 55.09s1836.3ms 31.42s1047.3ms
⏱ Generation Timing — 31 packages: 1085s total
Package Extract Init Resolve Generate Compile Repack Total
ae-research 0.05s 3.9s 4.5s 0.82s 3.1s 0.09s 13.2s
au-core 0.13s 4.9s 11.3s 1.2s 11s 0.49s 30.6s
carin-bb 0.1s 4.7s 12.1s 1.3s 9s 0.33s 29.5s
ch-core 0.17s 4.5s 5.9s 1.2s 11.9s 0.54s 25.7s
cpg 0.3s 4.4s 2.9s 2.1s 21.4s 0.85s 34.3s
cqfmeasures 0.22s 4.3s 7.8s 1.1s 9.1s 0.48s 23.8s
davinci-alerts 0.05s 5.6s 20s 0.91s 5.9s 0.22s 33.1s
davinci-cdex 0.09s 5.2s 38.5s 0.83s 6.1s 0.25s 51.5s
davinci-deqm 0.13s 4.8s 18.7s 2.3s 7s 0.29s 34.2s
davinci-drug-formulary 0.08s 4.4s 13.4s 1.1s 5.4s 0.3s 27.1s
davinci-dtr 0.07s 3.8s 57.5s 1.5s 7.9s 0.31s 71.4s
davinci-pas 0.2s 4.3s 53.7s 1.6s 15.1s 0.6s 76.3s
davinci-pdex 0.14s 6s 57.9s 1.4s 10.3s 0.44s 77.4s
de-basisprofil 0.11s 4.3s 0.57s 0.88s 9.6s 0.34s 17.8s
emedicinal-product 0.06s 5.4s 2.9s 3.8s 4.3s 0.12s 20.1s
genomics-reporting 0.21s 4.2s 2.6s 0.52s 9.2s 0.41s 18.3s
ips 0.11s 5.1s 6.2s 1.8s 8.4s 0.32s 24.6s
isik-basis 0.12s 5.8s 4.5s 0.44s 9.4s 0.35s 21.5s
isik-medikation 0.05s 4.2s 3.9s 62.8s 5s 0.24s 76.5s
kbv-erp 0.04s 5.4s 8s 0.72s 6.4s 0.22s 21.1s
mcode 0.3s 4.3s 17s 1.4s 13.4s 0.6s 38.7s
mhd 0.17s 4.4s 5.9s 0.87s 9.9s 0.41s 22.4s
ndh 0.33s 5.6s 21.8s 2.7s 12.6s 0.76s 44.7s
physical-activity 0.16s 4.9s 18.1s 1.1s 8.5s 0.35s 34.2s
pixm 0.1s 5.1s 4.3s 1s 8.4s 0.28s 19.6s
qicore 0.13s 3.9s 9.6s 7.8s 12.3s 0.47s 38.1s
sdc 0.25s 5.2s 13.4s 3.1s 15.8s 0.67s 39.5s
sdoh 0.1s 3.8s 19.3s 1.8s 6.9s 0.25s 32.9s
smart 0.03s 4s 6.6s 1.2s 4.1s 0.17s 16.6s
us-core 0.4s 6.4s 23.6s 2.8s 18.3s 0.84s 57.4s
vitals 0.05s 4.9s 1.5s 0.55s 5.1s 0.21s 12.9s
⚠️ Excluded Profiles — 62 exclusions both: 3 firely: 49 hl7: 10

Profiles excluded from parity statistics due to external issues (validator bugs, profile defects, or terminology limitations). BabelFHIR-TS generates valid resources for all of these.

Exclusion Patterns

PatternCountAffected Validator(s)
Discriminator evaluation failure 22 22 firely
Element ordering (parser bug) 21 21 firely
Bundled context required 8 8 firely
Terminology server limitation 4 4 hl7
Missing snapshot 4 4 hl7
Cross-profile validation 2 2 hl7
SNOMED edition mismatch 2 2 hl7
Failed to parse validator output 2 1 hl7 1 firely

Excluded Profiles

#IGProfileValidatorCategoryScopeError
1 📦 au-core AUCoreMedicationClass both Firely: Element ordering (parser bug)
HL7: Terminology server limitation
empty-parity, random-parity, random-validation Firely: Firely parser ordering bug: coding vs text
HL7: tx.fhir.org: Australian ValueSet filter not understood
2 📦 au-core AUCoreMedicationRequestClass both Firely: Element ordering (parser bug)
HL7: Terminology server limitation
empty-parity, random-parity, random-validation Firely: Firely parser ordering bug: coding vs text
HL7: tx.fhir.org: Australian ValueSet filter not understood
3 📦 cpg CHFBodyWeightClass both Firely: Discriminator evaluation failure
HL7: Cross-profile validation
empty-parity Firely: Firely cannot load the chf-bodyweight schema and validates against base Observation, so it reports only status and code
HL7: HL7 bp
4 📦 au-core AUCoreBloodPressureClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely cannot use the coding at Observation.component:SystolicBP.code as a discriminator when it is sliced to more than one choice
5 📦 au-core AUCoreConditionClass hl7 Terminology server limitation empty-parity, random-parity, random-validation tx.fhir.org: Australian ValueSet filter not understood
6 📦 au-core AUCoreImmunizationClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
7 📦 au-core AUCorePathologyResultClass firely Discriminator evaluation failure empty-parity Unmatchable value discriminator at Observation.category:specificDiscipline.coding.code; Firely abandons the schema and validates against base Observation
8 📦 au-core AUCoreProcedureClass hl7 Terminology server limitation empty-parity, random-parity, random-validation tx.fhir.org: Australian ValueSet filter not understood
9 📦 au-core AUCoreSmokingStatusClass hl7 SNOMED edition mismatch empty-parity, random-parity, random-validation SNOMED AU code not in International Edition
10 📦 carin-bb C4BBExplanationOfBenefitInpatientInstitutionalBasisClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
11 📦 carin-bb C4BBExplanationOfBenefitInpatientInstitutionalClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
12 📦 carin-bb C4BBExplanationOfBenefitOralBasisClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
13 📦 carin-bb C4BBExplanationOfBenefitOralClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
14 📦 carin-bb C4BBExplanationOfBenefitOutpatientInstitutionalBasisClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
15 📦 carin-bb C4BBExplanationOfBenefitOutpatientInstitutionalClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
16 📦 carin-bb C4BBExplanationOfBenefitPharmacyBasisClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
17 📦 carin-bb C4BBExplanationOfBenefitPharmacyClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
18 📦 carin-bb C4BBExplanationOfBenefitProfessionalNonClinicianBasisClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
19 📦 carin-bb C4BBExplanationOfBenefitProfessionalNonClinicianClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
20 📦 cpg CHFO2SatClass firely Discriminator evaluation failure empty-parity Firely cannot load the chf-oxygensaturation schema and validates against base Observation, so it reports only status and code
21 📦 cpg CHFPotassiumClass firely Discriminator evaluation failure empty-parity Firely cannot load the chf-potassium schema and validates against base Observation, so it reports only status and code
22 📦 cqfmeasures CQFMPublishableMeasureClass hl7 Failed to parse validator output empty-parity, random-parity, random-validation HL7 validator crashes — unparseable output
23 📦 davinci-alerts AdmitNotificationMessageHeaderClass firely Bundled context required empty-parity, random-parity, random-validation Profile requires aggregation: bundled; standalone parity not meaningful
24 📦 davinci-alerts ADTNotificationCoverageProfileClass firely Bundled context required empty-parity, random-parity, random-validation Profile requires aggregation: bundled; standalone parity not meaningful
25 📦 davinci-alerts ADTNotificationEncounterProfileClass firely Bundled context required empty-parity, random-parity, random-validation Profile requires aggregation: bundled; standalone parity not meaningful
26 📦 davinci-alerts DischargeNotificationMessageHeaderClass firely Bundled context required empty-parity, random-parity, random-validation Profile requires aggregation: bundled; standalone parity not meaningful
27 📦 davinci-alerts NotificationsMessageHeaderClass firely Bundled context required empty-parity, random-parity, random-validation Profile requires aggregation: bundled; standalone parity not meaningful
28 📦 davinci-drug-formulary FormularyDrugClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
29 📦 DaVinci PAS PASClaimBaseClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Claim.careTeam:OverallClaimMember points a value discriminator at a boolean with no fixed[x] or pattern[x]
30 📦 DaVinci PAS PASClaimClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Claim.careTeam:OverallClaimMember points a value discriminator at a boolean with no fixed[x] or pattern[x]
31 📦 DaVinci PAS PASClaimInquiryClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Claim.careTeam:OverallClaimMember points a value discriminator at a boolean with no fixed[x] or pattern[x]
32 📦 DaVinci PAS PASClaimUpdateClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Claim.careTeam:OverallClaimMember points a value discriminator at a boolean with no fixed[x] or pattern[x]
33 📦 DaVinci PAS PASDeviceRequestClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
34 📦 DaVinci PAS PASEncounterClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
35 📦 DaVinci PAS PASTaskClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
36 📦 davinci-pdex PdexMedicationDispenseClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
37 📦 davinci-pdex PDexMultiMemberMatchRequestParametersClass firely Discriminator evaluation failure random-parity, random-validation Profile bug: hrex-consent policy:hrex slice uses 'value' discriminator without fixed/pattern
38 🌍 IPS CompositionUvIpsClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at Composition.section:sectionMedications.entry:medicationStatementOrRequest, which FHIR R4 permits
39 🌍 IPS DiagnosticReportUvIpsClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at DiagnosticReport.result:observation-results, which FHIR R4 permits
40 🇩🇪 ISiK Basis ISiKAngehoerigerClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation RelatedPerson.name:Name declares a pattern discriminator and sets no pattern[x] to match on
41 🇩🇪 ISiK Basis ISiKDiagnoseClass hl7 Missing snapshot empty-parity, random-parity, random-validation Profile ISiKDiagnose
42 🇩🇪 ISiK Basis ISiKProzedurClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
43 🇩🇪 ISiK Basis ISiKVersicherungsverhaeltnisGesetzlichClass hl7 Missing snapshot empty-parity, random-parity, random-validation Profile ISiKVersicherungsverhaeltnisGesetzlich
44 🇩🇪 ISiK Basis ISiKVersicherungsverhaeltnisSelbstzahlerClass hl7 Missing snapshot empty-parity, random-parity, random-validation Profile ISiKVersicherungsverhaeltnisSelbstzahler
45 📦 kbv-erp KBVPRERPBundleClass hl7 Missing snapshot empty-parity, random-parity, random-validation Profile KBV_PR_ERP_Bundle
46 📦 mcode GenomicVariantClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: version vs display
47 📦 mcode LymphomaStageClass firely Element ordering (parser bug) empty-parity, random-parity, random-validation Firely parser ordering bug: coding vs text
48 📦 mcode TNMStageGroupClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the $this.resolve() discriminator at Observation.hasMember:TNMCategory, which FHIR R4 permits
49 📦 mhd FindDocumentReferencesResponseClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Bundle.entry:DocumentReference has a discriminator that always succeeds, so it cannot separate the slice from any other entry
50 📦 ndh NdhNdApiPractitionerClass firely Bundled context required empty-parity, random-parity, random-validation Firely snapshot generator internal error on Extension.extension.value[x] (ElementMatcher.constructChoiceTypeMatch)
51 📦 ndh NdhNdApiPractitionerRoleClass hl7 SNOMED edition mismatch random-parity, random-validation SNOMED code '453091000124108' not in International Edition
52 📦 ndh NdhPnLdApiPractitionerClass firely Bundled context required empty-parity, random-parity, random-validation Firely snapshot generator internal error on Extension.extension.value[x] (ElementMatcher.constructChoiceTypeMatch)
53 📦 ndh NdhPractitionerClass firely Bundled context required empty-parity, random-parity, random-validation Firely snapshot generator internal error on Extension.extension.value[x] (ElementMatcher.constructChoiceTypeMatch)
54 📦 physical-activity PACarePlanClass firely Failed to parse validator output empty-parity, random-parity, random-validation Firely SDK internal XML parsing error on generated JSON resource
55 📦 physical-activity PAConditionLowPAClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at Condition.evidence.detail:SupportedDetail, which FHIR R4 permits
56 📦 physical-activity PADiagnosticReportClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at DiagnosticReport.result:SupportedResult, which FHIR R4 permits
57 📦 physical-activity PAGoalClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the $this.resolve() discriminator at Goal.addresses:PAIssues, which FHIR R4 permits
58 📦 sdoh SDOHCCConditionClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at Condition.evidence.detail:SupportedDetail, which FHIR R4 permits
59 📦 sdoh SDOHCCObservationEthnicityOMBClass firely Discriminator evaluation failure empty-parity Unmatchable value discriminator at Observation.component:EthnicityDescription.value[x]; Firely abandons the schema and validates against base Observation
60 📦 sdoh SDOHCCObservationRaceOMBClass firely Discriminator evaluation failure empty-parity Unmatchable value discriminator at Observation.component:RaceDescription.value[x]; Firely abandons the schema and validates against base Observation
61 📦 sdoh SDOHCCTaskForPatientClass firely Discriminator evaluation failure empty-parity, random-parity, random-validation Firely rejects the resolve() discriminator at Task.partOf:SupportedPartOf, which FHIR R4 permits
62 🇺🇸 US Core USCoreVitalSignsProfileClass hl7 Cross-profile validation empty-parity, random-parity, random-validation HL7 bp
🔧 Excluded Fields — 31 field-level exclusions

Specific fields excluded from parity comparison because validators report them incorrectly. The profile still passes, but these fields are tolerated.

#IGProfileValidatorField(s)CategoryScopeReason
1 au-core AUCorePatientClass firely country, pattern, unclassified Discriminator evaluation failure random-parity Firely validates against an identifier slice whose discriminator the instance does not satisfy, and omits the fixed country and system we report
2 au-core AUCorePractitionerClass firely country, type, pattern, unclassified Discriminator evaluation failure random-parity Firely validates against an identifier slice whose discriminator the instance does not satisfy, and omits the fixed country and system we report
3 au-core AUCorePractitionerRoleClass firely type, pattern, unclassified Discriminator evaluation failure random-parity Firely validates against an identifier slice whose discriminator the instance does not satisfy, and omits the fixed country and system we report
4 au-core AUCoreRelatedPersonClass firely country, type, system, pattern, unclassified Discriminator evaluation failure random-parity Firely validates against an identifier slice whose discriminator the instance does not satisfy, and omits the fixed country and system we report
5 cpg CPGCommunicationRequestClass firely modifierextension Validation model difference empty-parity Firely reports min=0 mustSupport slice modifierExtension:intent as a required slice; the SD sets min=0 max=1
6 cqfmeasures CQFMRatioMeasureClass firely population, unclassified Validation model difference random-parity Firely aborts at the first structure it cannot parse, so it never evaluates the further findings we report on the same resource
7 cqfmeasures CQFMContinuousVariableMeasureClass firely population, unclassified Validation model difference random-parity Firely aborts at the first structure it cannot parse, so it never evaluates the further findings we report on the same resource
8 davinci-cdex CDexTaskAttachmentRequestClass firely code, constraint, contained, resourcetype, reference Validation model difference random-parity Firely aborts at the first structure it cannot parse, so it never evaluates the further findings we report on the same resource
9 kbv-erp KBVPRERPBundleClass firely pattern Validation model difference empty-parity Both validators report the meta.profile fixed-value mismatch; Firely anchors it to no element so it classifies as `pattern` while ours classifies as `meta`
10 au-core AUCorePatientClass hl7 country Validation model difference random-parity HL7 resolves au-address and au-base but does not report the fixed country, fixed identifier system or required type they pin
11 au-core AUCorePractitionerClass hl7 country, type, unclassified Validation model difference random-parity HL7 resolves au-address and au-base but does not report the fixed country, fixed identifier system or required type they pin
12 au-core AUCorePractitionerRoleClass hl7 type Validation model difference random-parity HL7 resolves au-address and au-base but does not report the fixed country, fixed identifier system or required type they pin
13 au-core AUCoreRelatedPersonClass hl7 country, type, system, unclassified Validation model difference random-parity HL7 resolves au-address and au-base but does not report the fixed country, fixed identifier system or required type they pin
14 au-core AUCoreMedicationStatementClass hl7 unclassified Terminology server limitation random-parity tx.fhir.org: Australian ValueSet filter not understood
15 davinci-pdex PDexMultiMemberMatchRequestParametersClass hl7 constraint Validation model difference random-parity HL7 rejects example.org URLs in Consent.policy.uri via a built-in rule, not a FHIRPath constraint in the SD; reported intermittently
16 de-basisprofil VitalSignDEArterielleSauerstoffsaettigungPulsoximetrieClass hl7 coding Discriminator evaluation failure random-parity HL7 $this discriminator limitation: undercounts coding:loinc slice matches (reports min=2 found=1 despite 3 LOINC codings present) due to faulty $this pattern evaluation inherited from base VitalSignDE profile
17 de-basisprofil VitalSignDEArterielleSauerstoffsaettigungPulsoximetrieClass hl7 pattern Validation model difference random-parity HL7 reports one fixed-value violation twice, anchored to both profiles that pin the unit; we report it once
18 de-basisprofil VitalSignDEAtemfrequenzClass hl7 pattern Validation model difference random-parity HL7 reports one fixed-value violation twice, anchored to both profiles that pin the unit; we report it once
19 de-basisprofil VitalSignDEHerzfrequenzClass hl7 pattern Validation model difference random-parity HL7 reports one fixed-value violation twice, anchored to both profiles that pin the unit; we report it once
20 de-basisprofil VitalSignDEKoerperkerntemperaturClass hl7 pattern Validation model difference random-parity HL7 reports one fixed-value violation twice, anchored to both profiles that pin the unit; we report it once
21 de-basisprofil VitalSignDEArterielleSauerstoffsaettigungClass hl7 pattern Validation model difference random-parity HL7 reports one fixed-value violation twice, anchored to both profiles that pin the unit; we report it once
22 isik-basis ISiKAngehoerigerClass hl7 constraint Discriminator evaluation failure random-parity RelatedPerson.name:Name declares a pattern discriminator and sets no pattern[x], so slice membership cannot be decided
23 isik-basis ISiKProzedurClass hl7 unclassified Terminology server limitation random-parity tx: OPS code system version in the ValueSet include ("*") does not match the version on the code, which tracks the current OPS year
24 mhd ProvideDocumentBundleResponseClass hl7 unclassified Bundled context required random-parity bdl-8 FHIRPath empty propagation: fullUrl.contains(/_history/).not() yields empty when fullUrl absent; fhirpath.js all() returns false, HL7 returns true
25 mhd ComprehensiveProvideDocumentBundleClass hl7 constraint, entry, pattern Validation model difference random-parity Bundle entry slice validation model difference: our validator matches entries by resourceType and delegates to sub-profile validators (catching code+extension errors), while HL7 uses conformsTo-based matching and reports entry-level slice rejection + pattern mismatch. Both detect the same underlying issues (wrong code, missing extensions) but organize errors across different field categories.
26 mhd MinimalProvideDocumentBundleClass hl7 constraint, entry, pattern Validation model difference random-parity Bundle entry slice validation model difference: our validator matches entries by resourceType and delegates to sub-profile validators (catching code+extension errors), while HL7 uses conformsTo-based matching and reports entry-level slice rejection + pattern mismatch. Both detect the same underlying issues (wrong code, missing extensions) but organize errors across different field categories.
27 mhd UnContainedComprehensiveProvideDocumentBundleClass hl7 constraint, entry, pattern Validation model difference random-parity Bundle entry slice validation model difference: our validator matches entries by resourceType and delegates to sub-profile validators (catching code+extension errors), while HL7 uses conformsTo-based matching and reports entry-level slice rejection + pattern mismatch. Both detect the same underlying issues (wrong code, missing extensions) but organize errors across different field categories.
28 sdc SDCQuestionnaireExtractTemplateClass hl7 extension Empty parity field miss empty-parity HL7 misses inherited min=1 on Questionnaire.url (tightened by sdc-questionnaire)
29 vitals BodyLengthClass hl7 constraint Cross-profile validation random-parity HL7 measures body length (LOINC 8306-3, absent from the core vital-signs value set) against core bodyheight and demands its BodyHeightCode slice, LOINC 8302-2; reported intermittently
30 vitals HeadOccipitalFrontalCircumferenceClass hl7 constraint Cross-profile validation random-parity HL7 measures head circumference by tape measure (LOINC 8287-5, absent from the core vital-signs value set) against core headcircum and demands its HeadCircumCode slice, LOINC 9843-4; reported intermittently
31 vitals BloodPressurePanelClass hl7 component Cross-profile validation random-parity HL7 applies core bp (component 2..*, DiastolicBP 1..1) to LOINC 85354-9; blood-pressure-panel itself declares component 1..* with DiastolicBP 0..1