bigquery.datasets.delete

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.deleteContents == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.get

enum_DatasetViewParameter := [ "DATASET_VIEW_UNSPECIFIED", "METADATA", "ACL", "FULL" ]

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.accessPolicyVersion == INTEGER
    input.Qs.datasetView == enum_DatasetViewParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.insert

enum_DatasetAccessEntryTargetTypes := [ "TARGET_TYPE_UNSPECIFIED", "VIEWS", "ROUTINES" ]
enum_DatasetDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_DatasetStorageBillingModel := [ "STORAGE_BILLING_MODEL_UNSPECIFIED", "LOGICAL", "PHYSICAL" ]

valid {
    input.Body.access[_].condition.description == STRING
    input.Body.access[_].condition.expression == STRING
    input.Body.access[_].condition.location == STRING
    input.Body.access[_].condition.title == STRING
    input.Body.access[_].dataset.dataset.datasetId == STRING
    input.Body.access[_].dataset.dataset.projectId == STRING
    input.Body.access[_].dataset.targetTypes[_] == enum_DatasetAccessEntryTargetTypes[_]
    input.Body.access[_].domain == STRING
    input.Body.access[_].groupByEmail == STRING
    input.Body.access[_].iamMember == STRING
    input.Body.access[_].role == STRING
    input.Body.access[_].routine.datasetId == STRING
    input.Body.access[_].routine.projectId == STRING
    input.Body.access[_].routine.routineId == STRING
    input.Body.access[_].specialGroup == STRING
    input.Body.access[_].userByEmail == STRING
    input.Body.access[_].view.datasetId == STRING
    input.Body.access[_].view.projectId == STRING
    input.Body.access[_].view.tableId == STRING
    input.Body.datasetReference.datasetId == STRING
    input.Body.datasetReference.projectId == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultEncryptionConfiguration.kmsKeyName == STRING
    input.Body.defaultPartitionExpirationMs == STRING
    input.Body.defaultRoundingMode == enum_DatasetDefaultRoundingMode[_]
    input.Body.defaultTableExpirationMs == STRING
    input.Body.description == STRING
    input.Body.externalCatalogDatasetOptions.defaultStorageLocationUri == STRING
    input.Body.externalCatalogDatasetOptions.parameters.STRING == STRING
    input.Body.externalDatasetReference.connection == STRING
    input.Body.externalDatasetReference.externalSource == STRING
    input.Body.friendlyName == STRING
    input.Body.isCaseInsensitive == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.linkedDatasetSource.sourceDataset.datasetId == STRING
    input.Body.linkedDatasetSource.sourceDataset.projectId == STRING
    input.Body.location == STRING
    input.Body.maxTimeTravelHours == STRING
    input.Body.resourceTags.STRING == STRING
    input.Body.storageBillingModel == enum_DatasetStorageBillingModel[_]
    input.ReqMap.ProjectID == STRING
    input.Qs.accessPolicyVersion == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.list

valid {
    input.ReqMap.ProjectID == STRING
    input.Qs.all == BOOLEAN
    input.Qs.filter == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.patch

enum_DatasetAccessEntryTargetTypes := [ "TARGET_TYPE_UNSPECIFIED", "VIEWS", "ROUTINES" ]
enum_DatasetDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_DatasetStorageBillingModel := [ "STORAGE_BILLING_MODEL_UNSPECIFIED", "LOGICAL", "PHYSICAL" ]

valid {
    input.Body.access[_].condition.description == STRING
    input.Body.access[_].condition.expression == STRING
    input.Body.access[_].condition.location == STRING
    input.Body.access[_].condition.title == STRING
    input.Body.access[_].dataset.dataset.datasetId == STRING
    input.Body.access[_].dataset.dataset.projectId == STRING
    input.Body.access[_].dataset.targetTypes[_] == enum_DatasetAccessEntryTargetTypes[_]
    input.Body.access[_].domain == STRING
    input.Body.access[_].groupByEmail == STRING
    input.Body.access[_].iamMember == STRING
    input.Body.access[_].role == STRING
    input.Body.access[_].routine.datasetId == STRING
    input.Body.access[_].routine.projectId == STRING
    input.Body.access[_].routine.routineId == STRING
    input.Body.access[_].specialGroup == STRING
    input.Body.access[_].userByEmail == STRING
    input.Body.access[_].view.datasetId == STRING
    input.Body.access[_].view.projectId == STRING
    input.Body.access[_].view.tableId == STRING
    input.Body.datasetReference.datasetId == STRING
    input.Body.datasetReference.projectId == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultEncryptionConfiguration.kmsKeyName == STRING
    input.Body.defaultPartitionExpirationMs == STRING
    input.Body.defaultRoundingMode == enum_DatasetDefaultRoundingMode[_]
    input.Body.defaultTableExpirationMs == STRING
    input.Body.description == STRING
    input.Body.externalCatalogDatasetOptions.defaultStorageLocationUri == STRING
    input.Body.externalCatalogDatasetOptions.parameters.STRING == STRING
    input.Body.externalDatasetReference.connection == STRING
    input.Body.externalDatasetReference.externalSource == STRING
    input.Body.friendlyName == STRING
    input.Body.isCaseInsensitive == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.linkedDatasetSource.sourceDataset.datasetId == STRING
    input.Body.linkedDatasetSource.sourceDataset.projectId == STRING
    input.Body.location == STRING
    input.Body.maxTimeTravelHours == STRING
    input.Body.resourceTags.STRING == STRING
    input.Body.storageBillingModel == enum_DatasetStorageBillingModel[_]
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.accessPolicyVersion == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.undelete

valid {
    input.Body.deletionTime == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.datasets.update

enum_DatasetAccessEntryTargetTypes := [ "TARGET_TYPE_UNSPECIFIED", "VIEWS", "ROUTINES" ]
enum_DatasetDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_DatasetStorageBillingModel := [ "STORAGE_BILLING_MODEL_UNSPECIFIED", "LOGICAL", "PHYSICAL" ]

valid {
    input.Body.access[_].condition.description == STRING
    input.Body.access[_].condition.expression == STRING
    input.Body.access[_].condition.location == STRING
    input.Body.access[_].condition.title == STRING
    input.Body.access[_].dataset.dataset.datasetId == STRING
    input.Body.access[_].dataset.dataset.projectId == STRING
    input.Body.access[_].dataset.targetTypes[_] == enum_DatasetAccessEntryTargetTypes[_]
    input.Body.access[_].domain == STRING
    input.Body.access[_].groupByEmail == STRING
    input.Body.access[_].iamMember == STRING
    input.Body.access[_].role == STRING
    input.Body.access[_].routine.datasetId == STRING
    input.Body.access[_].routine.projectId == STRING
    input.Body.access[_].routine.routineId == STRING
    input.Body.access[_].specialGroup == STRING
    input.Body.access[_].userByEmail == STRING
    input.Body.access[_].view.datasetId == STRING
    input.Body.access[_].view.projectId == STRING
    input.Body.access[_].view.tableId == STRING
    input.Body.datasetReference.datasetId == STRING
    input.Body.datasetReference.projectId == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultEncryptionConfiguration.kmsKeyName == STRING
    input.Body.defaultPartitionExpirationMs == STRING
    input.Body.defaultRoundingMode == enum_DatasetDefaultRoundingMode[_]
    input.Body.defaultTableExpirationMs == STRING
    input.Body.description == STRING
    input.Body.externalCatalogDatasetOptions.defaultStorageLocationUri == STRING
    input.Body.externalCatalogDatasetOptions.parameters.STRING == STRING
    input.Body.externalDatasetReference.connection == STRING
    input.Body.externalDatasetReference.externalSource == STRING
    input.Body.friendlyName == STRING
    input.Body.isCaseInsensitive == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.linkedDatasetSource.sourceDataset.datasetId == STRING
    input.Body.linkedDatasetSource.sourceDataset.projectId == STRING
    input.Body.location == STRING
    input.Body.maxTimeTravelHours == STRING
    input.Body.resourceTags.STRING == STRING
    input.Body.storageBillingModel == enum_DatasetStorageBillingModel[_]
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.accessPolicyVersion == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.cancel

valid {
    input.ReqMap.jobId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.location == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.delete

valid {
    input.ReqMap.jobId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.location == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.get

valid {
    input.ReqMap.jobId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.location == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.getQueryResults

valid {
    input.ReqMap.jobId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.formatOptions.useInt64Timestamp == BOOLEAN
    input.Qs.location == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.startIndex == STRING
    input.Qs.timeoutMs == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.insert

enum_ExternalDataConfigurationDecimalTargetTypes := [ "DECIMAL_TARGET_TYPE_UNSPECIFIED", "NUMERIC", "BIGNUMERIC", "STRING" ]
enum_ExternalDataConfigurationFileSetSpecType := [ "FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH", "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" ]
enum_ExternalDataConfigurationJsonExtension := [ "JSON_EXTENSION_UNSPECIFIED", "GEOJSON" ]
enum_ExternalDataConfigurationMetadataCacheMode := [ "METADATA_CACHE_MODE_UNSPECIFIED", "AUTOMATIC", "MANUAL" ]
enum_ExternalDataConfigurationObjectMetadata := [ "OBJECT_METADATA_UNSPECIFIED", "DIRECTORY", "SIMPLE" ]
enum_ForeignTypeInfoTypeSystem := [ "TYPE_SYSTEM_UNSPECIFIED", "HIVE" ]
enum_JobConfigurationLoadColumnNameCharacterMap := [ "COLUMN_NAME_CHARACTER_MAP_UNSPECIFIED", "STRICT", "V1", "V2" ]
enum_JobConfigurationLoadDecimalTargetTypes := [ "DECIMAL_TARGET_TYPE_UNSPECIFIED", "NUMERIC", "BIGNUMERIC", "STRING" ]
enum_JobConfigurationLoadFileSetSpecType := [ "FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH", "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" ]
enum_JobConfigurationLoadJsonExtension := [ "JSON_EXTENSION_UNSPECIFIED", "GEOJSON" ]
enum_JobConfigurationTableCopyOperationType := [ "OPERATION_TYPE_UNSPECIFIED", "COPY", "SNAPSHOT", "RESTORE", "CLONE" ]
enum_ParquetOptionsMapTargetType := [ "MAP_TARGET_TYPE_UNSPECIFIED", "ARRAY_OF_STRUCT" ]
enum_ScriptOptionsKeyResultStatement := [ "KEY_RESULT_STATEMENT_KIND_UNSPECIFIED", "LAST", "FIRST_SELECT" ]
enum_TableFieldSchemaRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]

valid {
    input.Body.configuration.copy.createDisposition == STRING
    input.Body.configuration.copy.destinationEncryptionConfiguration.kmsKeyName == STRING
    input.Body.configuration.copy.destinationExpirationTime == STRING
    input.Body.configuration.copy.destinationTable.datasetId == STRING
    input.Body.configuration.copy.destinationTable.projectId == STRING
    input.Body.configuration.copy.destinationTable.tableId == STRING
    input.Body.configuration.copy.operationType == enum_JobConfigurationTableCopyOperationType[_]
    input.Body.configuration.copy.sourceTable.datasetId == STRING
    input.Body.configuration.copy.sourceTable.projectId == STRING
    input.Body.configuration.copy.sourceTable.tableId == STRING
    input.Body.configuration.copy.sourceTables[_].datasetId == STRING
    input.Body.configuration.copy.sourceTables[_].projectId == STRING
    input.Body.configuration.copy.sourceTables[_].tableId == STRING
    input.Body.configuration.copy.writeDisposition == STRING
    input.Body.configuration.dryRun == BOOLEAN
    input.Body.configuration.extract.compression == STRING
    input.Body.configuration.extract.destinationFormat == STRING
    input.Body.configuration.extract.destinationUri == STRING
    input.Body.configuration.extract.destinationUris[_] == STRING
    input.Body.configuration.extract.fieldDelimiter == STRING
    input.Body.configuration.extract.modelExtractOptions.trialId == STRING
    input.Body.configuration.extract.printHeader == BOOLEAN
    input.Body.configuration.extract.sourceModel.datasetId == STRING
    input.Body.configuration.extract.sourceModel.modelId == STRING
    input.Body.configuration.extract.sourceModel.projectId == STRING
    input.Body.configuration.extract.sourceTable.datasetId == STRING
    input.Body.configuration.extract.sourceTable.projectId == STRING
    input.Body.configuration.extract.sourceTable.tableId == STRING
    input.Body.configuration.extract.useAvroLogicalTypes == BOOLEAN
    input.Body.configuration.jobTimeoutMs == STRING
    input.Body.configuration.jobType == STRING
    input.Body.configuration.labels.STRING == STRING
    input.Body.configuration.load.allowJaggedRows == BOOLEAN
    input.Body.configuration.load.allowQuotedNewlines == BOOLEAN
    input.Body.configuration.load.autodetect == BOOLEAN
    input.Body.configuration.load.clustering.fields[_] == STRING
    input.Body.configuration.load.columnNameCharacterMap == enum_JobConfigurationLoadColumnNameCharacterMap[_]
    input.Body.configuration.load.connectionProperties[_].key == STRING
    input.Body.configuration.load.connectionProperties[_].value == STRING
    input.Body.configuration.load.copyFilesOnly == BOOLEAN
    input.Body.configuration.load.createDisposition == STRING
    input.Body.configuration.load.createSession == BOOLEAN
    input.Body.configuration.load.decimalTargetTypes[_] == enum_JobConfigurationLoadDecimalTargetTypes[_]
    input.Body.configuration.load.destinationEncryptionConfiguration.kmsKeyName == STRING
    input.Body.configuration.load.destinationTable.datasetId == STRING
    input.Body.configuration.load.destinationTable.projectId == STRING
    input.Body.configuration.load.destinationTable.tableId == STRING
    input.Body.configuration.load.destinationTableProperties.description == STRING
    input.Body.configuration.load.destinationTableProperties.expirationTime == STRING
    input.Body.configuration.load.destinationTableProperties.friendlyName == STRING
    input.Body.configuration.load.destinationTableProperties.labels.STRING == STRING
    input.Body.configuration.load.encoding == STRING
    input.Body.configuration.load.fieldDelimiter == STRING
    input.Body.configuration.load.fileSetSpecType == enum_JobConfigurationLoadFileSetSpecType[_]
    input.Body.configuration.load.hivePartitioningOptions.mode == STRING
    input.Body.configuration.load.hivePartitioningOptions.requirePartitionFilter == BOOLEAN
    input.Body.configuration.load.hivePartitioningOptions.sourceUriPrefix == STRING
    input.Body.configuration.load.ignoreUnknownValues == BOOLEAN
    input.Body.configuration.load.jsonExtension == enum_JobConfigurationLoadJsonExtension[_]
    input.Body.configuration.load.maxBadRecords == INTEGER
    input.Body.configuration.load.nullMarker == STRING
    input.Body.configuration.load.parquetOptions.enableListInference == BOOLEAN
    input.Body.configuration.load.parquetOptions.enumAsString == BOOLEAN
    input.Body.configuration.load.parquetOptions.mapTargetType == enum_ParquetOptionsMapTargetType[_]
    input.Body.configuration.load.preserveAsciiControlCharacters == BOOLEAN
    input.Body.configuration.load.projectionFields[_] == STRING
    input.Body.configuration.load.quote == STRING
    input.Body.configuration.load.rangePartitioning.field == STRING
    input.Body.configuration.load.rangePartitioning.range.end == STRING
    input.Body.configuration.load.rangePartitioning.range.interval == STRING
    input.Body.configuration.load.rangePartitioning.range.start == STRING
    input.Body.configuration.load.referenceFileSchemaUri == STRING
    input.Body.configuration.load.schema.fields[_].categories.names[_] == STRING
    input.Body.configuration.load.schema.fields[_].collation == STRING
    input.Body.configuration.load.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.configuration.load.schema.fields[_].defaultValueExpression == STRING
    input.Body.configuration.load.schema.fields[_].description == STRING
    input.Body.configuration.load.schema.fields[_].fields[_] == NESTED
    input.Body.configuration.load.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.configuration.load.schema.fields[_].maxLength == STRING
    input.Body.configuration.load.schema.fields[_].mode == STRING
    input.Body.configuration.load.schema.fields[_].name == STRING
    input.Body.configuration.load.schema.fields[_].policyTags.names[_] == STRING
    input.Body.configuration.load.schema.fields[_].precision == STRING
    input.Body.configuration.load.schema.fields[_].rangeElementType.type == STRING
    input.Body.configuration.load.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.configuration.load.schema.fields[_].scale == STRING
    input.Body.configuration.load.schema.fields[_].type == STRING
    input.Body.configuration.load.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.configuration.load.schemaInline == STRING
    input.Body.configuration.load.schemaInlineFormat == STRING
    input.Body.configuration.load.schemaUpdateOptions[_] == STRING
    input.Body.configuration.load.skipLeadingRows == INTEGER
    input.Body.configuration.load.sourceFormat == STRING
    input.Body.configuration.load.sourceUris[_] == STRING
    input.Body.configuration.load.timePartitioning.expirationMs == STRING
    input.Body.configuration.load.timePartitioning.field == STRING
    input.Body.configuration.load.timePartitioning.requirePartitionFilter == BOOLEAN
    input.Body.configuration.load.timePartitioning.type == STRING
    input.Body.configuration.load.useAvroLogicalTypes == BOOLEAN
    input.Body.configuration.load.writeDisposition == STRING
    input.Body.configuration.query.allowLargeResults == BOOLEAN
    input.Body.configuration.query.clustering.fields[_] == STRING
    input.Body.configuration.query.connectionProperties[_].key == STRING
    input.Body.configuration.query.connectionProperties[_].value == STRING
    input.Body.configuration.query.continuous == BOOLEAN
    input.Body.configuration.query.createDisposition == STRING
    input.Body.configuration.query.createSession == BOOLEAN
    input.Body.configuration.query.defaultDataset.datasetId == STRING
    input.Body.configuration.query.defaultDataset.projectId == STRING
    input.Body.configuration.query.destinationEncryptionConfiguration.kmsKeyName == STRING
    input.Body.configuration.query.destinationTable.datasetId == STRING
    input.Body.configuration.query.destinationTable.projectId == STRING
    input.Body.configuration.query.destinationTable.tableId == STRING
    input.Body.configuration.query.flattenResults == BOOLEAN
    input.Body.configuration.query.maximumBillingTier == INTEGER
    input.Body.configuration.query.maximumBytesBilled == STRING
    input.Body.configuration.query.parameterMode == STRING
    input.Body.configuration.query.preserveNulls == BOOLEAN
    input.Body.configuration.query.priority == STRING
    input.Body.configuration.query.query == STRING
    input.Body.configuration.query.queryParameters[_].name == STRING
    input.Body.configuration.query.queryParameters[_].parameterType.arrayType == NESTED
    input.Body.configuration.query.queryParameters[_].parameterType.rangeElementType == NESTED
    input.Body.configuration.query.queryParameters[_].parameterType.structTypes[_].description == STRING
    input.Body.configuration.query.queryParameters[_].parameterType.structTypes[_].name == STRING
    input.Body.configuration.query.queryParameters[_].parameterType.structTypes[_].type == NESTED
    input.Body.configuration.query.queryParameters[_].parameterType.type == STRING
    input.Body.configuration.query.queryParameters[_].parameterValue.arrayValues[_] == NESTED
    input.Body.configuration.query.queryParameters[_].parameterValue.rangeValue.end == NESTED
    input.Body.configuration.query.queryParameters[_].parameterValue.rangeValue.start == NESTED
    input.Body.configuration.query.queryParameters[_].parameterValue.structValues.STRING == NESTED
    input.Body.configuration.query.queryParameters[_].parameterValue.value == STRING
    input.Body.configuration.query.rangePartitioning.field == STRING
    input.Body.configuration.query.rangePartitioning.range.end == STRING
    input.Body.configuration.query.rangePartitioning.range.interval == STRING
    input.Body.configuration.query.rangePartitioning.range.start == STRING
    input.Body.configuration.query.schemaUpdateOptions[_] == STRING
    input.Body.configuration.query.scriptOptions.keyResultStatement == enum_ScriptOptionsKeyResultStatement[_]
    input.Body.configuration.query.scriptOptions.statementByteBudget == STRING
    input.Body.configuration.query.scriptOptions.statementTimeoutMs == STRING
    input.Body.configuration.query.tableDefinitions.STRING.autodetect == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.avroOptions.useAvroLogicalTypes == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].encoding == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].fieldName == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].onlyReadLatest == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].qualifierEncoded == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].qualifierString == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].columns[_].type == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].encoding == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].familyId == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].onlyReadLatest == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.columnFamilies[_].type == STRING
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.ignoreUnspecifiedColumnFamilies == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.outputColumnFamiliesAsJson == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.bigtableOptions.readRowkeyAsString == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.compression == STRING
    input.Body.configuration.query.tableDefinitions.STRING.connectionId == STRING
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.allowJaggedRows == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.allowQuotedNewlines == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.encoding == STRING
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.fieldDelimiter == STRING
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.nullMarker == STRING
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.preserveAsciiControlCharacters == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.quote == STRING
    input.Body.configuration.query.tableDefinitions.STRING.csvOptions.skipLeadingRows == STRING
    input.Body.configuration.query.tableDefinitions.STRING.decimalTargetTypes[_] == enum_ExternalDataConfigurationDecimalTargetTypes[_]
    input.Body.configuration.query.tableDefinitions.STRING.fileSetSpecType == enum_ExternalDataConfigurationFileSetSpecType[_]
    input.Body.configuration.query.tableDefinitions.STRING.googleSheetsOptions.range == STRING
    input.Body.configuration.query.tableDefinitions.STRING.googleSheetsOptions.skipLeadingRows == STRING
    input.Body.configuration.query.tableDefinitions.STRING.hivePartitioningOptions.mode == STRING
    input.Body.configuration.query.tableDefinitions.STRING.hivePartitioningOptions.requirePartitionFilter == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.hivePartitioningOptions.sourceUriPrefix == STRING
    input.Body.configuration.query.tableDefinitions.STRING.ignoreUnknownValues == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.jsonExtension == enum_ExternalDataConfigurationJsonExtension[_]
    input.Body.configuration.query.tableDefinitions.STRING.jsonOptions.encoding == STRING
    input.Body.configuration.query.tableDefinitions.STRING.maxBadRecords == INTEGER
    input.Body.configuration.query.tableDefinitions.STRING.metadataCacheMode == enum_ExternalDataConfigurationMetadataCacheMode[_]
    input.Body.configuration.query.tableDefinitions.STRING.objectMetadata == enum_ExternalDataConfigurationObjectMetadata[_]
    input.Body.configuration.query.tableDefinitions.STRING.parquetOptions.enableListInference == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.parquetOptions.enumAsString == BOOLEAN
    input.Body.configuration.query.tableDefinitions.STRING.parquetOptions.mapTargetType == enum_ParquetOptionsMapTargetType[_]
    input.Body.configuration.query.tableDefinitions.STRING.referenceFileSchemaUri == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].categories.names[_] == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].collation == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].defaultValueExpression == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].description == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].fields[_] == NESTED
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].maxLength == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].mode == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].name == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].policyTags.names[_] == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].precision == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].rangeElementType.type == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].scale == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.fields[_].type == STRING
    input.Body.configuration.query.tableDefinitions.STRING.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.configuration.query.tableDefinitions.STRING.sourceFormat == STRING
    input.Body.configuration.query.tableDefinitions.STRING.sourceUris[_] == STRING
    input.Body.configuration.query.timePartitioning.expirationMs == STRING
    input.Body.configuration.query.timePartitioning.field == STRING
    input.Body.configuration.query.timePartitioning.requirePartitionFilter == BOOLEAN
    input.Body.configuration.query.timePartitioning.type == STRING
    input.Body.configuration.query.useLegacySql == BOOLEAN
    input.Body.configuration.query.useQueryCache == BOOLEAN
    input.Body.configuration.query.userDefinedFunctionResources[_].inlineCode == STRING
    input.Body.configuration.query.userDefinedFunctionResources[_].resourceUri == STRING
    input.Body.configuration.query.writeDisposition == STRING
    input.Body.jobReference.jobId == STRING
    input.Body.jobReference.location == STRING
    input.Body.jobReference.projectId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.list

