@@ -136,6 +136,11 @@ public ValidationQuery generateSparqlValidationQuery(ConnectionsGroup connection
136
136
return ValidationQuery .Deactivated .getInstance ();
137
137
}
138
138
139
+ if (!getPath ().isSupported ()) {
140
+ logger .error ("Unsupported path detected. Shape ignored!\n {}" , this );
141
+ return ValidationQuery .Deactivated .getInstance ();
142
+ }
143
+
139
144
ValidationQuery validationQuery = constraintComponents .stream ()
140
145
.map (c -> {
141
146
ValidationQuery validationQuery1 = c .generateSparqlValidationQuery (connectionsGroup ,
@@ -177,6 +182,11 @@ public PlanNode generateTransactionalValidationPlan(ConnectionsGroup connections
177
182
return EmptyNode .getInstance ();
178
183
}
179
184
185
+ if (!getPath ().isSupported ()) {
186
+ logger .error ("Unsupported path detected. Shape ignored!\n {}" , this );
187
+ return EmptyNode .getInstance ();
188
+ }
189
+
180
190
PlanNode union = EmptyNode .getInstance ();
181
191
182
192
// if (negatePlan) {
@@ -205,10 +215,6 @@ public PlanNode generateTransactionalValidationPlan(ConnectionsGroup connections
205
215
// }
206
216
207
217
for (ConstraintComponent constraintComponent : constraintComponents ) {
208
- if (!getPath ().isSupported ()) {
209
- logger .error ("Unsupported path detected. Shape ignored!\n " + this );
210
- continue ;
211
- }
212
218
213
219
PlanNode validationPlanNode = constraintComponent
214
220
.generateTransactionalValidationPlan (connectionsGroup , validationSettings , overrideTargetNode ,
@@ -276,6 +282,17 @@ public Path getPath() {
276
282
return path ;
277
283
}
278
284
285
+ @ Override
286
+ public boolean requiresEvaluation (ConnectionsGroup connectionsGroup , Scope scope , Resource [] dataGraph ,
287
+ StatementMatcher .StableRandomVariableProvider stableRandomVariableProvider ) {
288
+ if (!getPath ().isSupported ()) {
289
+ logger .error ("Unsupported path detected. Shape ignored!\n {}" , this );
290
+ return false ;
291
+ }
292
+
293
+ return super .requiresEvaluation (connectionsGroup , scope , dataGraph , stableRandomVariableProvider );
294
+ }
295
+
279
296
@ Override
280
297
public ConstraintComponent deepClone () {
281
298
PropertyShape nodeShape = new PropertyShape (this );
0 commit comments