Forums: Define.xml
Not answering about Pinnacle 21, but in my view it is not a good design practice to create attibutes with a value of 0 or more blanks when the attribute is not supposed to be there. But, technically, Role=“ ” and Role=“” are valid XML. An empty string is not the same as null.
Thank you Lex.
My specific example is <ItemRef ItemOID="adsl.STUDYID" Mandatory="Yes" OrderNumber="1" Role=""></ItemRef> Note: there are no spaces between the quotes for ROLE.
For the example Pinnacle 21 will throw DD0003 error - presumable because ROLE is not populated which should not be the case for SDTM but the define is for ADaM.
However, when Role="" is removed, there is no validation error.
ex. <ItemRef ItemOID="adsl.STUDYID" Mandatory="Yes" OrderNumber="1" ></ItemRef>
What I'm unclear about is whether the define validation check is throwing a false positive since Role="" should be equivalent to Role attribute being completely removed?
Can anyone share insights into the DD0003 error < DD0003 Missing required 'Role' value for 'ItemRef' > when define v1.0 is validated (pinnacle 2.20 community) for and ADaM define based. Though the ROLE attribute is present though null across all the variables.
The question is : should Role be removed from the define.xml completely - or is it acceptable for this error if one cites that it's a false positive as ROLE is not required in ADaM for define.xml v1.0? Appreciate insights into this as I can't find any explicit documentation about this - i.e., I can't find any guidance describing that the attribute should be removed altogether from the define versus merely set to null.