enum_ProjectionParameter := [ "full", "minimal" ]
enum_StateFilterParameter := [ "done", "pending", "running" ]

valid {
    input.ReqMap.ProjectID == STRING
    input.Qs.allUsers == BOOLEAN
    input.Qs.maxCreationTime == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.minCreationTime == STRING
    input.Qs.pageToken == STRING
    input.Qs.parentJobId == STRING
    input.Qs.projection == enum_ProjectionParameter[_]
    input.Qs.stateFilter == enum_StateFilterParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.jobs.query

enum_QueryRequestJobCreationMode := [ "JOB_CREATION_MODE_UNSPECIFIED", "JOB_CREATION_REQUIRED", "JOB_CREATION_OPTIONAL" ]

valid {
    input.Body.connectionProperties[_].key == STRING
    input.Body.connectionProperties[_].value == STRING
    input.Body.continuous == BOOLEAN
    input.Body.createSession == BOOLEAN
    input.Body.defaultDataset.datasetId == STRING
    input.Body.defaultDataset.projectId == STRING
    input.Body.dryRun == BOOLEAN
    input.Body.formatOptions.useInt64Timestamp == BOOLEAN
    input.Body.jobCreationMode == enum_QueryRequestJobCreationMode[_]
    input.Body.kind == STRING
    input.Body.labels.STRING == STRING
    input.Body.location == STRING
    input.Body.maxResults == INTEGER
    input.Body.maximumBytesBilled == STRING
    input.Body.parameterMode == STRING
    input.Body.preserveNulls == BOOLEAN
    input.Body.query == STRING
    input.Body.queryParameters[_].name == STRING
    input.Body.queryParameters[_].parameterType.arrayType == NESTED
    input.Body.queryParameters[_].parameterType.rangeElementType == NESTED
    input.Body.queryParameters[_].parameterType.structTypes[_].description == STRING
    input.Body.queryParameters[_].parameterType.structTypes[_].name == STRING
    input.Body.queryParameters[_].parameterType.structTypes[_].type == NESTED
    input.Body.queryParameters[_].parameterType.type == STRING
    input.Body.queryParameters[_].parameterValue.arrayValues[_] == NESTED
    input.Body.queryParameters[_].parameterValue.rangeValue.end == NESTED
    input.Body.queryParameters[_].parameterValue.rangeValue.start == NESTED
    input.Body.queryParameters[_].parameterValue.structValues.STRING == NESTED
    input.Body.queryParameters[_].parameterValue.value == STRING
    input.Body.requestId == STRING
    input.Body.timeoutMs == INTEGER
    input.Body.useLegacySql == BOOLEAN
    input.Body.useQueryCache == BOOLEAN
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.models.delete

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.modelId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.models.get

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.modelId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.models.list

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.models.patch

valid {
    input.Body.bestTrialId == STRING
    input.Body.description == STRING
    input.Body.encryptionConfiguration.kmsKeyName == STRING
    input.Body.expirationTime == STRING
    input.Body.friendlyName == STRING
    input.Body.labels.STRING == STRING
    input.Body.modelReference.datasetId == STRING
    input.Body.modelReference.modelId == STRING
    input.Body.modelReference.projectId == STRING
    input.Body.trainingRuns[_].vertexAiModelId == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.modelId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.projects.getServiceAccount

valid {
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.projects.list

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.routines.delete

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.routineId == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.routines.get

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.routineId == STRING
    input.Qs.readMask == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.routines.getIamPolicy

valid {
    input.Body.options.requestedPolicyVersion == INTEGER
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.routines.insert

enum_ArgumentArgumentKind := [ "ARGUMENT_KIND_UNSPECIFIED", "FIXED_TYPE", "ANY_TYPE" ]
enum_ArgumentMode := [ "MODE_UNSPECIFIED", "IN", "OUT", "INOUT" ]
enum_RoutineDataGovernanceType := [ "DATA_GOVERNANCE_TYPE_UNSPECIFIED", "DATA_MASKING" ]
enum_RoutineDeterminismLevel := [ "DETERMINISM_LEVEL_UNSPECIFIED", "DETERMINISTIC", "NOT_DETERMINISTIC" ]
enum_RoutineLanguage := [ "LANGUAGE_UNSPECIFIED", "SQL", "JAVASCRIPT", "PYTHON", "JAVA", "SCALA" ]
enum_RoutineRoutineType := [ "ROUTINE_TYPE_UNSPECIFIED", "SCALAR_FUNCTION", "PROCEDURE", "TABLE_VALUED_FUNCTION", "AGGREGATE_FUNCTION" ]
enum_RoutineSecurityMode := [ "SECURITY_MODE_UNSPECIFIED", "DEFINER", "INVOKER" ]
enum_StandardSqlDataTypeTypeKind := [ "TYPE_KIND_UNSPECIFIED", "INT64", "BOOL", "FLOAT64", "STRING", "BYTES", "TIMESTAMP", "DATE", "TIME", "DATETIME", "INTERVAL", "GEOGRAPHY", "NUMERIC", "BIGNUMERIC", "JSON", "ARRAY", "STRUCT", "RANGE" ]

valid {
    input.Body.arguments[_].argumentKind == enum_ArgumentArgumentKind[_]
    input.Body.arguments[_].dataType.arrayElementType == NESTED
    input.Body.arguments[_].dataType.rangeElementType == NESTED
    input.Body.arguments[_].dataType.structType.fields[_].name == STRING
    input.Body.arguments[_].dataType.structType.fields[_].type == NESTED
    input.Body.arguments[_].dataType.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.arguments[_].isAggregate == BOOLEAN
    input.Body.arguments[_].mode == enum_ArgumentMode[_]
    input.Body.arguments[_].name == STRING
    input.Body.dataGovernanceType == enum_RoutineDataGovernanceType[_]
    input.Body.definitionBody == STRING
    input.Body.description == STRING
    input.Body.determinismLevel == enum_RoutineDeterminismLevel[_]
    input.Body.importedLibraries[_] == STRING
    input.Body.language == enum_RoutineLanguage[_]
    input.Body.remoteFunctionOptions.connection == STRING
    input.Body.remoteFunctionOptions.endpoint == STRING
    input.Body.remoteFunctionOptions.maxBatchingRows == STRING
    input.Body.remoteFunctionOptions.userDefinedContext.STRING == STRING
    input.Body.returnTableType.columns[_].name == STRING
    input.Body.returnTableType.columns[_].type.arrayElementType == NESTED
    input.Body.returnTableType.columns[_].type.rangeElementType == NESTED
    input.Body.returnTableType.columns[_].type.structType.fields[_] == NESTED
    input.Body.returnTableType.columns[_].type.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.returnType.arrayElementType == NESTED
    input.Body.returnType.rangeElementType == NESTED
    input.Body.returnType.structType.fields[_].name == STRING
    input.Body.returnType.structType.fields[_].type == NESTED
    input.Body.returnType.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.routineReference.datasetId == STRING
    input.Body.routineReference.projectId == STRING
    input.Body.routineReference.routineId == STRING
    input.Body.routineType == enum_RoutineRoutineType[_]
    input.Body.securityMode == enum_RoutineSecurityMode[_]
    input.Body.sparkOptions.archiveUris[_] == STRING
    input.Body.sparkOptions.connection == STRING
    input.Body.sparkOptions.containerImage == STRING
    input.Body.sparkOptions.fileUris[_] == STRING
    input.Body.sparkOptions.jarUris[_] == STRING
    input.Body.sparkOptions.mainClass == STRING
    input.Body.sparkOptions.mainFileUri == STRING
    input.Body.sparkOptions.properties.STRING == STRING
    input.Body.sparkOptions.pyFileUris[_] == STRING
    input.Body.sparkOptions.runtimeVersion == STRING
    input.Body.strictMode == BOOLEAN
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.routines.list

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.filter == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.readMask == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.routines.setIamPolicy

enum_AuditLogConfigLogType := [ "LOG_TYPE_UNSPECIFIED", "ADMIN_READ", "DATA_WRITE", "DATA_READ" ]

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_AuditLogConfigLogType[_]
    input.Body.policy.auditConfigs[_].service == STRING
    input.Body.policy.bindings[_].condition.description == STRING
    input.Body.policy.bindings[_].condition.expression == STRING
    input.Body.policy.bindings[_].condition.location == STRING
    input.Body.policy.bindings[_].condition.title == STRING
    input.Body.policy.bindings[_].members[_] == STRING
    input.Body.policy.bindings[_].role == STRING
    input.Body.policy.etag == STRING
    input.Body.policy.version == INTEGER
    input.Body.updateMask == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.routines.update

enum_ArgumentArgumentKind := [ "ARGUMENT_KIND_UNSPECIFIED", "FIXED_TYPE", "ANY_TYPE" ]
enum_ArgumentMode := [ "MODE_UNSPECIFIED", "IN", "OUT", "INOUT" ]
enum_RoutineDataGovernanceType := [ "DATA_GOVERNANCE_TYPE_UNSPECIFIED", "DATA_MASKING" ]
enum_RoutineDeterminismLevel := [ "DETERMINISM_LEVEL_UNSPECIFIED", "DETERMINISTIC", "NOT_DETERMINISTIC" ]
enum_RoutineLanguage := [ "LANGUAGE_UNSPECIFIED", "SQL", "JAVASCRIPT", "PYTHON", "JAVA", "SCALA" ]
enum_RoutineRoutineType := [ "ROUTINE_TYPE_UNSPECIFIED", "SCALAR_FUNCTION", "PROCEDURE", "TABLE_VALUED_FUNCTION", "AGGREGATE_FUNCTION" ]
enum_RoutineSecurityMode := [ "SECURITY_MODE_UNSPECIFIED", "DEFINER", "INVOKER" ]
enum_StandardSqlDataTypeTypeKind := [ "TYPE_KIND_UNSPECIFIED", "INT64", "BOOL", "FLOAT64", "STRING", "BYTES", "TIMESTAMP", "DATE", "TIME", "DATETIME", "INTERVAL", "GEOGRAPHY", "NUMERIC", "BIGNUMERIC", "JSON", "ARRAY", "STRUCT", "RANGE" ]

valid {
    input.Body.arguments[_].argumentKind == enum_ArgumentArgumentKind[_]
    input.Body.arguments[_].dataType.arrayElementType == NESTED
    input.Body.arguments[_].dataType.rangeElementType == NESTED
    input.Body.arguments[_].dataType.structType.fields[_].name == STRING
    input.Body.arguments[_].dataType.structType.fields[_].type == NESTED
    input.Body.arguments[_].dataType.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.arguments[_].isAggregate == BOOLEAN
    input.Body.arguments[_].mode == enum_ArgumentMode[_]
    input.Body.arguments[_].name == STRING
    input.Body.dataGovernanceType == enum_RoutineDataGovernanceType[_]
    input.Body.definitionBody == STRING
    input.Body.description == STRING
    input.Body.determinismLevel == enum_RoutineDeterminismLevel[_]
    input.Body.importedLibraries[_] == STRING
    input.Body.language == enum_RoutineLanguage[_]
    input.Body.remoteFunctionOptions.connection == STRING
    input.Body.remoteFunctionOptions.endpoint == STRING
    input.Body.remoteFunctionOptions.maxBatchingRows == STRING
    input.Body.remoteFunctionOptions.userDefinedContext.STRING == STRING
    input.Body.returnTableType.columns[_].name == STRING
    input.Body.returnTableType.columns[_].type.arrayElementType == NESTED
    input.Body.returnTableType.columns[_].type.rangeElementType == NESTED
    input.Body.returnTableType.columns[_].type.structType.fields[_] == NESTED
    input.Body.returnTableType.columns[_].type.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.returnType.arrayElementType == NESTED
    input.Body.returnType.rangeElementType == NESTED
    input.Body.returnType.structType.fields[_].name == STRING
    input.Body.returnType.structType.fields[_].type == NESTED
    input.Body.returnType.typeKind == enum_StandardSqlDataTypeTypeKind[_]
    input.Body.routineReference.datasetId == STRING
    input.Body.routineReference.projectId == STRING
    input.Body.routineReference.routineId == STRING
    input.Body.routineType == enum_RoutineRoutineType[_]
    input.Body.securityMode == enum_RoutineSecurityMode[_]
    input.Body.sparkOptions.archiveUris[_] == STRING
    input.Body.sparkOptions.connection == STRING
    input.Body.sparkOptions.containerImage == STRING
    input.Body.sparkOptions.fileUris[_] == STRING
    input.Body.sparkOptions.jarUris[_] == STRING
    input.Body.sparkOptions.mainClass == STRING
    input.Body.sparkOptions.mainFileUri == STRING
    input.Body.sparkOptions.properties.STRING == STRING
    input.Body.sparkOptions.pyFileUris[_] == STRING
    input.Body.sparkOptions.runtimeVersion == STRING
    input.Body.strictMode == BOOLEAN
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.routineId == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.rowAccessPolicies.getIamPolicy

valid {
    input.Body.options.requestedPolicyVersion == INTEGER
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.rowAccessPolicies.list

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.rowAccessPolicies.testIamPermissions

valid {
    input.Body.permissions[_] == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.tabledata.insertAll

valid {
    input.Body.ignoreUnknownValues == BOOLEAN
    input.Body.kind == STRING
    input.Body.rows[_].insertId == STRING
    input.Body.rows[_].json.STRING == ANY
    input.Body.skipInvalidRows == BOOLEAN
    input.Body.templateSuffix == STRING
    input.Body.traceId == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tabledata.list

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.Qs.formatOptions.useInt64Timestamp == BOOLEAN
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.selectedFields == STRING
    input.Qs.startIndex == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.delete

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.get

enum_ViewParameter := [ "TABLE_METADATA_VIEW_UNSPECIFIED", "BASIC", "STORAGE_STATS", "FULL" ]

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.Qs.selectedFields == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.getIamPolicy

valid {
    input.Body.options.requestedPolicyVersion == INTEGER
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.tables.insert

enum_BigLakeConfigurationFileFormat := [ "FILE_FORMAT_UNSPECIFIED", "PARQUET" ]
enum_BigLakeConfigurationTableFormat := [ "TABLE_FORMAT_UNSPECIFIED", "ICEBERG" ]
enum_ExternalDataConfigurationDecimalTargetTypes := [ "DECIMAL_TARGET_TYPE_UNSPECIFIED", "NUMERIC", "BIGNUMERIC", "STRING" ]
enum_ExternalDataConfigurationFileSetSpecType := [ "FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH", "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" ]
enum_ExternalDataConfigurationJsonExtension := [ "JSON_EXTENSION_UNSPECIFIED", "GEOJSON" ]
enum_ExternalDataConfigurationMetadataCacheMode := [ "METADATA_CACHE_MODE_UNSPECIFIED", "AUTOMATIC", "MANUAL" ]
enum_ExternalDataConfigurationObjectMetadata := [ "OBJECT_METADATA_UNSPECIFIED", "DIRECTORY", "SIMPLE" ]
enum_ForeignTypeInfoTypeSystem := [ "TYPE_SYSTEM_UNSPECIFIED", "HIVE" ]
enum_JoinRestrictionPolicyJoinCondition := [ "JOIN_CONDITION_UNSPECIFIED", "JOIN_ANY", "JOIN_ALL", "JOIN_NOT_REQUIRED", "JOIN_BLOCKED" ]
enum_ParquetOptionsMapTargetType := [ "MAP_TARGET_TYPE_UNSPECIFIED", "ARRAY_OF_STRUCT" ]
enum_TableDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_TableFieldSchemaRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]

valid {
    input.Body.biglakeConfiguration.connectionId == STRING
    input.Body.biglakeConfiguration.fileFormat == enum_BigLakeConfigurationFileFormat[_]
    input.Body.biglakeConfiguration.storageUri == STRING
    input.Body.biglakeConfiguration.tableFormat == enum_BigLakeConfigurationTableFormat[_]
    input.Body.clustering.fields[_] == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultRoundingMode == enum_TableDefaultRoundingMode[_]
    input.Body.description == STRING
    input.Body.encryptionConfiguration.kmsKeyName == STRING
    input.Body.expirationTime == STRING
    input.Body.externalCatalogTableOptions.connectionId == STRING
    input.Body.externalCatalogTableOptions.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.inputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.locationUri == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.outputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.name == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.serializationLibrary == STRING
    input.Body.externalDataConfiguration.autodetect == BOOLEAN
    input.Body.externalDataConfiguration.avroOptions.useAvroLogicalTypes == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].fieldName == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierEncoded == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierString == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].familyId == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.ignoreUnspecifiedColumnFamilies == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.outputColumnFamiliesAsJson == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.readRowkeyAsString == BOOLEAN
    input.Body.externalDataConfiguration.compression == STRING
    input.Body.externalDataConfiguration.connectionId == STRING
    input.Body.externalDataConfiguration.csvOptions.allowJaggedRows == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.allowQuotedNewlines == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.encoding == STRING
    input.Body.externalDataConfiguration.csvOptions.fieldDelimiter == STRING
    input.Body.externalDataConfiguration.csvOptions.nullMarker == STRING
    input.Body.externalDataConfiguration.csvOptions.preserveAsciiControlCharacters == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.quote == STRING
    input.Body.externalDataConfiguration.csvOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.decimalTargetTypes[_] == enum_ExternalDataConfigurationDecimalTargetTypes[_]
    input.Body.externalDataConfiguration.fileSetSpecType == enum_ExternalDataConfigurationFileSetSpecType[_]
    input.Body.externalDataConfiguration.googleSheetsOptions.range == STRING
    input.Body.externalDataConfiguration.googleSheetsOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.mode == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.requirePartitionFilter == BOOLEAN
    input.Body.externalDataConfiguration.hivePartitioningOptions.sourceUriPrefix == STRING
    input.Body.externalDataConfiguration.ignoreUnknownValues == BOOLEAN
    input.Body.externalDataConfiguration.jsonExtension == enum_ExternalDataConfigurationJsonExtension[_]
    input.Body.externalDataConfiguration.jsonOptions.encoding == STRING
    input.Body.externalDataConfiguration.maxBadRecords == INTEGER
    input.Body.externalDataConfiguration.metadataCacheMode == enum_ExternalDataConfigurationMetadataCacheMode[_]
    input.Body.externalDataConfiguration.objectMetadata == enum_ExternalDataConfigurationObjectMetadata[_]
    input.Body.externalDataConfiguration.parquetOptions.enableListInference == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.enumAsString == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.mapTargetType == enum_ParquetOptionsMapTargetType[_]
    input.Body.externalDataConfiguration.referenceFileSchemaUri == STRING
    input.Body.externalDataConfiguration.schema.fields[_].categories.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].collation == STRING
    input.Body.externalDataConfiguration.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].defaultValueExpression == STRING
    input.Body.externalDataConfiguration.schema.fields[_].description == STRING
    input.Body.externalDataConfiguration.schema.fields[_].fields[_] == NESTED
    input.Body.externalDataConfiguration.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.externalDataConfiguration.schema.fields[_].maxLength == STRING
    input.Body.externalDataConfiguration.schema.fields[_].mode == STRING
    input.Body.externalDataConfiguration.schema.fields[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].policyTags.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].precision == STRING
    input.Body.externalDataConfiguration.schema.fields[_].rangeElementType.type == STRING
    input.Body.externalDataConfiguration.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.externalDataConfiguration.schema.fields[_].scale == STRING
    input.Body.externalDataConfiguration.schema.fields[_].type == STRING
    input.Body.externalDataConfiguration.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.externalDataConfiguration.sourceFormat == STRING
    input.Body.externalDataConfiguration.sourceUris[_] == STRING
    input.Body.friendlyName == STRING
    input.Body.kind == STRING
    input.Body.labels.STRING == STRING
    input.Body.materializedView.allowNonIncrementalDefinition == BOOLEAN
    input.Body.materializedView.enableRefresh == BOOLEAN
    input.Body.materializedView.maxStaleness == STRING
    input.Body.materializedView.query == STRING
    input.Body.materializedView.refreshIntervalMs == STRING
    input.Body.maxStaleness == STRING
    input.Body.model.modelOptions.labels[_] == STRING
    input.Body.model.modelOptions.lossType == STRING
    input.Body.model.modelOptions.modelType == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].durationMs == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].evalLoss == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].index == INTEGER
    input.Body.model.trainingRuns[_].iterationResults[_].learnRate == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].trainingLoss == NUMBER
    input.Body.model.trainingRuns[_].startTime == STRING
    input.Body.model.trainingRuns[_].state == STRING
    input.Body.model.trainingRuns[_].trainingOptions.earlyStop == BOOLEAN
    input.Body.model.trainingRuns[_].trainingOptions.l1Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.l2Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRateStrategy == STRING
    input.Body.model.trainingRuns[_].trainingOptions.lineSearchInitLearnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.maxIteration == STRING
    input.Body.model.trainingRuns[_].trainingOptions.minRelProgress == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.warmStart == BOOLEAN
    input.Body.partitionDefinition.partitionedColumn[_].field == STRING
    input.Body.rangePartitioning.field == STRING
    input.Body.rangePartitioning.range.end == STRING
    input.Body.rangePartitioning.range.interval == STRING
    input.Body.rangePartitioning.range.start == STRING
    input.Body.requirePartitionFilter == BOOLEAN
    input.Body.resourceTags.STRING == STRING
    input.Body.schema.fields[_].categories.names[_] == STRING
    input.Body.schema.fields[_].collation == STRING
    input.Body.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.schema.fields[_].defaultValueExpression == STRING
    input.Body.schema.fields[_].description == STRING
    input.Body.schema.fields[_].fields[_] == NESTED
    input.Body.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.schema.fields[_].maxLength == STRING
    input.Body.schema.fields[_].mode == STRING
    input.Body.schema.fields[_].name == STRING
    input.Body.schema.fields[_].policyTags.names[_] == STRING
    input.Body.schema.fields[_].precision == STRING
    input.Body.schema.fields[_].rangeElementType.type == STRING
    input.Body.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.schema.fields[_].scale == STRING
    input.Body.schema.fields[_].type == STRING
    input.Body.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencedColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencingColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].name == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.datasetId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.projectId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.tableId == STRING
    input.Body.tableConstraints.primaryKey.columns[_] == STRING
    input.Body.tableReference.datasetId == STRING
    input.Body.tableReference.projectId == STRING
    input.Body.tableReference.tableId == STRING
    input.Body.tableReplicationInfo.replicationIntervalMs == STRING
    input.Body.tableReplicationInfo.sourceTable.datasetId == STRING
    input.Body.tableReplicationInfo.sourceTable.projectId == STRING
    input.Body.tableReplicationInfo.sourceTable.tableId == STRING
    input.Body.timePartitioning.expirationMs == STRING
    input.Body.timePartitioning.field == STRING
    input.Body.timePartitioning.requirePartitionFilter == BOOLEAN
    input.Body.timePartitioning.type == STRING
    input.Body.view.foreignDefinitions[_].dialect == STRING
    input.Body.view.foreignDefinitions[_].query == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.privacyUnitColumns[_] == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.threshold == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.epsilonBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxEpsilonPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxGroupsContributed == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.privacyUnitColumn == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinAllowedColumns[_] == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinCondition == enum_JoinRestrictionPolicyJoinCondition[_]
    input.Body.view.query == STRING
    input.Body.view.useExplicitColumnNames == BOOLEAN
    input.Body.view.useLegacySql == BOOLEAN
    input.Body.view.userDefinedFunctionResources[_].inlineCode == STRING
    input.Body.view.userDefinedFunctionResources[_].resourceUri == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.list

valid {
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.patch

enum_BigLakeConfigurationFileFormat := [ "FILE_FORMAT_UNSPECIFIED", "PARQUET" ]
enum_BigLakeConfigurationTableFormat := [ "TABLE_FORMAT_UNSPECIFIED", "ICEBERG" ]
enum_ExternalDataConfigurationDecimalTargetTypes := [ "DECIMAL_TARGET_TYPE_UNSPECIFIED", "NUMERIC", "BIGNUMERIC", "STRING" ]
enum_ExternalDataConfigurationFileSetSpecType := [ "FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH", "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" ]
enum_ExternalDataConfigurationJsonExtension := [ "JSON_EXTENSION_UNSPECIFIED", "GEOJSON" ]
enum_ExternalDataConfigurationMetadataCacheMode := [ "METADATA_CACHE_MODE_UNSPECIFIED", "AUTOMATIC", "MANUAL" ]
enum_ExternalDataConfigurationObjectMetadata := [ "OBJECT_METADATA_UNSPECIFIED", "DIRECTORY", "SIMPLE" ]
enum_ForeignTypeInfoTypeSystem := [ "TYPE_SYSTEM_UNSPECIFIED", "HIVE" ]
enum_JoinRestrictionPolicyJoinCondition := [ "JOIN_CONDITION_UNSPECIFIED", "JOIN_ANY", "JOIN_ALL", "JOIN_NOT_REQUIRED", "JOIN_BLOCKED" ]
enum_ParquetOptionsMapTargetType := [ "MAP_TARGET_TYPE_UNSPECIFIED", "ARRAY_OF_STRUCT" ]
enum_TableDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_TableFieldSchemaRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]

valid {
    input.Body.biglakeConfiguration.connectionId == STRING
    input.Body.biglakeConfiguration.fileFormat == enum_BigLakeConfigurationFileFormat[_]
    input.Body.biglakeConfiguration.storageUri == STRING
    input.Body.biglakeConfiguration.tableFormat == enum_BigLakeConfigurationTableFormat[_]
    input.Body.clustering.fields[_] == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultRoundingMode == enum_TableDefaultRoundingMode[_]
    input.Body.description == STRING
    input.Body.encryptionConfiguration.kmsKeyName == STRING
    input.Body.expirationTime == STRING
    input.Body.externalCatalogTableOptions.connectionId == STRING
    input.Body.externalCatalogTableOptions.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.inputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.locationUri == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.outputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.name == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.serializationLibrary == STRING
    input.Body.externalDataConfiguration.autodetect == BOOLEAN
    input.Body.externalDataConfiguration.avroOptions.useAvroLogicalTypes == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].fieldName == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierEncoded == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierString == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].familyId == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.ignoreUnspecifiedColumnFamilies == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.outputColumnFamiliesAsJson == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.readRowkeyAsString == BOOLEAN
    input.Body.externalDataConfiguration.compression == STRING
    input.Body.externalDataConfiguration.connectionId == STRING
    input.Body.externalDataConfiguration.csvOptions.allowJaggedRows == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.allowQuotedNewlines == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.encoding == STRING
    input.Body.externalDataConfiguration.csvOptions.fieldDelimiter == STRING
    input.Body.externalDataConfiguration.csvOptions.nullMarker == STRING
    input.Body.externalDataConfiguration.csvOptions.preserveAsciiControlCharacters == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.quote == STRING
    input.Body.externalDataConfiguration.csvOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.decimalTargetTypes[_] == enum_ExternalDataConfigurationDecimalTargetTypes[_]
    input.Body.externalDataConfiguration.fileSetSpecType == enum_ExternalDataConfigurationFileSetSpecType[_]
    input.Body.externalDataConfiguration.googleSheetsOptions.range == STRING
    input.Body.externalDataConfiguration.googleSheetsOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.mode == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.requirePartitionFilter == BOOLEAN
    input.Body.externalDataConfiguration.hivePartitioningOptions.sourceUriPrefix == STRING
    input.Body.externalDataConfiguration.ignoreUnknownValues == BOOLEAN
    input.Body.externalDataConfiguration.jsonExtension == enum_ExternalDataConfigurationJsonExtension[_]
    input.Body.externalDataConfiguration.jsonOptions.encoding == STRING
    input.Body.externalDataConfiguration.maxBadRecords == INTEGER
    input.Body.externalDataConfiguration.metadataCacheMode == enum_ExternalDataConfigurationMetadataCacheMode[_]
    input.Body.externalDataConfiguration.objectMetadata == enum_ExternalDataConfigurationObjectMetadata[_]
    input.Body.externalDataConfiguration.parquetOptions.enableListInference == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.enumAsString == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.mapTargetType == enum_ParquetOptionsMapTargetType[_]
    input.Body.externalDataConfiguration.referenceFileSchemaUri == STRING
    input.Body.externalDataConfiguration.schema.fields[_].categories.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].collation == STRING
    input.Body.externalDataConfiguration.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].defaultValueExpression == STRING
    input.Body.externalDataConfiguration.schema.fields[_].description == STRING
    input.Body.externalDataConfiguration.schema.fields[_].fields[_] == NESTED
    input.Body.externalDataConfiguration.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.externalDataConfiguration.schema.fields[_].maxLength == STRING
    input.Body.externalDataConfiguration.schema.fields[_].mode == STRING
    input.Body.externalDataConfiguration.schema.fields[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].policyTags.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].precision == STRING
    input.Body.externalDataConfiguration.schema.fields[_].rangeElementType.type == STRING
    input.Body.externalDataConfiguration.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.externalDataConfiguration.schema.fields[_].scale == STRING
    input.Body.externalDataConfiguration.schema.fields[_].type == STRING
    input.Body.externalDataConfiguration.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.externalDataConfiguration.sourceFormat == STRING
    input.Body.externalDataConfiguration.sourceUris[_] == STRING
    input.Body.friendlyName == STRING
    input.Body.kind == STRING
    input.Body.labels.STRING == STRING
    input.Body.materializedView.allowNonIncrementalDefinition == BOOLEAN
    input.Body.materializedView.enableRefresh == BOOLEAN
    input.Body.materializedView.maxStaleness == STRING
    input.Body.materializedView.query == STRING
    input.Body.materializedView.refreshIntervalMs == STRING
    input.Body.maxStaleness == STRING
    input.Body.model.modelOptions.labels[_] == STRING
    input.Body.model.modelOptions.lossType == STRING
    input.Body.model.modelOptions.modelType == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].durationMs == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].evalLoss == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].index == INTEGER
    input.Body.model.trainingRuns[_].iterationResults[_].learnRate == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].trainingLoss == NUMBER
    input.Body.model.trainingRuns[_].startTime == STRING
    input.Body.model.trainingRuns[_].state == STRING
    input.Body.model.trainingRuns[_].trainingOptions.earlyStop == BOOLEAN
    input.Body.model.trainingRuns[_].trainingOptions.l1Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.l2Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRateStrategy == STRING
    input.Body.model.trainingRuns[_].trainingOptions.lineSearchInitLearnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.maxIteration == STRING
    input.Body.model.trainingRuns[_].trainingOptions.minRelProgress == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.warmStart == BOOLEAN
    input.Body.partitionDefinition.partitionedColumn[_].field == STRING
    input.Body.rangePartitioning.field == STRING
    input.Body.rangePartitioning.range.end == STRING
    input.Body.rangePartitioning.range.interval == STRING
    input.Body.rangePartitioning.range.start == STRING
    input.Body.requirePartitionFilter == BOOLEAN
    input.Body.resourceTags.STRING == STRING
    input.Body.schema.fields[_].categories.names[_] == STRING
    input.Body.schema.fields[_].collation == STRING
    input.Body.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.schema.fields[_].defaultValueExpression == STRING
    input.Body.schema.fields[_].description == STRING
    input.Body.schema.fields[_].fields[_] == NESTED
    input.Body.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.schema.fields[_].maxLength == STRING
    input.Body.schema.fields[_].mode == STRING
    input.Body.schema.fields[_].name == STRING
    input.Body.schema.fields[_].policyTags.names[_] == STRING
    input.Body.schema.fields[_].precision == STRING
    input.Body.schema.fields[_].rangeElementType.type == STRING
    input.Body.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.schema.fields[_].scale == STRING
    input.Body.schema.fields[_].type == STRING
    input.Body.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencedColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencingColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].name == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.datasetId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.projectId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.tableId == STRING
    input.Body.tableConstraints.primaryKey.columns[_] == STRING
    input.Body.tableReference.datasetId == STRING
    input.Body.tableReference.projectId == STRING
    input.Body.tableReference.tableId == STRING
    input.Body.tableReplicationInfo.replicationIntervalMs == STRING
    input.Body.tableReplicationInfo.sourceTable.datasetId == STRING
    input.Body.tableReplicationInfo.sourceTable.projectId == STRING
    input.Body.tableReplicationInfo.sourceTable.tableId == STRING
    input.Body.timePartitioning.expirationMs == STRING
    input.Body.timePartitioning.field == STRING
    input.Body.timePartitioning.requirePartitionFilter == BOOLEAN
    input.Body.timePartitioning.type == STRING
    input.Body.view.foreignDefinitions[_].dialect == STRING
    input.Body.view.foreignDefinitions[_].query == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.privacyUnitColumns[_] == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.threshold == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.epsilonBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxEpsilonPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxGroupsContributed == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.privacyUnitColumn == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinAllowedColumns[_] == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinCondition == enum_JoinRestrictionPolicyJoinCondition[_]
    input.Body.view.query == STRING
    input.Body.view.useExplicitColumnNames == BOOLEAN
    input.Body.view.useLegacySql == BOOLEAN
    input.Body.view.userDefinedFunctionResources[_].inlineCode == STRING
    input.Body.view.userDefinedFunctionResources[_].resourceUri == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.Qs.autodetect_schema == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}

