while($file=~m/<\?CLG\.MDFO[^>]+?ID="O(.+?)"[^>]+?IDREF="C(.+?)"[^>]+?>(.+?)<\?CLG\.MDFC[^>]+?ID="C\1"[^>]+?IDREF="O\2"[^>]+?>/msgi) { my $mdfomdfc=$&; my $ln = line($`); if($mdfomdfc=~m/<\?CLG\.MDFO[^>]+>\n?<([A-Z.]+)[ ]?.+?>\n?(.+?)\n?<\/(\1)>\n?(<\?.+?\?>)?\n?<\?CLG\.MDFC[^>]+>/msgi) { my $stag = $1; my $etag = $3; if($stag ne $etag) {print FOUT "
$path: Warning: ".$warn++.": Line: $ln \ Check: MDFO tag is placed before <$stag tag, the MDFC tag should close after the same <$stag tag.
";} } } ####
Article 5
Recovery of costs
1.
All costs resulting from issuing the accompanying documents pursuant to Article 2(2) shall be borne by the food business operator responsible for the consignment or its representative.
2.
All costs related to official measures taken by the competent authorities as regards non-compliant consignments shall be borne by the food business operator responsible for the consignment or its representative.