/// <summary>
 ///
 /// </summary>
 /// <param name="propertyName">The name of the property to be compared. For example: 'Logical Name'</param>
 /// <param name="comparisonCondition">The comparison condition code. You can use the ComparisonConditionCodes object to get the appropriate code for your usecase. For example. ComparisonCodes.EndsWith or 'END' .</param>
 /// <param name="value">The value to be compared against. For example: 'Timestamp' </param>
 public RuleExpression(string propertyName, ComparisonConditionEnum comparisonCondition, object value, bool caseSensitive = false)
 {
     PropertyName        = propertyName;
     ComparisonCondition = ComparisonConditionCodes.GetTextForEnum(comparisonCondition);
     ExpressionValue     = value;
     CaseSensitive       = caseSensitive;
 }
 public RuleExpression(DataStructureProperty property, ComparisonConditionEnum comparisonCondition, object value, bool caseSensitive = false)
 {
     switch (property)
     {
     case DataStructureProperty.notset:
     case DataStructureProperty.LogicalName:
     case DataStructureProperty.PhysicalName:
     case DataStructureProperty.Definition:
     case DataStructureProperty.Datatype:
     case DataStructureProperty.DatatypeName:
     case DataStructureProperty.DatatypeLength:
     case DataStructureProperty.TableName:
     case DataStructureProperty.DatabaseManagementSystem:
     default:
         PropertyName = Enum.GetName(typeof(DataStructureProperty), property);
         break;
     }
     ComparisonCondition = ComparisonConditionCodes.GetTextForEnum(comparisonCondition);
     ExpressionValue     = value;
     CaseSensitive       = caseSensitive;
 }