bigquery.tables.setIamPolicy

enum_AuditLogConfigLogType := [ "LOG_TYPE_UNSPECIFIED", "ADMIN_READ", "DATA_WRITE", "DATA_READ" ]

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_AuditLogConfigLogType[_]
    input.Body.policy.auditConfigs[_].service == STRING
    input.Body.policy.bindings[_].condition.description == STRING
    input.Body.policy.bindings[_].condition.expression == STRING
    input.Body.policy.bindings[_].condition.location == STRING
    input.Body.policy.bindings[_].condition.title == STRING
    input.Body.policy.bindings[_].members[_] == STRING
    input.Body.policy.bindings[_].role == STRING
    input.Body.policy.etag == STRING
    input.Body.policy.version == INTEGER
    input.Body.updateMask == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.tables.testIamPermissions

valid {
    input.Body.permissions[_] == STRING
    input.ReqMap.resource == STRING
    input.ProviderMetadata.Region == STRING
}

bigquery.tables.update

enum_BigLakeConfigurationFileFormat := [ "FILE_FORMAT_UNSPECIFIED", "PARQUET" ]
enum_BigLakeConfigurationTableFormat := [ "TABLE_FORMAT_UNSPECIFIED", "ICEBERG" ]
enum_ExternalDataConfigurationDecimalTargetTypes := [ "DECIMAL_TARGET_TYPE_UNSPECIFIED", "NUMERIC", "BIGNUMERIC", "STRING" ]
enum_ExternalDataConfigurationFileSetSpecType := [ "FILE_SET_SPEC_TYPE_FILE_SYSTEM_MATCH", "FILE_SET_SPEC_TYPE_NEW_LINE_DELIMITED_MANIFEST" ]
enum_ExternalDataConfigurationJsonExtension := [ "JSON_EXTENSION_UNSPECIFIED", "GEOJSON" ]
enum_ExternalDataConfigurationMetadataCacheMode := [ "METADATA_CACHE_MODE_UNSPECIFIED", "AUTOMATIC", "MANUAL" ]
enum_ExternalDataConfigurationObjectMetadata := [ "OBJECT_METADATA_UNSPECIFIED", "DIRECTORY", "SIMPLE" ]
enum_ForeignTypeInfoTypeSystem := [ "TYPE_SYSTEM_UNSPECIFIED", "HIVE" ]
enum_JoinRestrictionPolicyJoinCondition := [ "JOIN_CONDITION_UNSPECIFIED", "JOIN_ANY", "JOIN_ALL", "JOIN_NOT_REQUIRED", "JOIN_BLOCKED" ]
enum_ParquetOptionsMapTargetType := [ "MAP_TARGET_TYPE_UNSPECIFIED", "ARRAY_OF_STRUCT" ]
enum_TableDefaultRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]
enum_TableFieldSchemaRoundingMode := [ "ROUNDING_MODE_UNSPECIFIED", "ROUND_HALF_AWAY_FROM_ZERO", "ROUND_HALF_EVEN" ]

