@@ -3098,9 +3098,13 @@ QgsOgcUtilsExpressionFromFilter::QgsOgcUtilsExpressionFromFilter( const QgsOgcUt
3098
3098
, mLayer( layer )
3099
3099
{
3100
3100
mPropertyName = QStringLiteral ( " PropertyName" );
3101
+ mPrefix = QStringLiteral ( " ogc" );
3101
3102
3102
3103
if ( version == QgsOgcUtils::FILTER_FES_2_0 )
3104
+ {
3103
3105
mPropertyName = QStringLiteral ( " ValueReference" );
3106
+ mPrefix = QStringLiteral ( " fes" );
3107
+ }
3104
3108
}
3105
3109
3106
3110
QgsExpressionNode *QgsOgcUtilsExpressionFromFilter::nodeFromOgcFilter ( const QDomElement &element )
@@ -3300,7 +3304,7 @@ QgsExpressionNodeColumnRef *QgsOgcUtilsExpressionFromFilter::nodeColumnRefFromOg
3300
3304
{
3301
3305
if ( element.isNull () || element.tagName () != mPropertyName )
3302
3306
{
3303
- mErrorMessage = QObject::tr ( " ogc :PropertyName expected, got %1 " ).arg ( element.tagName () );
3307
+ mErrorMessage = QObject::tr ( " %1 :PropertyName expected, got %2 " ).arg ( mPrefix , element.tagName () );
3304
3308
return nullptr ;
3305
3309
}
3306
3310
@@ -3311,7 +3315,7 @@ QgsExpressionNode *QgsOgcUtilsExpressionFromFilter::nodeLiteralFromOgcFilter( co
3311
3315
{
3312
3316
if ( element.isNull () || element.tagName () != QLatin1String ( " Literal" ) )
3313
3317
{
3314
- mErrorMessage = QObject::tr ( " ogc :Literal expected, got %1 " ).arg ( element.tagName () );
3318
+ mErrorMessage = QObject::tr ( " %1 :Literal expected, got %2 " ).arg ( mPrefix , element.tagName () );
3315
3319
return nullptr ;
3316
3320
}
3317
3321
@@ -3332,7 +3336,7 @@ QgsExpressionNode *QgsOgcUtilsExpressionFromFilter::nodeLiteralFromOgcFilter( co
3332
3336
{
3333
3337
delete root;
3334
3338
3335
- mErrorMessage = QObject::tr ( " '%1' is an invalid or not supported content for ogc :Literal" ).arg ( operandElem.tagName () );
3339
+ mErrorMessage = QObject::tr ( " '%1' is an invalid or not supported content for %2 :Literal" ).arg ( operandElem.tagName (), mPrefix );
3336
3340
return nullptr ;
3337
3341
}
3338
3342
}
@@ -3405,8 +3409,7 @@ QgsExpressionNodeUnaryOperator *QgsOgcUtilsExpressionFromFilter::nodeNotFromOgcF
3405
3409
QgsExpressionNode *operand = nodeFromOgcFilter ( operandElem );
3406
3410
if ( !operand )
3407
3411
{
3408
- if ( mErrorMessage .isEmpty () )
3409
- mErrorMessage = QObject::tr ( " invalid operand for '%1' unary operator" ).arg ( element.tagName () );
3412
+ mErrorMessage = QObject::tr ( " invalid operand for '%1' unary operator" ).arg ( element.tagName () );
3410
3413
return nullptr ;
3411
3414
}
3412
3415
@@ -3434,7 +3437,7 @@ QgsExpressionNodeFunction *QgsOgcUtilsExpressionFromFilter::nodeFunctionFromOgcF
3434
3437
{
3435
3438
if ( element.isNull () || element.tagName () != QLatin1String ( " Function" ) )
3436
3439
{
3437
- mErrorMessage = QObject::tr ( " ogc :Function expected, got %1 " ).arg ( element.tagName () );
3440
+ mErrorMessage = QObject::tr ( " %1 :Function expected, got %2 " ).arg ( mPrefix , element.tagName () );
3438
3441
return nullptr ;
3439
3442
}
3440
3443
@@ -3507,7 +3510,7 @@ QgsExpressionNode *QgsOgcUtilsExpressionFromFilter::nodeIsBetweenFromOgcFilter(
3507
3510
delete lowerBound;
3508
3511
delete upperBound;
3509
3512
3510
- mErrorMessage = QObject::tr ( " missing some required sub-elements in ogc :PropertyIsBetween" );
3513
+ mErrorMessage = QObject::tr ( " missing some required sub-elements in %1 :PropertyIsBetween" ). arg ( mPrefix );
3511
3514
return nullptr ;
3512
3515
}
3513
3516
0 commit comments