Skip to content

Commit

Permalink
fields: Change context on constraint for opening date (TEDEFO-2649)
Browse files Browse the repository at this point in the history
This ensures the check for the presence of the field is fired even if
cac:OpenTenderEvent is not present.

Add information on opening event in some notice examples where it was
missing, and update affected validation reports.
  • Loading branch information
bertrand-lorentz committed Sep 22, 2023
1 parent 9c6db79 commit 983c826
Show file tree
Hide file tree
Showing 18 changed files with 183 additions and 97 deletions.
7 changes: 7 additions & 0 deletions examples/notices/change-cn_24_cumbria_suppliers.xml
Original file line number Diff line number Diff line change
Expand Up @@ -398,6 +398,13 @@
<cbc:EndDate>2020-05-11+01:00</cbc:EndDate>
<cbc:EndTime>10:00:00+01:00</cbc:EndTime>
</cac:TenderSubmissionDeadlinePeriod>
<cac:OpenTenderEvent>
<cbc:OccurrenceDate>2020-05-11+01:00</cbc:OccurrenceDate>
<cbc:OccurrenceTime>10:00:00+01:00</cbc:OccurrenceTime>
<cac:OccurenceLocation>
<cbc:Description languageID="ENG">Location of the opening.</cbc:Description>
</cac:OccurenceLocation>
</cac:OpenTenderEvent>
<cac:AuctionTerms>
<cbc:AuctionConstraintIndicator>false</cbc:AuctionConstraintIndicator>
</cac:AuctionTerms>
Expand Down
7 changes: 7 additions & 0 deletions examples/notices/change-cn_24_void.xml
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,13 @@
<cbc:EndDate>2020-02-04+02:00</cbc:EndDate>
<cbc:EndTime>10:00:00+02:00</cbc:EndTime>
</cac:TenderSubmissionDeadlinePeriod>
<cac:OpenTenderEvent>
<cbc:OccurrenceDate>2020-02-04+02:00</cbc:OccurrenceDate>
<cbc:OccurrenceTime>10:00:00+02:00</cbc:OccurrenceTime>
<cac:OccurenceLocation>
<cbc:Description languageID="ENG">Premises of the Publications Office in LUXEMBOURG.</cbc:Description>
</cac:OccurenceLocation>
</cac:OpenTenderEvent>
<cac:AuctionTerms>
<cbc:AuctionConstraintIndicator>false</cbc:AuctionConstraintIndicator>
</cac:AuctionTerms>
Expand Down
7 changes: 7 additions & 0 deletions examples/notices/cn_24_cumbria.xml
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,13 @@
<cbc:EndDate>2020-05-11+01:00</cbc:EndDate>
<cbc:EndTime>10:00:00+01:00</cbc:EndTime>
</cac:TenderSubmissionDeadlinePeriod>
<cac:OpenTenderEvent>
<cbc:OccurrenceDate>2020-05-11+01:00</cbc:OccurrenceDate>
<cbc:OccurrenceTime>10:00:00+01:00</cbc:OccurrenceTime>
<cac:OccurenceLocation>
<cbc:Description languageID="ENG">Location of the opening.</cbc:Description>
</cac:OccurenceLocation>
</cac:OpenTenderEvent>
<cac:AuctionTerms>
<cbc:AuctionConstraintIndicator>false</cbc:AuctionConstraintIndicator>
</cac:AuctionTerms>
Expand Down
7 changes: 7 additions & 0 deletions examples/notices/cn_24_minimal.xml
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,13 @@ But with the minimal amount of information while still valid
<cbc:EndDate>2020-02-04+02:00</cbc:EndDate>
<cbc:EndTime>10:00:00+02:00</cbc:EndTime>
</cac:TenderSubmissionDeadlinePeriod>
<cac:OpenTenderEvent>
<cbc:OccurrenceDate>2020-02-04+02:00</cbc:OccurrenceDate>
<cbc:OccurrenceTime>10:00:00+02:00</cbc:OccurrenceTime>
<cac:OccurenceLocation>
<cbc:Description languageID="ENG">Premises of the Publications Office in LUXEMBOURG.</cbc:Description>
</cac:OccurenceLocation>
</cac:OpenTenderEvent>
<cac:AuctionTerms>
<cbc:AuctionConstraintIndicator>false</cbc:AuctionConstraintIndicator>
</cac:AuctionTerms>
Expand Down
2 changes: 1 addition & 1 deletion examples/reports/INVALID_can_24_stage-2.svrl
Original file line number Diff line number Diff line change
Expand Up @@ -578,7 +578,7 @@
<svrl:failed-assert id="BR-BT-00506-0052"
location="/can:ContractAwardNotice/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:Contact/cbc:ElectronicMail"
role="ERROR"
test="matches(normalize-space(.),'^[a-zA-Z0-9][a-zA-Z0-9._%+-]*@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}$')">
test="matches(normalize-space(.),'^[A-Za-z0-9!#$%&amp;''*+/=?_-]+(\.[A-Za-z0-9!#$%&amp;''*+/=?_-]+)*@([A-Za-z0-9]([A-Za-z0-9_-]*[A-Za-z0-9])?\.)+([A-Za-z]{2,})$')">
<svrl:text>rule|text|BR-BT-00506-0052</svrl:text>
</svrl:failed-assert>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:PostalAddress/cbc:CityName"/>
Expand Down
20 changes: 20 additions & 0 deletions examples/reports/INVALID_cn_24_multiple.svrl
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,27 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:TenderRecipientParty/cac:PartyIdentification/cbc:ID"/>
<svrl:active-pattern id="EFORMS-validation-stage-4"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:failed-assert id="BR-BT-00132-0022"
location="/cn:ContractNotice/cac:ProcurementProjectLot[1]/cac:TenderingProcess"
role="ERROR"
test="count(cac:OpenTenderEvent/cbc:OccurrenceDate) &gt; 0 or not(../../cac:TenderingProcess/cbc:ProcedureCode/normalize-space(text()) = 'open')">
<svrl:text>rule|text|BR-BT-00132-0022</svrl:text>
<svrl:diagnostic-reference diagnostic="ND-LotTenderingProcess_BT-132_d_-Lot"
see="field:BT-132(d)-Lot">
<svrl:text>cac:OpenTenderEvent/cbc:OccurrenceDate</svrl:text>
</svrl:diagnostic-reference>
</svrl:failed-assert>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:failed-assert id="BR-BT-00132-0022"
location="/cn:ContractNotice/cac:ProcurementProjectLot[2]/cac:TenderingProcess"
role="ERROR"
test="count(cac:OpenTenderEvent/cbc:OccurrenceDate) &gt; 0 or not(../../cac:TenderingProcess/cbc:ProcedureCode/normalize-space(text()) = 'open')">
<svrl:text>rule|text|BR-BT-00132-0022</svrl:text>
<svrl:diagnostic-reference diagnostic="ND-LotTenderingProcess_BT-132_d_-Lot"
see="field:BT-132(d)-Lot">
<svrl:text>cac:OpenTenderEvent/cbc:OccurrenceDate</svrl:text>
</svrl:diagnostic-reference>
</svrl:failed-assert>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:CallForTendersDocumentReference[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
Expand Down
2 changes: 1 addition & 1 deletion examples/reports/INVALID_cn_24_stage-2.svrl
Original file line number Diff line number Diff line change
Expand Up @@ -673,7 +673,7 @@
<svrl:failed-assert id="BR-BT-00506-0052"
location="/cn:ContractNotice/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:Contact/cbc:ElectronicMail"
role="ERROR"
test="matches(normalize-space(.),'^[a-zA-Z0-9][a-zA-Z0-9._%+-]*@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}$')">
test="matches(normalize-space(.),'^[A-Za-z0-9!#$%&amp;''*+/=?_-]+(\.[A-Za-z0-9!#$%&amp;''*+/=?_-]+)*@([A-Za-z0-9]([A-Za-z0-9_-]*[A-Za-z0-9])?\.)+([A-Za-z]{2,})$')">
<svrl:text>rule|text|BR-BT-00506-0052</svrl:text>
</svrl:failed-assert>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:PostalAddress/cbc:CityName"/>
Expand Down
9 changes: 9 additions & 0 deletions examples/reports/change-cn_24_cumbria_suppliers.svrl
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,8 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:ContractingSystem[cbc:ContractingSystemTypeCode/@listName='dps-usage']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:ContractingSystem[cbc:ContractingSystemTypeCode/@listName='framework-agreement']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:FrameworkAgreement"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cac:OccurenceLocation"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AppealTerms"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AppealTerms/cac:PresentationPeriod"/>
Expand Down Expand Up @@ -202,6 +204,7 @@
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:PartyLegalEntity"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:PartyLegalEntity"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Organizations/efac:Organization/efac:Company/cac:PartyLegalEntity"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cac:OccurenceLocation/cbc:Description"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cbc:Name"/>
Expand Down Expand Up @@ -286,6 +289,7 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AppealTerms/cac:PresentationPeriod/cbc:Description/@languageID"/>
<svrl:fired-rule context="/*/cac:TenderingProcess/cbc:ProcedureCode"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cbc:GovernmentAgreementConstraintIndicator"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cac:OccurenceLocation/cbc:Description/@languageID"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:ChangeReason/cbc:ReasonCode"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription/@languageID"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription/@languageID"/>
Expand Down Expand Up @@ -343,6 +347,7 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AppealTerms/cac:AppealReceiverParty/cac:PartyIdentification/cbc:ID/@schemeName"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:TenderRecipientParty/cac:PartyIdentification/cbc:ID/@schemeName"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cbc:AccessToolsURI"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cac:OccurenceLocation/cbc:Description"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription"/>
<svrl:fired-rule context="/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:Changes/efac:Change/efbc:ChangeDescription"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:CallForTendersDocumentReference/cac:Attachment[../cbc:DocumentType/text()='non-restricted-document']/cac:ExternalReference/cbc:URI"/>
Expand Down Expand Up @@ -410,6 +415,8 @@
<svrl:fired-rule context="/*/cbc:IssueTime"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:TenderSubmissionDeadlinePeriod/cbc:EndDate"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:TenderSubmissionDeadlinePeriod/cbc:EndTime"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cbc:OccurrenceDate"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent/cbc:OccurrenceTime"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cbc:ID"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cac:PlannedPeriod/cbc:StartDate"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cac:PlannedPeriod/cbc:EndDate"/>
Expand Down Expand Up @@ -438,6 +445,7 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cac:PlannedPeriod[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cac:RealizedLocation[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AwardingTerms/cac:AwardingCriterion[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AwardingTerms/cac:AwardingCriterion/cac:SubordinateAwardingCriterion[/*/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/efext:EformsExtension/efac:NoticeSubType/cbc:SubTypeCode/text() = '16']"/>
Expand Down Expand Up @@ -474,6 +482,7 @@
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:ProcurementProject/cac:PlannedPeriod"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingProcess/cac:OpenTenderEvent"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AppealTerms"/>
<svrl:fired-rule context="/*/cac:ProcurementProjectLot[cbc:ID/@schemeName='Lot']/cac:TenderingTerms/cac:AwardingTerms/cac:AwardingCriterion"/>
Expand Down
Loading

0 comments on commit 983c826

Please sign in to comment.