<?xml version="1.0" ?><?xml-stylesheet type="text/xsl" href="https://dcf.efsa.europa.eu/dcf-war/downloadResourcesPage/fileName/FormatWF2_BR.xslt"?><businessRuleSet>
<name>General business rules for SSD2</name>
<businessRulesList>
<businessRule>
<businessRuleCode>GBR2</businessRuleCode>
<description>The descriptors for the sampling event, the local organisation and the sampling programme (sections A, B, C) must be constant (the same) for all records with the same 'Sampling event identification code' (sampEventId). The data elements in the sections A, B, and C are: localOrgId, localOrgCountry, localOrgInfo, sampStrategy, progType, sampMethod , sampler, sampPoint, progInfo, sampUnitType, sampUnitSize, sampUnitSizeUnit, sampUnitIds, sampEventInfo;</description>
<infoMessage>The sampling event or local organisation or sampling programme descriptors (sections A, B, C) are not constant for all records with the same sampEventId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2020-02-14</lastUpdate>
<checkedDataElements>
<dataElement>localOrgId</dataElement>
<dataElement>localOrgCountry</dataElement>
<dataElement>localOrgInfo</dataElement>
<dataElement>sampStrategy</dataElement>
<dataElement>progType</dataElement>
<dataElement>sampMethod</dataElement>
<dataElement>sampler</dataElement>
<dataElement>sampPoint</dataElement>
<dataElement>progInfo</dataElement>
<dataElement>sampEventId</dataElement>
<dataElement>sampUnitType</dataElement>
<dataElement>sampUnitSize</dataElement>
<dataElement>sampUnitSizeUnit</dataElement>
<dataElement>sampUnitIds</dataElement>
<dataElement>sampEventInfo</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>sampEventId</dataElement>
</forEach>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>localOrgId</dataElement>
<dataElement>localOrgCountry</dataElement>
<dataElement>localOrgInfo</dataElement>
<dataElement>sampStrategy</dataElement>
<dataElement>progType</dataElement>
<dataElement>sampMethod</dataElement>
<dataElement>sampler</dataElement>
<dataElement>sampPoint</dataElement>
<dataElement>progInfo</dataElement>
<dataElement>sampUnitType</dataElement>
<dataElement>sampUnitSize</dataElement>
<dataElement>sampUnitSizeUnit</dataElement>
<dataElement>sampUnitIds</dataElement>
<dataElement>sampEventInfo</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR3</businessRuleCode>
<description>The descriptors for the sample taken and the matrix sampled (sections D, E) and the 'Sampling event identification code' (sampEventId) must be constant (the same) for all records with the same 'Sample taken identification code' (sampId). The data elements in the sections D and E are: sampId, repCountry, sampCountry, sampArea, sampY, sampM, sampD, sampSize, sampUnitSize, sampInfo, sampMatType, sampMatCode, sampMatText, origCountry, origArea, origFishAreaCode, origFishAreaText, procCountry, procArea, sampMatInfo, sampMunicipality;</description>
<infoMessage>The sample taken or matrix sampled descriptors (sections D, E) or sampEventId are not constant for all records with the same sampId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2022-11-22</lastUpdate>
<checkedDataElements>
<dataElement>sampEventId</dataElement>
<dataElement>sampId</dataElement>
<dataElement>repCountry</dataElement>
<dataElement>sampCountry</dataElement>
<dataElement>sampArea</dataElement>
<dataElement>sampY</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampD</dataElement>
<dataElement>sampSize</dataElement>
<dataElement>sampUnitSize</dataElement>
<dataElement>sampInfo</dataElement>
<dataElement>sampMatType</dataElement>
<dataElement>sampMatCode</dataElement>
<dataElement>sampMatText</dataElement>
<dataElement>origCountry</dataElement>
<dataElement>origArea</dataElement>
<dataElement>origFishAreaCode</dataElement>
<dataElement>origFishAreaText</dataElement>
<dataElement>procCountry</dataElement>
<dataElement>procArea</dataElement>
<dataElement>sampMatInfo</dataElement>
<dataElement>sampMunicipality</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>sampId</dataElement>
</forEach>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventId</dataElement>
<dataElement>repCountry</dataElement>
<dataElement>sampCountry</dataElement>
<dataElement>sampArea</dataElement>
<dataElement>sampY</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampD</dataElement>
<dataElement>sampSize</dataElement>
<dataElement>sampUnitSize</dataElement>
<dataElement>sampInfo</dataElement>
<dataElement>sampMatType</dataElement>
<dataElement>sampMatCode</dataElement>
<dataElement>sampMatText</dataElement>
<dataElement>origCountry</dataElement>
<dataElement>origArea</dataElement>
<dataElement>origFishAreaCode</dataElement>
<dataElement>origFishAreaText</dataElement>
<dataElement>procCountry</dataElement>
<dataElement>procArea</dataElement>
<dataElement>sampMatInfo</dataElement>
<dataElement>sampMunicipality</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR4</businessRuleCode>
<description>The descriptors for the sample analysed and the matrix analysed (sections F, G) and the 'Sample taken identification code' (sampId) must be constant (the same) for all records with the same 'Sample analysed identification code' (sampAnId). The data elements in the sections F and G are: sampAnId, sampAnRefTime, analysisY, analysisM, analysisD, sampAnInfo, anMatCode, anMatText, anMatInfo;</description>
<infoMessage>The sample analysed or matrix analysed descriptors (sections F, G) or sampId are not constant for all records with the same sampAnId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampId</dataElement>
<dataElement>sampAnId</dataElement>
<dataElement>sampAnRefTime</dataElement>
<dataElement>analysisY</dataElement>
<dataElement>analysisM</dataElement>
<dataElement>analysisD</dataElement>
<dataElement>sampAnInfo</dataElement>
<dataElement>anMatCode</dataElement>
<dataElement>anMatText</dataElement>
<dataElement>anMatInfo</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>sampAnId</dataElement>
</forEach>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampId</dataElement>
<dataElement>sampAnRefTime</dataElement>
<dataElement>analysisY</dataElement>
<dataElement>analysisM</dataElement>
<dataElement>analysisD</dataElement>
<dataElement>sampAnInfo</dataElement>
<dataElement>anMatCode</dataElement>
<dataElement>anMatText</dataElement>
<dataElement>anMatInfo</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR5</businessRuleCode>
<description>If a value in 'Sample analysed identification code' (sampAnId) and 'Sample analysed portion sequence' (anPortSeq) is reported, then the descriptors for the sample analysed portion (section H) must be constant (the same) for all records with the same 'Sample analysed identification code' (sampAnId) and 'Sample analysed portion sequence' (anPortSeq). The data elements in the section H are: anPortSeq, anPortSize, anPortSizeUnit, anPortInfo;</description>
<infoMessage>The sample analysed portion descriptors (section H) are not constant for all records with the same sampAnId and anPortSeq;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampAnId</dataElement>
<dataElement>anPortSeq</dataElement>
<dataElement>anPortSize</dataElement>
<dataElement>anPortSizeUnit</dataElement>
<dataElement>anPortInfo</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>sampAnId</dataElement>
<dataElement>anPortSeq</dataElement>
</forEach>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampAnId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anPortSeq</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anPortSize</dataElement>
<dataElement>anPortSizeUnit</dataElement>
<dataElement>anPortInfo</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR6</businessRuleCode>
<description>The descriptors for the isolate (section I) and the 'Sample taken identification code' (sampId) must be constant (the same) for all records with the same 'Isolate identification' (isolId). The data elements in the section I are: isolId, isolParamCode, isolParamText, isolInfo;</description>
<infoMessage>The isolate descriptors (section I) or sampId are not constant for all records with the same isolId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampId</dataElement>
<dataElement>isolId</dataElement>
<dataElement>isolParamCode</dataElement>
<dataElement>isolParamText</dataElement>
<dataElement>isolInfo</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>isolId</dataElement>
</forEach>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampId</dataElement>
<dataElement>isolParamCode</dataElement>
<dataElement>isolParamText</dataElement>
<dataElement>isolInfo</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR7</businessRuleCode>
<description>The value in 'Local organisation country' (localOrgCountry) must be constant (the same) for all records with the same 'Local organisation identification code' (localOrgId);</description>
<infoMessage>localOrgCountry is not constant for all records with the same localOrgId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>localOrgCountry</dataElement>
<dataElement>localOrgId</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>localOrgId</dataElement>
</forEach>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>localOrgId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>localOrgCountry</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR10</businessRuleCode>
<description>The value in 'Laboratory country' (labCountry) must be constant (the same) for all records with the same 'Laboratory identification code' (labId);</description>
<infoMessage>labCountry is not constant for all records with the same labId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>labId</dataElement>
<dataElement>labCountry</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>labId</dataElement>
</forEach>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>labId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>labCountry</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR11</businessRuleCode>
<description>The value in 'Analytical method reference code' (anMethRefCode), the 'Analytical method code' (anMethCode), the 'Analytical method text' (anMethText), and the 'Additional information on the analytical method' (anMethInfo) must be constant (the same) for all records with the same 'Analytical method identification' (anMethRefId);</description>
<infoMessage>anMethRefCode, anMethCode, anMethText or anMethInfo is not constant for all records with the same anMethRefId;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-03-01</lastUpdate>
<checkedDataElements>
<dataElement>anMethRefId</dataElement>
<dataElement>anMethRefCode</dataElement>
<dataElement>anMethCode</dataElement>
<dataElement>anMethText</dataElement>
<dataElement>anMethInfo</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>anMethRefId</dataElement>
</forEach>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMethRefId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMethRefCode</dataElement>
<dataElement>anMethCode</dataElement>
<dataElement>anMethText</dataElement>
<dataElement>anMethInfo</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>constant</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR12</businessRuleCode>
<description>The 'Area of sampling' (sampArea) must be within the 'Country of sampling' (sampCountry);</description>
<infoMessage>sampArea is not within sampCountry;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampArea</dataElement>
<dataElement>sampCountry</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>or</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<catalogueAttribute>
<dataElement>sampArea</dataElement>
<attributeName>countryCode</attributeName>
</catalogueAttribute>
</operand>
<operator>isEqualTo</operator>
<operand>
<dataElement>sampCountry</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampCountry</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>XI</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampArea</dataElement>
</operand>
<operator>hasAsAncestor</operator>
<operand>
<catalogueTerm>
<termCode>UKN</termCode>
<hierarchyCode>NUTS</hierarchyCode>
</catalogueTerm>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR13</businessRuleCode>
<description>The 'Area of origin of the sample taken' (origArea) must be within the 'Country of origin of the sample taken' (origCountry);</description>
<infoMessage>origArea is not within origCountry;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>origArea</dataElement>
<dataElement>origCountry</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<catalogueAttribute>
<dataElement>origArea</dataElement>
<attributeName>countryCode</attributeName>
</catalogueAttribute>
</operand>
<operator>isEqualTo</operator>
<operand>
<dataElement>origCountry</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR14</businessRuleCode>
<description>The 'Area of processing of the sample taken' (procArea) must be within the 'Country of processing of the sample taken' (procCountry);</description>
<infoMessage>procArea is not within procCountry;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>procArea</dataElement>
<dataElement>procCountry</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<catalogueAttribute>
<dataElement>procArea</dataElement>
<attributeName>countryCode</attributeName>
</catalogueAttribute>
</operand>
<operator>isEqualTo</operator>
<operand>
<dataElement>procCountry</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR15</businessRuleCode>
<description>If in the 'Coded description of the matrix of the sample taken' the generic-term facet (sampMatCode.gen) is reported with the descriptor 'Other' (A07XE), then a text must be reported in the 'Text description of the matrix of the sample taken' (sampMatText);</description>
<infoMessage>sampMatText is missing, though mandatory if sampMatCode.gen is 'Other' (A07XE);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatCode.gen</dataElement>
<dataElement>sampMatText</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatCode.gen</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>A07XE</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatText</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR16</businessRuleCode>
<description>If in the 'Coded description of the analysed matrix' the generic-term facet’ (anMatCode.gen) is reported with the descriptor 'Other' (A07XE), then a text must be reported in the 'Text description of the matrix analysed' (anMatText);</description>
<infoMessage>anMatText is missing, though mandatory if anMatCode.gen is 'Other' (A07XE);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>anMatCode.gen</dataElement>
<dataElement>anMatText</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMatCode.gen</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>A07XE</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMatText</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR18</businessRuleCode>
<description>If the reported value in the 'Analytical method code' (anMethCode.base) is 'Classification not possible' (F001A), then a text must be reported in the 'Analytical method text' (anMethText);</description>
<infoMessage>anMethText is missing, though mandatory if anMethCode.base is 'Classification not possible' (F001A);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>anMethCode.base</dataElement>
<dataElement>anMethText</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMethCode.base</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>F001A</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMethText</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR19</businessRuleCode>
<description>The value in the data element 'Percentage of fat' (exprResPerc.fatPerc) must be expressed as a percentage and so be between '0' and '100' (e.g. '40' must be reported for 40 %);</description>
<infoMessage>exprResPerc.fatPerc is not between '0' and '100';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>exprResPerc.fatPerc</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.fatPerc</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.fatPerc</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>100</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR20</businessRuleCode>
<description>The value in the data element 'Percentage of moisture ' (exprResPerc.moistPerc) must be expressed as a percentage and so be between '0' and '100' (e.g. '40' must be reported for 40 %);</description>
<infoMessage>exprResPerc.moistPerc is not between '0' and '100';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>exprResPerc.moistPerc</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.moistPerc</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.moistPerc</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>100</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR21</businessRuleCode>
<description>The value in the data element 'Percentage of alcohol' (exprResPerc.alcoholPerc) must be expressed as a percentage and so be between '0' and '100' (e.g. '40' must be reported for 40 %);</description>
<infoMessage>exprResPerc.alcoholPerc is not between '0' and '100';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>exprResPerc.alcoholPerc</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.alcoholPerc</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.alcoholPerc</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>100</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR22</businessRuleCode>
<description>If the value in the 'Expression of result type' (exprResType) is 'Fat weight' (B003A), then a value should be reported in the 'Percentage of fat' (exprResPerc.fatPerc);</description>
<infoMessage>WARNING: exprResPerc.fatPerc is missing, though recommended if exprResType is 'Fat weight' (B003A);</infoMessage>
<infoType>warning</infoType>
<status>active</status>
<lastUpdate>2018-05-16</lastUpdate>
<checkedDataElements>
<dataElement>exprResPerc.fatPerc</dataElement>
<dataElement>exprResType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>B003A</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.fatPerc</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR23</businessRuleCode>
<description>If the value in the 'Expression of result type' (exprResType) is 'Dry matter' (B002A), then a value must be reported in the 'Percentage of moisture ' (exprResPerc.moistPerc);</description>
<infoMessage>exprResPerc.moistPerc is missing, though mandatory if exprResType is expressed on 'dry matter' basis;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-04-27</lastUpdate>
<checkedDataElements>
<dataElement>exprResPerc.moistPerc</dataElement>
<dataElement>exprResType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResType</dataElement>
</operand>
<operator>isInList</operator>
<operand>
<value>B002A</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>exprResPerc.moistPerc</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR24</businessRuleCode>
<description>If a 'Sampling unit size' (sampUnitSize) is reported, then a 'Sampling unit size unit' (sampUnitSizeUnit) must be reported;</description>
<infoMessage>sampUnitSizeUnit is missing, though sampUnitSize is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampUnitSize</dataElement>
<dataElement>sampUnitSizeUnit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampUnitSize</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampUnitSizeUnit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR25</businessRuleCode>
<description>If a 'Sample taken size' (sampSize) is reported, then a 'Sample taken size unit' (sampSizeUnit) must be reported;</description>
<infoMessage>sampSizeUnit is missing, though sampSize is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-09-07</lastUpdate>
<checkedDataElements>
<dataElement>sampSize</dataElement>
<dataElement>sampSizeUnit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampSize</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampSizeUnit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR26</businessRuleCode>
<description>If a 'Sample analysed portion size' (anPortSize) is reported, then a 'Sample analysed portion size unit' (anPortSizeUnit) must be reported;</description>
<infoMessage>anPortSizeUnit is missing, though anPortSize is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>anPortSize</dataElement>
<dataElement>anPortSizeUnit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anPortSize</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anPortSizeUnit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR27</businessRuleCode>
<description>If the value reported in 'Type of result' (resType) is different from 'Qualitative Value (Binary)' (BIN) (i.e. not a qualitative value), then a 'Result unit' (resUnit) must be reported;</description>
<infoMessage>resUnit is missing, though resType is not 'Qualitative Value (Binary)' (BIN);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-09-20</lastUpdate>
<checkedDataElements>
<dataElement>resUnit</dataElement>
<dataElement>resType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>BIN</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resUnit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR28</businessRuleCode>
<description>If the value reported in 'Type of result' (resType) is 'Qualitative Value (Binary)' (BIN) (i.e. a qualitative value), then a 'Result qualitative value' (resQualValue) must be reported;</description>
<infoMessage>resQualValue is missing, though resType is 'Qualitative Value (Binary)' (BIN);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resQualValue</dataElement>
<dataElement>resType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>BIN</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resQualValue</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR29</businessRuleCode>
<description>If a value is reported in at least one of the following data elements: 'Result LOD' (resLOD), 'Result LOQ' (resLOQ), 'Result lower limit of the working range' (resLLWR), 'Result upper limit of the working range' (resULWR), 'CC alpha' (CCalpha), 'CC beta' (CCbeta), 'Result value' (resVal), 'Result value uncertainty' (resValUncert), 'Result value uncertainty Standard deviation' (resValUncertSD), 'Limit for the result evaluation (Low limit)' (evalLowLimit), 'Limit for the result evaluation (High limit)' (evalHighLimit), then a 'Result unit' (resUnit) must be reported;</description>
<infoMessage>resUnit is missing, though at least one numeric data element (resLOD, resLOQ, resLLWR, resULWR, CCalpha, CCbeta, resVal, resValUncert, resValUncertSD, evalLowLimit, evalHighLimit) is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resUnit</dataElement>
<dataElement>resLOD</dataElement>
<dataElement>resLOQ</dataElement>
<dataElement>resLLWR</dataElement>
<dataElement>resULWR</dataElement>
<dataElement>CCalpha</dataElement>
<dataElement>CCbeta</dataElement>
<dataElement>resVal</dataElement>
<dataElement>resValUncert</dataElement>
<dataElement>resValUncertSD</dataElement>
<dataElement>evalLowLimit</dataElement>
<dataElement>evalHighLimit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>or</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOQ</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLLWR</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resULWR</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCalpha</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCbeta</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resValUncert</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resValUncertSD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalHighLimit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resUnit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR30</businessRuleCode>
<description>If a value is reported in 'Limit for the result evaluation ' (evalLowLimit), then a 'Type of limit for the result evaluation' (evalLimitType) must be reported;</description>
<infoMessage>evalLimitType is missing, though evalLowLimit is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>evalLimitType</dataElement>
<dataElement>evalLowLimit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLimitType</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR31</businessRuleCode>
<description>If the value in the data element ‘Type of limit for the result evaluation’ (evalLimitType) is different from 'Maximum limit (ML)' (W001A), and a value is reported in 'Limit for the result evaluation (High limit)' (evalHighLimit), then a 'Limit for the result evaluation ' (evalLowLimit) must be reported;</description>
<infoMessage>evalLowLimit is missing, though evalHighLimit is reported and evalLimitType is not 'Maximum limit (ML)';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-04-24</lastUpdate>
<checkedDataElements>
<dataElement>evalLowLimit</dataElement>
<dataElement>evalHighLimit</dataElement>
<dataElement>evalLimitType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLimitType</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>W001A</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalHighLimit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR32</businessRuleCode>
<description>The value reported in 'Limit for the result evaluation (High limit)' (evalHighLimit) must be greater than the value reported in 'Limit for the result evaluation (Low limit)' (evalLowLimit);</description>
<infoMessage>evalHighLimit is not greater than evalLowLimit;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>evalLowLimit</dataElement>
<dataElement>evalHighLimit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalHighLimit</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR33</businessRuleCode>
<description>If 'Result value' (resVal) is greater than 'Limit for the result evaluation ' (evalLowLimit), then the value in 'Evaluation of the result' (evalCode) must be different from 'below or equal to maximum permissible quantities' (J002A);</description>
<infoMessage>evalCode is 'below or equal to maximum permissible quantities' (J002A), though resVal is greater than evalLowLimit;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>evalCode</dataElement>
<dataElement>resVal</dataElement>
<dataElement>evalLowLimit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalCode</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>J002A</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR34</businessRuleCode>
<description>If 'Evaluation of the result' (evalCode) is either 'above maximum permissible quantities' (J003A) or 'Compliant due to measurement uncertainty' (J031A), and the value in 'Type of limit for the result evaluation' (evalLimitType) is different from 'Minimum Required Performance Limit (MRPL)' (W005A), then 'Result value' (resVal) must be greater than 'Limit for the result evaluation' (evalLowLimit);</description>
<infoMessage>resVal is lower than evalLowLimit, though evalCode is either 'above maximum permissible quantities' (J003A) or 'Compliant due to measurement uncertainty' (J031A);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2018-06-12</lastUpdate>
<checkedDataElements>
<dataElement>resVal</dataElement>
<dataElement>evalCode</dataElement>
<dataElement>evalLowLimit</dataElement>
<dataElement>evalLimitType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalCode</dataElement>
</operand>
<operator>isInList</operator>
<operand>
<value>J003A</value>
<value>J031A</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLimitType</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>W005A</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR34a</businessRuleCode>
<description>If 'Evaluation of the result' (evalCode) is either 'above maximum permissible quantities' (J003A) or 'Compliant due to measurement uncertainty' (J031A), and the value in 'Type of limit for the result evaluation' (evalLimitType) is equal to 'Minimum Required Performance Limit (MRPL)' (W005A) then 'Result value' (resVal) must be greater than or equal to 'Limit for the result evaluation' (evalLowLimit);</description>
<infoMessage>resVal is lower than evalLowLimit, though evalCode is either 'above maximum permissible quantities' (J003A) or 'Compliant due to measurement uncertainty' (J031A);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2018-06-12</lastUpdate>
<checkedDataElements>
<dataElement>resVal</dataElement>
<dataElement>evalCode</dataElement>
<dataElement>evalLowLimit</dataElement>
<dataElement>evalLimitType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalCode</dataElement>
</operand>
<operator>isInList</operator>
<operand>
<value>J003A</value>
<value>J031A</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalLimitType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>W005A</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR35</businessRuleCode>
<description>If 'Evaluation of the result' (evalCode) is 'below or equal to maximum permissible quantities' (J002A), then 'Result value' (resVal) must be less than or equal to 'Limit for the result evaluation' (evalLowLimit);</description>
<infoMessage>resVal is greater than evalLowLimit, though evalCode is 'below or equal to maximum permissible quantities' (J002A);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>evalCode</dataElement>
<dataElement>resVal</dataElement>
<dataElement>evalLowLimit</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>evalCode</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>J002A</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<dataElement>evalLowLimit</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR36</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Non Detected Value (below LOD)' (LOD), then a value must be reported in the data element 'Result LOD' (resLOD);</description>
<infoMessage>resLOD is missing, though resType is 'Non Detected Value (below LOD)' (LOD);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resLOD</dataElement>
<dataElement>resType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>LOD</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR37</businessRuleCode>
<description>The value in 'Result LOD' (resLOD) must be less than or equal to the value in 'Result LOQ' (resLOQ);</description>
<infoMessage>resLOD is not less than or equal to resLOQ;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resLOD</dataElement>
<dataElement>resLOQ</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<dataElement>resLOQ</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR38</businessRuleCode>
<description>The value in 'Result LOD' (resLOD) must be greater than '0';</description>
<infoMessage>resLOD is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resLOD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOD</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR39</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Non Quantified Value (below LOQ)' (LOQ), then a value must be reported in the data element 'Result LOQ' (resLOQ);</description>
<infoMessage>resLOQ is missing, though resType is 'Non Quantified Value (below LOQ)' (LOQ);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2020-06-12</lastUpdate>
<checkedDataElements>
<dataElement>resLOQ</dataElement>
<dataElement>resType</dataElement>
<dataElement>resInfo.notSummed</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>LOQ</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resInfo.notSummed</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>Y</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOQ</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR40</businessRuleCode>
<description>The value in 'Result LOQ' (resLOQ) must be greater than 0;</description>
<infoMessage>resLOQ is not greater than 0;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resLOQ</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resLOQ</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR41</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Value below CCalpha (below CCα)' (CCA), then a value must be reported in the data element 'CC alpha' (CCalpha) (unvalidated methods excluded);</description>
<infoMessage>CCalpha is missing, though resType is 'Value below CCalpha (below CCα)' (CCA);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2018-08-01</lastUpdate>
<checkedDataElements>
<dataElement>CCalpha</dataElement>
<dataElement>resType</dataElement>
<dataElement>accredProc</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>accredProc</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>V999A</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>CCA</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCalpha</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR42</businessRuleCode>
<description>The value in 'CC alpha' (CCalpha) must be less than the value in 'CC beta' (CCbeta);</description>
<infoMessage>WARNING: CCalpha is not less than CCbeta;</infoMessage>
<infoType>warning</infoType>
<status>active</status>
<lastUpdate>2017-11-16</lastUpdate>
<checkedDataElements>
<dataElement>CCalpha</dataElement>
<dataElement>CCbeta</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCalpha</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<dataElement>CCbeta</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR43</businessRuleCode>
<description>The value in 'CC alpha' (CCalpha) must be greater than '0';</description>
<infoMessage>CCalpha is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>CCalpha</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCalpha</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR44</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Value below CCbeta (below CCβ)' (CCB), then a value must be reported in the data element 'CC beta' (CCbeta) (unvalidated methods excluded);</description>
<infoMessage>CCbeta is missing, though resType is 'Value below CCbeta (below CCβ)' (CCB);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2018-08-01</lastUpdate>
<checkedDataElements>
<dataElement>CCbeta</dataElement>
<dataElement>resType</dataElement>
<dataElement>accredProc</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>accredProc</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>V999A</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>CCB</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCbeta</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR45</businessRuleCode>
<description>The value in 'CC beta' (CCbeta) must be greater than '0';</description>
<infoMessage>CCbeta is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>CCbeta</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>CCbeta</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR46</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Numerical Value' (VAL), then a value must be reported in the data element 'Result value' (resVal);</description>
<infoMessage>resVal is missing, though resType is 'Numerical Value' (VAL);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resVal</dataElement>
<dataElement>resType</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>VAL</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR47</businessRuleCode>
<description>If the value in the data element 'Type of result' (resType) is 'Non Detected Value (below LOD)' (LOD), then the data element 'Result value' (resVal) must be empty;</description>
<infoMessage>resVal is reported, though resType is 'Non Detected Value (below LOD)' (LOD);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resType</dataElement>
<dataElement>resVal</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resType</dataElement>
</operand>
<operator>isEqualTo</operator>
<operand>
<value>LOD</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR48</businessRuleCode>
<description>The value in 'Result value' (resVal) must be greater than '0';</description>
<infoMessage>resVal is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resVal</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR49</businessRuleCode>
<description>The value in 'Result value recovery rate' (resValRec) must be greater than '0';</description>
<infoMessage>resValRec is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resValRec</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resValRec</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR50</businessRuleCode>
<description>The value in 'Result value uncertainty Standard deviation' (resValUncertSD) must be greater than '0';</description>
<infoMessage>resValUncertSD is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resValUncertSD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resValUncertSD</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR51</businessRuleCode>
<description>The value in 'Result value uncertainty' (resValUncert) must be greater than '0';</description>
<infoMessage>resValUncert is not greater than '0';</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>resValUncert</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resValUncert</dataElement>
</operand>
<operator>isGreaterThan</operator>
<operand>
<value>0</value>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR53</businessRuleCode>
<description>The date of the slaughtering, reported in 'Day of slaughtering' (sampEventInfo.slaughterD), 'Month of slaughtering' (sampEventInfo.slaughterM), and 'Year of slaughtering' (sampEventInfo.slaughterY), must be a valid date;</description>
<infoMessage>The combination of values in sampEventInfo.slaughterD, sampEventInfo.slaughterM, and sampEventInfo.slaughterY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterD</dataElement>
<dataElement>sampEventInfo.slaughterM</dataElement>
<dataElement>sampEventInfo.slaughterY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampEventInfo.slaughterD</day>
<month>sampEventInfo.slaughterM</month>
<year>sampEventInfo.slaughterY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR54</businessRuleCode>
<description>The date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY), must be a valid date;</description>
<infoMessage>The combination of values in sampD, sampM, and sampY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR55</businessRuleCode>
<description>The date of the arrival in the laboratory, reported in 'Arrival Day' (sampInfo.arrivalD), 'Arrival Month' (sampInfo.arrivalM), and 'Arrival Year' (sampInfo.arrivalY), must be a valid date;</description>
<infoMessage>The combination of values in sampInfo.arrivalD, sampInfo.arrivalM, and sampInfo.arrivalY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampInfo.arrivalD</dataElement>
<dataElement>sampInfo.arrivalM</dataElement>
<dataElement>sampInfo.arrivalY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampInfo.arrivalD</day>
<month>sampInfo.arrivalM</month>
<year>sampInfo.arrivalY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR56</businessRuleCode>
<description>The date of the production, reported in 'Day of production' (sampMatInfo.prodD), 'Month of production' (sampMatInfo.prodM), and 'Year of production' (sampMatInfo.prodY), must be a valid date;</description>
<infoMessage>The combination of values in sampMatInfo.prodD, sampMatInfo.prodM, and sampMatInfo.prodY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodD</dataElement>
<dataElement>sampMatInfo.prodM</dataElement>
<dataElement>sampMatInfo.prodY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampMatInfo.prodD</day>
<month>sampMatInfo.prodM</month>
<year>sampMatInfo.prodY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR57</businessRuleCode>
<description>The date of the expiry, reported in 'Day of expiry' (sampMatInfo.expiryD), 'Month of expiry' (sampMatInfo.expiryM), and 'Year of expiry' (sampMatInfo.expiryY), must be a valid date;</description>
<infoMessage>The combination of values in sampMatInfo.expiryD, sampMatInfo.expiryM, and sampMatInfo.expiryY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.expiryD</dataElement>
<dataElement>sampMatInfo.expiryM</dataElement>
<dataElement>sampMatInfo.expiryY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampMatInfo.expiryD</day>
<month>sampMatInfo.expiryM</month>
<year>sampMatInfo.expiryY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR58</businessRuleCode>
<description>The date of the analysis, reported in 'Day of analysis' (analysisD), 'Month of analysis' (analysisM), and 'Year of analysis' (analysisY), must be a valid date;</description>
<infoMessage>The combination of values in analysisD, analysisM, and analysisY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>analysisD</dataElement>
<dataElement>analysisM</dataElement>
<dataElement>analysisY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>analysisD</day>
<month>analysisM</month>
<year>analysisY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR60</businessRuleCode>
<description>The date of the isolation, reported in 'Isolation day' (isolInfo.isolD), 'Isolation month' (isolInfo.isolM), and 'Isolation year' (isolInfo.isolY), must be a valid date;</description>
<infoMessage>The combination of values in isolInfo.isolD, isolInfo.isolM, and isolInfo.isolY is not a valid date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>isolInfo.isolD</dataElement>
<dataElement>isolInfo.isolM</dataElement>
<dataElement>isolInfo.isolY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>isolInfo.isolD</day>
<month>isolInfo.isolM</month>
<year>isolInfo.isolY</year>
</date>
</operand>
<operator>is</operator>
<operand>
<constant>validDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR61</businessRuleCode>
<description>The reporting year, reported in 'Reporting year' (repYear), must be less than or equal to the current year;</description>
<infoMessage>The reporting year, reported in repYear, is greater than the current year;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>repYear</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>repYear</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentYear</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR62</businessRuleCode>
<description>The date of the slaughtering, reported in 'Day of slaughtering' (sampEventInfo.slaughterD), 'Month of slaughtering' (sampEventInfo.slaughterM), and 'Year of slaughtering' (sampEventInfo.slaughterY), must be less than or equal to the current date;</description>
<infoMessage>The date of the slaughtering, reported in sampEventInfo.slaughterD, sampEventInfo.slaughterM, and sampEventInfo.slaughterY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterD</dataElement>
<dataElement>sampEventInfo.slaughterM</dataElement>
<dataElement>sampEventInfo.slaughterY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampEventInfo.slaughterD</day>
<month>sampEventInfo.slaughterM</month>
<year>sampEventInfo.slaughterY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR63</businessRuleCode>
<description>The date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY), must be less than or equal to the current date;</description>
<infoMessage>The date of the sampling, reported in sampD, sampM, and sampY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR64</businessRuleCode>
<description>The date of the arrival in the laboratory, reported in 'Arrival Day' (sampInfo.arrivalD), 'Arrival Month' (sampInfo.arrivalM), and 'Arrival Year' (sampInfo.arrivalY), must be less than or equal to the current date;</description>
<infoMessage>The date of the arrival in the laboratory, reported in sampInfo.arrivalD, sampInfo.arrivalM, and sampInfo.arrivalY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampInfo.arrivalD</dataElement>
<dataElement>sampInfo.arrivalM</dataElement>
<dataElement>sampInfo.arrivalY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampInfo.arrivalD</day>
<month>sampInfo.arrivalM</month>
<year>sampInfo.arrivalY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR65</businessRuleCode>
<description>The date of the production, reported in 'Day of production' (sampMatInfo.prodD), 'Month of production' (sampMatInfo.prodM), and 'Year of production' (sampMatInfo.prodY), must be less than or equal to the current date;</description>
<infoMessage>The date of the production, reported in sampMatInfo.prodD, sampMatInfo.prodM, and sampMatInfo.prodY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodD</dataElement>
<dataElement>sampMatInfo.prodM</dataElement>
<dataElement>sampMatInfo.prodY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampMatInfo.prodD</day>
<month>sampMatInfo.prodM</month>
<year>sampMatInfo.prodY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR67</businessRuleCode>
<description>The date of the analysis, reported in 'Day of analysis' (analysisD), 'Month of analysis' (analysisM), and 'Year of analysis' (analysisY), must be less than or equal to the current date;</description>
<infoMessage>The date of the analysis, reported in analysisD, analysisM, and analysisY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>analysisD</dataElement>
<dataElement>analysisM</dataElement>
<dataElement>analysisY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>analysisD</day>
<month>analysisM</month>
<year>analysisY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR69</businessRuleCode>
<description>The date of the isolation, reported in 'Isolation day' (isolInfo.isolD), 'Isolation month' (isolInfo.isolM), and 'Isolation year' (isolInfo.isolY), must be less than or equal to the current date;</description>
<infoMessage>The date of the isolation, reported in isolInfo.isolD, isolInfo.isolM, and isolInfo.isolY, is not less than or equal to the current date;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>isolInfo.isolD</dataElement>
<dataElement>isolInfo.isolM</dataElement>
<dataElement>isolInfo.isolY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>isolInfo.isolD</day>
<month>isolInfo.isolM</month>
<year>isolInfo.isolY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<constant>currentDate</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR70</businessRuleCode>
<description>The 'Day of slaughtering' (sampEventInfo.slaughterD) must be between 1 and 31;</description>
<infoMessage>sampEventInfo.slaughterD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR71</businessRuleCode>
<description>The 'Day of sampling' (sampD) must be between 1 and 31;</description>
<infoMessage>sampD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR72</businessRuleCode>
<description>The 'Arrival Day' (sampInfo.arrivalD) must be between 1 and 31;</description>
<infoMessage>sampInfo.arrivalD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampInfo.arrivalD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR73</businessRuleCode>
<description>The 'Day of production' (sampMatInfo.prodD) must be between 1 and 31;</description>
<infoMessage>sampMatInfo.prodD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR74</businessRuleCode>
<description>The 'Day of expiry' (sampMatInfo.expiryD) must be between 1 and 31;</description>
<infoMessage>sampMatInfo.expiryD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.expiryD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR75</businessRuleCode>
<description>The 'Day of analysis' (analysisD) must be between 1 and 31;</description>
<infoMessage>analysisD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>analysisD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR77</businessRuleCode>
<description>The 'Isolation day' (isolInfo.isolD) must be between 1 and 31;</description>
<infoMessage>isolInfo.isolD is not between 1 and 31;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>isolInfo.isolD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolD</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolD</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>31</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR78</businessRuleCode>
<description>The 'Month of slaughtering' (sampEventInfo.slaughterM) must be between 1 and 12;</description>
<infoMessage>sampEventInfo.slaughterM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR79</businessRuleCode>
<description>The 'Month of sampling' (sampM) must be between 1 and 12;</description>
<infoMessage>sampM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR80</businessRuleCode>
<description>The 'Arrival Month' (sampInfo.arrivalM) must be between 1 and 12;</description>
<infoMessage>sampInfo.arrivalM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampInfo.arrivalM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR81</businessRuleCode>
<description>The 'Month of production' (sampMatInfo.prodM) must be between 1 and 12;</description>
<infoMessage>sampMatInfo.prodM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR82</businessRuleCode>
<description>The 'Month of expiry' (sampMatInfo.expiryM) must be between 1 and 12;</description>
<infoMessage>sampMatInfo.expiryM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.expiryM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR83</businessRuleCode>
<description>The 'Month of analysis' (analysisM) must be between 1 and 12;</description>
<infoMessage>analysisM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>analysisM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR85</businessRuleCode>
<description>The 'Isolation month' (isolInfo.isolM) must be between 1 and 12;</description>
<infoMessage>isolInfo.isolM is not between 1 and 12;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>isolInfo.isolM</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<logicalConnector>and</logicalConnector>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolM</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<value>1</value>
</operand>
</simpleExpression>
</logicalExpression>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolM</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<value>12</value>
</operand>
</simpleExpression>
</logicalExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR86</businessRuleCode>
<description>If the 'Day of slaughtering' (sampEventInfo.slaughterD) is reported, then the 'Month of slaughtering' (sampEventInfo.slaughterM) must be reported;</description>
<infoMessage>sampEventInfo.slaughterM is missing, though sampEventInfo.slaughterD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterM</dataElement>
<dataElement>sampEventInfo.slaughterD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampEventInfo.slaughterM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR87</businessRuleCode>
<description>If the 'Day of sampling' (sampD) is reported, then the 'Month of sampling' (sampM) must be reported;</description>
<infoMessage>sampM is missing, though sampD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampM</dataElement>
<dataElement>sampD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR88</businessRuleCode>
<description>If the 'Arrival Day' (sampInfo.arrivalD) is reported, then the 'Arrival Month' (sampInfo.arrivalM) must be reported;</description>
<infoMessage>sampInfo.arrivalM is missing, though sampInfo.arrivalD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampInfo.arrivalM</dataElement>
<dataElement>sampInfo.arrivalD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampInfo.arrivalM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR89</businessRuleCode>
<description>If the 'Day of production' (sampMatInfo.prodD) is reported, then the 'Month of production' (sampMatInfo.prodM) must be reported;</description>
<infoMessage>sampMatInfo.prodM is missing, though sampMatInfo.prodD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodM</dataElement>
<dataElement>sampMatInfo.prodD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.prodM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR90</businessRuleCode>
<description>If the 'Day of expiry' (sampMatInfo.expiryD) is reported, then the 'Month of expiry' (sampMatInfo.expiryM) must be reported;</description>
<infoMessage>sampMatInfo.expiryM is missing, though sampMatInfo.expiryD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.expiryM</dataElement>
<dataElement>sampMatInfo.expiryD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampMatInfo.expiryM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR91</businessRuleCode>
<description>If the 'Day of analysis' (analysisD) is reported, then the 'Month of analysis' (analysisM) must be reported;</description>
<infoMessage>analysisM is missing, though analysisD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>analysisM</dataElement>
<dataElement>analysisD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>analysisM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR92</businessRuleCode>
<description>If the 'Completion day of analysis' (sampAnInfo.compD) is reported, then the 'Completion month of analysis' (sampAnInfo.compM) must be reported;</description>
<infoMessage>sampAnInfo.compM is missing, though sampAnInfo.compD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampAnInfo.compM</dataElement>
<dataElement>sampAnInfo.compD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampAnInfo.compD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampAnInfo.compM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR93</businessRuleCode>
<description>If the 'Isolation day' (isolInfo.isolD) is reported, then the 'Isolation month' (isolInfo.isolM) must be reported;</description>
<infoMessage>isolInfo.isolM is missing, though isolInfo.isolD is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>isolInfo.isolM</dataElement>
<dataElement>isolInfo.isolD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolD</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>isolInfo.isolM</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR94</businessRuleCode>
<description>The date of the production, reported in 'Day of production' (sampMatInfo.prodD), 'Month of production' (sampMatInfo.prodM), and 'Year of production' (sampMatInfo.prodY), must be less than or equal to the date of the expiry, reported in 'Day of expiry' (sampMatInfo.expiryD), 'Month of expiry' (sampMatInfo.expiryM), and 'Year of expiry' (sampMatInfo.expiryY);</description>
<infoMessage>The date of the production, reported in sampMatInfo.prodD, sampMatInfo.prodM, and sampMatInfo.prodY, is not less than or equal to the date of the expiry, reported in sampMatInfo.expiryD, sampMatInfo.expiryM, and sampMatInfo.expiryY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodD</dataElement>
<dataElement>sampMatInfo.prodM</dataElement>
<dataElement>sampMatInfo.prodY</dataElement>
<dataElement>sampMatInfo.expiryD</dataElement>
<dataElement>sampMatInfo.expiryM</dataElement>
<dataElement>sampMatInfo.expiryY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampMatInfo.prodD</day>
<month>sampMatInfo.prodM</month>
<year>sampMatInfo.prodY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<date>
<day>sampMatInfo.expiryD</day>
<month>sampMatInfo.expiryM</month>
<year>sampMatInfo.expiryY</year>
</date>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR95</businessRuleCode>
<description>The date of the production, reported in 'Day of production' (sampMatInfo.prodD), 'Month of production' (sampMatInfo.prodM), and 'Year of production' (sampMatInfo.prodY), must be less than or equal to the date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY);</description>
<infoMessage>The date of the production, reported in sampMatInfo.prodD, sampMatInfo.prodM, and sampMatInfo.prodY, is not less than or equal to the date of the sampling, reported in sampD, sampM, and sampY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampMatInfo.prodD</dataElement>
<dataElement>sampMatInfo.prodM</dataElement>
<dataElement>sampMatInfo.prodY</dataElement>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampMatInfo.prodD</day>
<month>sampMatInfo.prodM</month>
<year>sampMatInfo.prodY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR97</businessRuleCode>
<description>The date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY), must be less than or equal to the date of the analysis, reported in 'Day of analysis' (analysisD), 'Month of analysis' (analysisM), and 'Year of analysis' (analysisY);</description>
<infoMessage>The date of the sampling, reported in sampD, sampM, and sampY, is not less than or equal to the date of the analysis, reported in analysisD, analysisM, and analysisY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
<dataElement>analysisD</dataElement>
<dataElement>analysisM</dataElement>
<dataElement>analysisY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<date>
<day>analysisD</day>
<month>analysisM</month>
<year>analysisY</year>
</date>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR97b</businessRuleCode>
<description>The date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY), must be less than or equal to the date of the analysis, reported in 'Day of analysis' (analysisD), 'Month of analysis' (analysisM), and 'Year of analysis' (analysisY);</description>
<infoMessage>The date of the sampling, reported in sampD, sampM, and sampY, is not less than or equal to the date of the analysis, reported in analysisD, analysisM, and analysisY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampY</dataElement>
<dataElement>analysisY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampY</dataElement>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<dataElement>analysisY</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR99</businessRuleCode>
<description>The date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY), must be less than or equal to the date of the isolation, reported in 'Isolation day' (isolInfo.isolD), 'Isolation month' (isolInfo.isolM), and 'Isolation year' (isolInfo.isolY);</description>
<infoMessage>The date of the sampling, reported in sampD, sampM, and sampY, is not less than or equal to the date of the isolation, reported in isolInfo.isolD, isolInfo.isolM, and isolInfo.isolY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
<dataElement>isolInfo.isolD</dataElement>
<dataElement>isolInfo.isolM</dataElement>
<dataElement>isolInfo.isolY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<date>
<day>isolInfo.isolD</day>
<month>isolInfo.isolM</month>
<year>isolInfo.isolY</year>
</date>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR100</businessRuleCode>
<description>The date of the slaughtering, reported in 'Day of slaughtering' (sampEventInfo.slaughterD), 'Month of slaughtering' (sampEventInfo.slaughterM), must be less than or equal to the date of the sampling, reported in 'Day of sampling' (sampD), 'Month of sampling' (sampM), and 'Year of sampling' (sampY);</description>
<infoMessage>The date of the slaughtering, reported in sampEventInfo.slaughterD, sampEventInfo.slaughterM, and sampEventInfo.slaughterY, is not less than or equal to the date of the sampling, reported in sampD, sampM, and sampY;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2014-08-08</lastUpdate>
<checkedDataElements>
<dataElement>sampEventInfo.slaughterD</dataElement>
<dataElement>sampEventInfo.slaughterM</dataElement>
<dataElement>sampEventInfo.slaughterY</dataElement>
<dataElement>sampD</dataElement>
<dataElement>sampM</dataElement>
<dataElement>sampY</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<date>
<day>sampEventInfo.slaughterD</day>
<month>sampEventInfo.slaughterM</month>
<year>sampEventInfo.slaughterY</year>
</date>
</operand>
<operator>isLessThanOrEqualTo</operator>
<operand>
<date>
<day>sampD</day>
<month>sampM</month>
<year>sampY</year>
</date>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR101</businessRuleCode>
<description>If the value in the data element 'Coded description of the parameter' (paramCode.base) is different from 'Not in list' (RF-XXXX-XXX-XXX), then the combination of values in the data elements 'Coded description of the parameter' (paramCode.base), 'Sample taken identification code' (sampId), 'Sample analysed identification code' (sampAnId), and 'Sample analysed portion sequence' (anPortSeq) must be unique, i.e only one result per parameter for each sample analysed portion per sample analysed;</description>
<infoMessage>More than one paramCode per sample analysed portion for one sample analysed is reported, though paramCode is different from 'Not in list' (RF-XXXX-XXX-XXX);</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-12-01</lastUpdate>
<checkedDataElements>
<dataElement>paramCode.base</dataElement>
<dataElement>paramCode</dataElement>
<dataElement>sampId</dataElement>
<dataElement>sampAnId</dataElement>
<dataElement>anPortSeq</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysDataCollection</systemVariable>
<systemVariable>sysOrganisation</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<forEach>
<dataElement>paramCode</dataElement>
<dataElement>sampId</dataElement>
<dataElement>sampAnId</dataElement>
<dataElement>anPortSeq</dataElement>
</forEach>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>paramCode.base</dataElement>
</operand>
<operator>isNotEqualTo</operator>
<operand>
<value>RF-XXXX-XXX-XXX</value>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>paramCode</dataElement>
<dataElement>sampId</dataElement>
<dataElement>sampAnId</dataElement>
<dataElement>anPortSeq</dataElement>
</operand>
<operator>is</operator>
<operand>
<constant>unique</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR102</businessRuleCode>
<description>The value in the data element 'Result value' (resVal) must be greater than or equal to the value in the data element 'Result LOD' (resLOD);</description>
<infoMessage>resVal is not greater than or equal to resLOD;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2017-03-20</lastUpdate>
<checkedDataElements>
<dataElement>resVal</dataElement>
<dataElement>resLOD</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>yes</ignoreNull>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>resVal</dataElement>
</operand>
<operator>isGreaterThanOrEqualTo</operator>
<operand>
<dataElement>resLOD</dataElement>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
<businessRule>
<businessRuleCode>GBR103</businessRuleCode>
<description>If the value in 'Coded description of the analysed matrix' (anMatCode) is reported, then the value in sampAnId should be reported;</description>
<infoMessage>sampAnId is missing, though anMatCode is reported;</infoMessage>
<infoType>error</infoType>
<status>active</status>
<lastUpdate>2019-03-11</lastUpdate>
<checkedDataElements>
<dataElement>sampAnId</dataElement>
<dataElement>anMatCode</dataElement>
</checkedDataElements>
<appliesTo>
<systemVariable>sysRecord</systemVariable>
</appliesTo>
<ignoreNull>no</ignoreNull>
<condition>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>anMatCode</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</condition>
<verify>
<logicalExpression>
<simpleExpression>
<operand>
<dataElement>sampAnId</dataElement>
</operand>
<operator>isNot</operator>
<operand>
<constant>null</constant>
</operand>
</simpleExpression>
</logicalExpression>
</verify>
</businessRule>
</businessRulesList>
</businessRuleSet>