valid {
    input.Body.biglakeConfiguration.connectionId == STRING
    input.Body.biglakeConfiguration.fileFormat == enum_BigLakeConfigurationFileFormat[_]
    input.Body.biglakeConfiguration.storageUri == STRING
    input.Body.biglakeConfiguration.tableFormat == enum_BigLakeConfigurationTableFormat[_]
    input.Body.clustering.fields[_] == STRING
    input.Body.defaultCollation == STRING
    input.Body.defaultRoundingMode == enum_TableDefaultRoundingMode[_]
    input.Body.description == STRING
    input.Body.encryptionConfiguration.kmsKeyName == STRING
    input.Body.expirationTime == STRING
    input.Body.externalCatalogTableOptions.connectionId == STRING
    input.Body.externalCatalogTableOptions.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.inputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.locationUri == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.outputFormat == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.name == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.parameters.STRING == STRING
    input.Body.externalCatalogTableOptions.storageDescriptor.serdeInfo.serializationLibrary == STRING
    input.Body.externalDataConfiguration.autodetect == BOOLEAN
    input.Body.externalDataConfiguration.avroOptions.useAvroLogicalTypes == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].fieldName == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierEncoded == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].qualifierString == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].columns[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].encoding == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].familyId == STRING
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].onlyReadLatest == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.columnFamilies[_].type == STRING
    input.Body.externalDataConfiguration.bigtableOptions.ignoreUnspecifiedColumnFamilies == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.outputColumnFamiliesAsJson == BOOLEAN
    input.Body.externalDataConfiguration.bigtableOptions.readRowkeyAsString == BOOLEAN
    input.Body.externalDataConfiguration.compression == STRING
    input.Body.externalDataConfiguration.connectionId == STRING
    input.Body.externalDataConfiguration.csvOptions.allowJaggedRows == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.allowQuotedNewlines == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.encoding == STRING
    input.Body.externalDataConfiguration.csvOptions.fieldDelimiter == STRING
    input.Body.externalDataConfiguration.csvOptions.nullMarker == STRING
    input.Body.externalDataConfiguration.csvOptions.preserveAsciiControlCharacters == BOOLEAN
    input.Body.externalDataConfiguration.csvOptions.quote == STRING
    input.Body.externalDataConfiguration.csvOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.decimalTargetTypes[_] == enum_ExternalDataConfigurationDecimalTargetTypes[_]
    input.Body.externalDataConfiguration.fileSetSpecType == enum_ExternalDataConfigurationFileSetSpecType[_]
    input.Body.externalDataConfiguration.googleSheetsOptions.range == STRING
    input.Body.externalDataConfiguration.googleSheetsOptions.skipLeadingRows == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.mode == STRING
    input.Body.externalDataConfiguration.hivePartitioningOptions.requirePartitionFilter == BOOLEAN
    input.Body.externalDataConfiguration.hivePartitioningOptions.sourceUriPrefix == STRING
    input.Body.externalDataConfiguration.ignoreUnknownValues == BOOLEAN
    input.Body.externalDataConfiguration.jsonExtension == enum_ExternalDataConfigurationJsonExtension[_]
    input.Body.externalDataConfiguration.jsonOptions.encoding == STRING
    input.Body.externalDataConfiguration.maxBadRecords == INTEGER
    input.Body.externalDataConfiguration.metadataCacheMode == enum_ExternalDataConfigurationMetadataCacheMode[_]
    input.Body.externalDataConfiguration.objectMetadata == enum_ExternalDataConfigurationObjectMetadata[_]
    input.Body.externalDataConfiguration.parquetOptions.enableListInference == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.enumAsString == BOOLEAN
    input.Body.externalDataConfiguration.parquetOptions.mapTargetType == enum_ParquetOptionsMapTargetType[_]
    input.Body.externalDataConfiguration.referenceFileSchemaUri == STRING
    input.Body.externalDataConfiguration.schema.fields[_].categories.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].collation == STRING
    input.Body.externalDataConfiguration.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].defaultValueExpression == STRING
    input.Body.externalDataConfiguration.schema.fields[_].description == STRING
    input.Body.externalDataConfiguration.schema.fields[_].fields[_] == NESTED
    input.Body.externalDataConfiguration.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.externalDataConfiguration.schema.fields[_].maxLength == STRING
    input.Body.externalDataConfiguration.schema.fields[_].mode == STRING
    input.Body.externalDataConfiguration.schema.fields[_].name == STRING
    input.Body.externalDataConfiguration.schema.fields[_].policyTags.names[_] == STRING
    input.Body.externalDataConfiguration.schema.fields[_].precision == STRING
    input.Body.externalDataConfiguration.schema.fields[_].rangeElementType.type == STRING
    input.Body.externalDataConfiguration.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.externalDataConfiguration.schema.fields[_].scale == STRING
    input.Body.externalDataConfiguration.schema.fields[_].type == STRING
    input.Body.externalDataConfiguration.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.externalDataConfiguration.sourceFormat == STRING
    input.Body.externalDataConfiguration.sourceUris[_] == STRING
    input.Body.friendlyName == STRING
    input.Body.kind == STRING
    input.Body.labels.STRING == STRING
    input.Body.materializedView.allowNonIncrementalDefinition == BOOLEAN
    input.Body.materializedView.enableRefresh == BOOLEAN
    input.Body.materializedView.maxStaleness == STRING
    input.Body.materializedView.query == STRING
    input.Body.materializedView.refreshIntervalMs == STRING
    input.Body.maxStaleness == STRING
    input.Body.model.modelOptions.labels[_] == STRING
    input.Body.model.modelOptions.lossType == STRING
    input.Body.model.modelOptions.modelType == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].durationMs == STRING
    input.Body.model.trainingRuns[_].iterationResults[_].evalLoss == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].index == INTEGER
    input.Body.model.trainingRuns[_].iterationResults[_].learnRate == NUMBER
    input.Body.model.trainingRuns[_].iterationResults[_].trainingLoss == NUMBER
    input.Body.model.trainingRuns[_].startTime == STRING
    input.Body.model.trainingRuns[_].state == STRING
    input.Body.model.trainingRuns[_].trainingOptions.earlyStop == BOOLEAN
    input.Body.model.trainingRuns[_].trainingOptions.l1Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.l2Reg == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.learnRateStrategy == STRING
    input.Body.model.trainingRuns[_].trainingOptions.lineSearchInitLearnRate == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.maxIteration == STRING
    input.Body.model.trainingRuns[_].trainingOptions.minRelProgress == NUMBER
    input.Body.model.trainingRuns[_].trainingOptions.warmStart == BOOLEAN
    input.Body.partitionDefinition.partitionedColumn[_].field == STRING
    input.Body.rangePartitioning.field == STRING
    input.Body.rangePartitioning.range.end == STRING
    input.Body.rangePartitioning.range.interval == STRING
    input.Body.rangePartitioning.range.start == STRING
    input.Body.requirePartitionFilter == BOOLEAN
    input.Body.resourceTags.STRING == STRING
    input.Body.schema.fields[_].categories.names[_] == STRING
    input.Body.schema.fields[_].collation == STRING
    input.Body.schema.fields[_].dataPolicies[_].name == STRING
    input.Body.schema.fields[_].defaultValueExpression == STRING
    input.Body.schema.fields[_].description == STRING
    input.Body.schema.fields[_].fields[_] == NESTED
    input.Body.schema.fields[_].foreignTypeDefinition == STRING
    input.Body.schema.fields[_].maxLength == STRING
    input.Body.schema.fields[_].mode == STRING
    input.Body.schema.fields[_].name == STRING
    input.Body.schema.fields[_].policyTags.names[_] == STRING
    input.Body.schema.fields[_].precision == STRING
    input.Body.schema.fields[_].rangeElementType.type == STRING
    input.Body.schema.fields[_].roundingMode == enum_TableFieldSchemaRoundingMode[_]
    input.Body.schema.fields[_].scale == STRING
    input.Body.schema.fields[_].type == STRING
    input.Body.schema.foreignTypeInfo.typeSystem == enum_ForeignTypeInfoTypeSystem[_]
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencedColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].columnReferences[_].referencingColumn == STRING
    input.Body.tableConstraints.foreignKeys[_].name == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.datasetId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.projectId == STRING
    input.Body.tableConstraints.foreignKeys[_].referencedTable.tableId == STRING
    input.Body.tableConstraints.primaryKey.columns[_] == STRING
    input.Body.tableReference.datasetId == STRING
    input.Body.tableReference.projectId == STRING
    input.Body.tableReference.tableId == STRING
    input.Body.tableReplicationInfo.replicationIntervalMs == STRING
    input.Body.tableReplicationInfo.sourceTable.datasetId == STRING
    input.Body.tableReplicationInfo.sourceTable.projectId == STRING
    input.Body.tableReplicationInfo.sourceTable.tableId == STRING
    input.Body.timePartitioning.expirationMs == STRING
    input.Body.timePartitioning.field == STRING
    input.Body.timePartitioning.requirePartitionFilter == BOOLEAN
    input.Body.timePartitioning.type == STRING
    input.Body.view.foreignDefinitions[_].dialect == STRING
    input.Body.view.foreignDefinitions[_].query == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.privacyUnitColumns[_] == STRING
    input.Body.view.privacyPolicy.aggregationThresholdPolicy.threshold == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.deltaPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.epsilonBudget == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxEpsilonPerQuery == NUMBER
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.maxGroupsContributed == STRING
    input.Body.view.privacyPolicy.differentialPrivacyPolicy.privacyUnitColumn == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinAllowedColumns[_] == STRING
    input.Body.view.privacyPolicy.joinRestrictionPolicy.joinCondition == enum_JoinRestrictionPolicyJoinCondition[_]
    input.Body.view.query == STRING
    input.Body.view.useExplicitColumnNames == BOOLEAN
    input.Body.view.useLegacySql == BOOLEAN
    input.Body.view.userDefinedFunctionResources[_].inlineCode == STRING
    input.Body.view.userDefinedFunctionResources[_].resourceUri == STRING
    input.ReqMap.datasetId == STRING
    input.ReqMap.ProjectID == STRING
    input.ReqMap.tableId == STRING
    input.Qs.autodetect_schema == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.ProjectID == STRING
}