Hi Ronald, Thanks for the explanations. I think I understand where you're coming from but I have a few more questions ...
> 1. Checking for Null currently is hard, because you actually have > to check all parts in a composite type. E.g. for a field of type > XPN you have to check that XPN.1.1 is "", XPN.1.2 is empty, > XPN.1.3 is empty, etc, then XPN.2 is empty, XPN.3 is empty, etc. > Yes, if XPN.1.1 is "" then chances are small it wasn't an > Null, but, say, a surname of "" is legal if at least one other > component in the field is valued (i.e. a PID-5 field of ""^John is > legal, though unusual). I see what you mean technically, but I don't understand the intended usage. Suppose you had a flag that told you something in a field was null (without specifying which part). What would you do with this? Do you have a routine that does nothing but handle nulls, and you only want it to traverse only relevant parts of the message? So do you need this flag at the segment level too? > 2. Profile validation fails when the first item in the type is > constrained to have a length of 1. E.g. Nulls in boolean fields > PID-8, PID-24, PID-30, PD1-12, and PV2-22 all cause validators to > complain. Good point, but can't this be fixed as easily without the flag? > 3. I would argue that the current Null handling in the > RegexPrimitiveRule is wrong, because does not take the whole field > into account. For example a field of type DR with the value > 2004^""^ (or e.g. a PID-5 of ^^^^^^^^^2004&"") passes validation > despite being invalid. OK, but a PrimitiveTypeRule isn't supposed to be aware of rules that span multiple components. The only support for this kind of thing currently would be in ConformanceProfileRule. It would make sense to add new functionality here with a CompositeTypeRule interface. However, I don't see how the null flag would help with this. Can you clarify? Thanks, Bryan ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Hl7api-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/hl7api-devel

