Not sure I follow where the problems are:
Ok, but that's a problem of the data. If there is no result then those fields are empty. If you want the result you query for the ones that aren't empty. Why is this a problem of the model?
True if you are trying to combine the orders with the results.
That is a problem for which we have no generic, but only a pragmatic solution right now. Because there is a continuum between diagnostic procedures that have some kind of a result (like a biopsy) to a lab test, where the "procedure" is venipuncture. There is a project going on between LOINC and SNOMED to connect these, so at least nothing will fall through the cracks anymore. But we are still waiting.
If it has a quantifiable result it is a Measurement.
Should be a Measurement.
Those texts should be conceptualized. We have Concepts for all those test results (positive, negative, inconclusive, etc.). Measurement Concepts should not go anywhere else but into the Measurement table, otherwise you kill the interoperability of the OMOP CDM.
Hang on. The Procedure in the OMOP CDM are activities on the patient. Essentially, where it "hurts a little". Lab procedures are not Procedures. They can lead to Measurements, though. Putting something under the microscope and counting cells or cultures is not. So, for the purpose of this discussion, only the phlebotomy is the procedure. Now, we could put a procedure "Venipuncture" each time we got a blood test done, but usually that is of so little value that it amounts to waste of database space.
Why can't you put both into Measurement? Why do you need the extra table?
That is a problem!!!!!
What are you proposing, @Ron? Do you want to make a proposal or POC? Do you have a use case that would directly benefit?