/*
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/cloud/dataplex/v1/data_quality.proto
// Protobuf Java Version: 3.25.3
package com.google.cloud.dataplex.v1;
public interface DataQualityRuleOrBuilder
extends
// @@protoc_insertion_point(interface_extends:google.cloud.dataplex.v1.DataQualityRule)
com.google.protobuf.MessageOrBuilder {
/**
*
*
*
* Row-level rule which evaluates whether each column value lies between a
* specified range.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RangeExpectation range_expectation = 1;
*
* @return Whether the rangeExpectation field is set.
*/
boolean hasRangeExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value lies between a
* specified range.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RangeExpectation range_expectation = 1;
*
* @return The rangeExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.RangeExpectation getRangeExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value lies between a
* specified range.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RangeExpectation range_expectation = 1;
*/
com.google.cloud.dataplex.v1.DataQualityRule.RangeExpectationOrBuilder
getRangeExpectationOrBuilder();
/**
*
*
*
* Row-level rule which evaluates whether each column value is null.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.NonNullExpectation non_null_expectation = 2;
*
*
* @return Whether the nonNullExpectation field is set.
*/
boolean hasNonNullExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is null.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.NonNullExpectation non_null_expectation = 2;
*
*
* @return The nonNullExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.NonNullExpectation getNonNullExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is null.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.NonNullExpectation non_null_expectation = 2;
*
*/
com.google.cloud.dataplex.v1.DataQualityRule.NonNullExpectationOrBuilder
getNonNullExpectationOrBuilder();
/**
*
*
*
* Row-level rule which evaluates whether each column value is contained by
* a specified set.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SetExpectation set_expectation = 3;
*
* @return Whether the setExpectation field is set.
*/
boolean hasSetExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is contained by
* a specified set.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SetExpectation set_expectation = 3;
*
* @return The setExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.SetExpectation getSetExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is contained by
* a specified set.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SetExpectation set_expectation = 3;
*/
com.google.cloud.dataplex.v1.DataQualityRule.SetExpectationOrBuilder getSetExpectationOrBuilder();
/**
*
*
*
* Row-level rule which evaluates whether each column value matches a
* specified regex.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RegexExpectation regex_expectation = 4;
*
* @return Whether the regexExpectation field is set.
*/
boolean hasRegexExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value matches a
* specified regex.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RegexExpectation regex_expectation = 4;
*
* @return The regexExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.RegexExpectation getRegexExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value matches a
* specified regex.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RegexExpectation regex_expectation = 4;
*/
com.google.cloud.dataplex.v1.DataQualityRule.RegexExpectationOrBuilder
getRegexExpectationOrBuilder();
/**
*
*
*
* Row-level rule which evaluates whether each column value is unique.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectation uniqueness_expectation = 100;
*
*
* @return Whether the uniquenessExpectation field is set.
*/
boolean hasUniquenessExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is unique.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectation uniqueness_expectation = 100;
*
*
* @return The uniquenessExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectation getUniquenessExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each column value is unique.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectation uniqueness_expectation = 100;
*
*/
com.google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectationOrBuilder
getUniquenessExpectationOrBuilder();
/**
*
*
*
* Aggregate rule which evaluates whether the column aggregate
* statistic lies between a specified range.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation statistic_range_expectation = 101;
*
*
* @return Whether the statisticRangeExpectation field is set.
*/
boolean hasStatisticRangeExpectation();
/**
*
*
*
* Aggregate rule which evaluates whether the column aggregate
* statistic lies between a specified range.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation statistic_range_expectation = 101;
*
*
* @return The statisticRangeExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation
getStatisticRangeExpectation();
/**
*
*
*
* Aggregate rule which evaluates whether the column aggregate
* statistic lies between a specified range.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation statistic_range_expectation = 101;
*
*/
com.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectationOrBuilder
getStatisticRangeExpectationOrBuilder();
/**
*
*
*
* Row-level rule which evaluates whether each row in a table passes the
* specified condition.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectation row_condition_expectation = 200;
*
*
* @return Whether the rowConditionExpectation field is set.
*/
boolean hasRowConditionExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each row in a table passes the
* specified condition.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectation row_condition_expectation = 200;
*
*
* @return The rowConditionExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectation getRowConditionExpectation();
/**
*
*
*
* Row-level rule which evaluates whether each row in a table passes the
* specified condition.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectation row_condition_expectation = 200;
*
*/
com.google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectationOrBuilder
getRowConditionExpectationOrBuilder();
/**
*
*
*
* Aggregate rule which evaluates whether the provided expression is true
* for a table.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectation table_condition_expectation = 201;
*
*
* @return Whether the tableConditionExpectation field is set.
*/
boolean hasTableConditionExpectation();
/**
*
*
*
* Aggregate rule which evaluates whether the provided expression is true
* for a table.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectation table_condition_expectation = 201;
*
*
* @return The tableConditionExpectation.
*/
com.google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectation
getTableConditionExpectation();
/**
*
*
*
* Aggregate rule which evaluates whether the provided expression is true
* for a table.
*
*
*
* .google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectation table_condition_expectation = 201;
*
*/
com.google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectationOrBuilder
getTableConditionExpectationOrBuilder();
/**
*
*
*
* Aggregate rule which evaluates the number of rows returned for the
* provided statement.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SqlAssertion sql_assertion = 202;
*
* @return Whether the sqlAssertion field is set.
*/
boolean hasSqlAssertion();
/**
*
*
*
* Aggregate rule which evaluates the number of rows returned for the
* provided statement.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SqlAssertion sql_assertion = 202;
*
* @return The sqlAssertion.
*/
com.google.cloud.dataplex.v1.DataQualityRule.SqlAssertion getSqlAssertion();
/**
*
*
*
* Aggregate rule which evaluates the number of rows returned for the
* provided statement.
*
*
* .google.cloud.dataplex.v1.DataQualityRule.SqlAssertion sql_assertion = 202;
*/
com.google.cloud.dataplex.v1.DataQualityRule.SqlAssertionOrBuilder getSqlAssertionOrBuilder();
/**
*
*
*
* Optional. The unnested column which this rule is evaluated against.
*
*
* string column = 500 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The column.
*/
java.lang.String getColumn();
/**
*
*
*
* Optional. The unnested column which this rule is evaluated against.
*
*
* string column = 500 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The bytes for column.
*/
com.google.protobuf.ByteString getColumnBytes();
/**
*
*
*
* Optional. Rows with `null` values will automatically fail a rule, unless
* `ignore_null` is `true`. In that case, such `null` rows are trivially
* considered passing.
*
* This field is only valid for the following type of rules:
*
* * RangeExpectation
* * RegexExpectation
* * SetExpectation
* * UniquenessExpectation
*
*
* bool ignore_null = 501 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The ignoreNull.
*/
boolean getIgnoreNull();
/**
*
*
*
* Required. The dimension a rule belongs to. Results are also aggregated at
* the dimension level. Supported dimensions are **["COMPLETENESS",
* "ACCURACY", "CONSISTENCY", "VALIDITY", "UNIQUENESS", "INTEGRITY"]**
*
*
* string dimension = 502 [(.google.api.field_behavior) = REQUIRED];
*
* @return The dimension.
*/
java.lang.String getDimension();
/**
*
*
*
* Required. The dimension a rule belongs to. Results are also aggregated at
* the dimension level. Supported dimensions are **["COMPLETENESS",
* "ACCURACY", "CONSISTENCY", "VALIDITY", "UNIQUENESS", "INTEGRITY"]**
*
*
* string dimension = 502 [(.google.api.field_behavior) = REQUIRED];
*
* @return The bytes for dimension.
*/
com.google.protobuf.ByteString getDimensionBytes();
/**
*
*
*
* Optional. The minimum ratio of **passing_rows / total_rows** required to
* pass this rule, with a range of [0.0, 1.0].
*
* 0 indicates default value (i.e. 1.0).
*
* This field is only valid for row-level type rules.
*
*
* double threshold = 503 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The threshold.
*/
double getThreshold();
/**
*
*
*
* Optional. A mutable name for the rule.
*
* * The name must contain only letters (a-z, A-Z), numbers (0-9), or
* hyphens (-).
* * The maximum length is 63 characters.
* * Must start with a letter.
* * Must end with a number or a letter.
*
*
* string name = 504 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The name.
*/
java.lang.String getName();
/**
*
*
*
* Optional. A mutable name for the rule.
*
* * The name must contain only letters (a-z, A-Z), numbers (0-9), or
* hyphens (-).
* * The maximum length is 63 characters.
* * Must start with a letter.
* * Must end with a number or a letter.
*
*
* string name = 504 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The bytes for name.
*/
com.google.protobuf.ByteString getNameBytes();
/**
*
*
*
* Optional. Description of the rule.
*
* * The maximum length is 1,024 characters.
*
*
* string description = 505 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The description.
*/
java.lang.String getDescription();
/**
*
*
*
* Optional. Description of the rule.
*
* * The maximum length is 1,024 characters.
*
*
* string description = 505 [(.google.api.field_behavior) = OPTIONAL];
*
* @return The bytes for description.
*/
com.google.protobuf.ByteString getDescriptionBytes();
com.google.cloud.dataplex.v1.DataQualityRule.RuleTypeCase getRuleTypeCase();
}