As per the standard:
We have faced a couple of files for which this wasn't the case. HighBit value would be 11 while BitsStored would be 16, which resulted in DCMTK failing to parse those files. I've found this implementation here in diimage.cc.High Bit (0028,0102) shall be one less than Bits Stored (0028,0101)
After some research we've found that we can edit the file's metadata before parsing to make HighBit value match BitsStored - 1, and after doing so, we were able to load all of the files which previously failed to load for this reason.
However, we are unsure whether the value that is incorrect here is indeed HighBit, or is it maybe BitsStored that should be edited to match HighBit + 1.
Is there a reason that DCMTK throws an error for these files instead of making the adjustment to match requirements, other than it being the standard? We're trying to figure if there are any risks of doing this change before loading files. Any information is helpful.