dataplex.projects.locations.aspectTypes.create

valid {
    input.Body.authorization.alternateUsePermission == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.metadataTemplate.annotations.deprecated == STRING
    input.Body.metadataTemplate.annotations.description == STRING
    input.Body.metadataTemplate.annotations.displayName == STRING
    input.Body.metadataTemplate.annotations.displayOrder == INTEGER
    input.Body.metadataTemplate.annotations.stringType == STRING
    input.Body.metadataTemplate.annotations.stringValues[_] == STRING
    input.Body.metadataTemplate.arrayItems == NESTED
    input.Body.metadataTemplate.constraints.required == BOOLEAN
    input.Body.metadataTemplate.enumValues[_].deprecated == STRING
    input.Body.metadataTemplate.enumValues[_].index == INTEGER
    input.Body.metadataTemplate.enumValues[_].name == STRING
    input.Body.metadataTemplate.index == INTEGER
    input.Body.metadataTemplate.mapItems == NESTED
    input.Body.metadataTemplate.name == STRING
    input.Body.metadataTemplate.recordFields[_] == NESTED
    input.Body.metadataTemplate.type == STRING
    input.Body.metadataTemplate.typeId == STRING
    input.Body.metadataTemplate.typeRef == STRING
    input.ReqMap.parent == STRING
    input.Qs.aspectTypeId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.aspectTypes.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.aspectTypes.get

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

dataplex.projects.locations.aspectTypes.getIamPolicy

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

dataplex.projects.locations.aspectTypes.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.aspectTypes.patch

valid {
    input.Body.authorization.alternateUsePermission == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.metadataTemplate.annotations.deprecated == STRING
    input.Body.metadataTemplate.annotations.description == STRING
    input.Body.metadataTemplate.annotations.displayName == STRING
    input.Body.metadataTemplate.annotations.displayOrder == INTEGER
    input.Body.metadataTemplate.annotations.stringType == STRING
    input.Body.metadataTemplate.annotations.stringValues[_] == STRING
    input.Body.metadataTemplate.arrayItems == NESTED
    input.Body.metadataTemplate.constraints.required == BOOLEAN
    input.Body.metadataTemplate.enumValues[_].deprecated == STRING
    input.Body.metadataTemplate.enumValues[_].index == INTEGER
    input.Body.metadataTemplate.enumValues[_].name == STRING
    input.Body.metadataTemplate.index == INTEGER
    input.Body.metadataTemplate.mapItems == NESTED
    input.Body.metadataTemplate.name == STRING
    input.Body.metadataTemplate.recordFields[_] == NESTED
    input.Body.metadataTemplate.type == STRING
    input.Body.metadataTemplate.typeId == STRING
    input.Body.metadataTemplate.typeRef == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.aspectTypes.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.aspectTypes.testIamPermissions

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

dataplex.projects.locations.dataAttributeBindings.create

valid {
    input.Body.attributes[_] == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.paths[_].attributes[_] == STRING
    input.Body.paths[_].name == STRING
    input.Body.resource == STRING
    input.ReqMap.parent == STRING
    input.Qs.dataAttributeBindingId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataAttributeBindings.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataAttributeBindings.get

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

dataplex.projects.locations.dataAttributeBindings.getIamPolicy

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

dataplex.projects.locations.dataAttributeBindings.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataAttributeBindings.patch

valid {
    input.Body.attributes[_] == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.paths[_].attributes[_] == STRING
    input.Body.paths[_].name == STRING
    input.Body.resource == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataAttributeBindings.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.dataAttributeBindings.testIamPermissions

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

dataplex.projects.locations.dataScans.create

enum_GoogleCloudDataplexV1DataQualityRuleStatisticRangeExpectationStatistic := [ "STATISTIC_UNDEFINED", "MEAN", "MIN", "MAX" ]

valid {
    input.Body.data.entity == STRING
    input.Body.data.resource == STRING
    input.Body.dataProfileSpec.excludeFields.fieldNames[_] == STRING
    input.Body.dataProfileSpec.includeFields.fieldNames[_] == STRING
    input.Body.dataProfileSpec.postScanActions.bigqueryExport.resultsTable == STRING
    input.Body.dataProfileSpec.rowFilter == STRING
    input.Body.dataProfileSpec.samplingPercent == NUMBER
    input.Body.dataQualitySpec.postScanActions.bigqueryExport.resultsTable == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.jobEndTrigger.STRING == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.jobFailureTrigger.STRING == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.recipients.emails[_] == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.scoreThresholdTrigger.scoreThreshold == NUMBER
    input.Body.dataQualitySpec.rowFilter == STRING
    input.Body.dataQualitySpec.rules[_].column == STRING
    input.Body.dataQualitySpec.rules[_].description == STRING
    input.Body.dataQualitySpec.rules[_].dimension == STRING
    input.Body.dataQualitySpec.rules[_].ignoreNull == BOOLEAN
    input.Body.dataQualitySpec.rules[_].name == STRING
    input.Body.dataQualitySpec.rules[_].nonNullExpectation.STRING == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.maxValue == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.minValue == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.strictMaxEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].rangeExpectation.strictMinEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].regexExpectation.regex == STRING
    input.Body.dataQualitySpec.rules[_].rowConditionExpectation.sqlExpression == STRING
    input.Body.dataQualitySpec.rules[_].setExpectation.values[_] == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.maxValue == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.minValue == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.statistic == enum_GoogleCloudDataplexV1DataQualityRuleStatisticRangeExpectationStatistic[_]
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.strictMaxEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.strictMinEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].tableConditionExpectation.sqlExpression == STRING
    input.Body.dataQualitySpec.rules[_].threshold == NUMBER
    input.Body.dataQualitySpec.rules[_].uniquenessExpectation.STRING == STRING
    input.Body.dataQualitySpec.samplingPercent == NUMBER
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.executionSpec.field == STRING
    input.Body.executionSpec.trigger.onDemand.STRING == STRING
    input.Body.executionSpec.trigger.schedule.cron == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.parent == STRING
    input.Qs.dataScanId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.delete

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

dataplex.projects.locations.dataScans.generateDataQualityRules

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.get

enum_ViewParameter := [ "DATA_SCAN_VIEW_UNSPECIFIED", "BASIC", "FULL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.getIamPolicy

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

dataplex.projects.locations.dataScans.jobs.generateDataQualityRules

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.jobs.get

enum_ViewParameter := [ "DATA_SCAN_JOB_VIEW_UNSPECIFIED", "BASIC", "FULL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.jobs.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.patch

enum_GoogleCloudDataplexV1DataQualityRuleStatisticRangeExpectationStatistic := [ "STATISTIC_UNDEFINED", "MEAN", "MIN", "MAX" ]

valid {
    input.Body.data.entity == STRING
    input.Body.data.resource == STRING
    input.Body.dataProfileSpec.excludeFields.fieldNames[_] == STRING
    input.Body.dataProfileSpec.includeFields.fieldNames[_] == STRING
    input.Body.dataProfileSpec.postScanActions.bigqueryExport.resultsTable == STRING
    input.Body.dataProfileSpec.rowFilter == STRING
    input.Body.dataProfileSpec.samplingPercent == NUMBER
    input.Body.dataQualitySpec.postScanActions.bigqueryExport.resultsTable == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.jobEndTrigger.STRING == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.jobFailureTrigger.STRING == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.recipients.emails[_] == STRING
    input.Body.dataQualitySpec.postScanActions.notificationReport.scoreThresholdTrigger.scoreThreshold == NUMBER
    input.Body.dataQualitySpec.rowFilter == STRING
    input.Body.dataQualitySpec.rules[_].column == STRING
    input.Body.dataQualitySpec.rules[_].description == STRING
    input.Body.dataQualitySpec.rules[_].dimension == STRING
    input.Body.dataQualitySpec.rules[_].ignoreNull == BOOLEAN
    input.Body.dataQualitySpec.rules[_].name == STRING
    input.Body.dataQualitySpec.rules[_].nonNullExpectation.STRING == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.maxValue == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.minValue == STRING
    input.Body.dataQualitySpec.rules[_].rangeExpectation.strictMaxEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].rangeExpectation.strictMinEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].regexExpectation.regex == STRING
    input.Body.dataQualitySpec.rules[_].rowConditionExpectation.sqlExpression == STRING
    input.Body.dataQualitySpec.rules[_].setExpectation.values[_] == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.maxValue == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.minValue == STRING
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.statistic == enum_GoogleCloudDataplexV1DataQualityRuleStatisticRangeExpectationStatistic[_]
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.strictMaxEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].statisticRangeExpectation.strictMinEnabled == BOOLEAN
    input.Body.dataQualitySpec.rules[_].tableConditionExpectation.sqlExpression == STRING
    input.Body.dataQualitySpec.rules[_].threshold == NUMBER
    input.Body.dataQualitySpec.rules[_].uniquenessExpectation.STRING == STRING
    input.Body.dataQualitySpec.samplingPercent == NUMBER
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.executionSpec.field == STRING
    input.Body.executionSpec.trigger.onDemand.STRING == STRING
    input.Body.executionSpec.trigger.schedule.cron == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.run

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataScans.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.dataScans.testIamPermissions

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

dataplex.projects.locations.dataTaxonomies.attributes.create

valid {
    input.Body.dataAccessSpec.readers[_] == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.parentId == STRING
    input.Body.resourceAccessSpec.owners[_] == STRING
    input.Body.resourceAccessSpec.readers[_] == STRING
    input.Body.resourceAccessSpec.writers[_] == STRING
    input.ReqMap.parent == STRING
    input.Qs.dataAttributeId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.attributes.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.attributes.get

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

dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy

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

dataplex.projects.locations.dataTaxonomies.attributes.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.attributes.patch

valid {
    input.Body.dataAccessSpec.readers[_] == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.parentId == STRING
    input.Body.resourceAccessSpec.owners[_] == STRING
    input.Body.resourceAccessSpec.readers[_] == STRING
    input.Body.resourceAccessSpec.writers[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.attributes.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.dataTaxonomies.attributes.testIamPermissions

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

dataplex.projects.locations.dataTaxonomies.create

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.parent == STRING
    input.Qs.dataTaxonomyId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.get

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

dataplex.projects.locations.dataTaxonomies.getIamPolicy

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

dataplex.projects.locations.dataTaxonomies.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.patch

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.dataTaxonomies.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.dataTaxonomies.testIamPermissions

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

dataplex.projects.locations.entryGroups.create

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.parent == STRING
    input.Qs.entryGroupId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.entries.create

valid {
    input.Body.aspects.STRING.aspectSource.createTime == STRING
    input.Body.aspects.STRING.aspectSource.updateTime == STRING
    input.Body.aspects.STRING.data.STRING == ANY
    input.Body.entrySource.ancestors[_].name == STRING
    input.Body.entrySource.ancestors[_].type == STRING
    input.Body.entrySource.createTime == STRING
    input.Body.entrySource.description == STRING
    input.Body.entrySource.displayName == STRING
    input.Body.entrySource.labels.STRING == STRING
    input.Body.entrySource.platform == STRING
    input.Body.entrySource.resource == STRING
    input.Body.entrySource.system == STRING
    input.Body.entrySource.updateTime == STRING
    input.Body.entryType == STRING
    input.Body.fullyQualifiedName == STRING
    input.Body.name == STRING
    input.Body.parentEntry == STRING
    input.ReqMap.parent == STRING
    input.Qs.entryId == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.entries.delete

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

dataplex.projects.locations.entryGroups.entries.get

enum_ViewParameter := [ "ENTRY_VIEW_UNSPECIFIED", "BASIC", "FULL", "CUSTOM", "ALL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.aspectTypes == STRING
    input.Qs.paths == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.entries.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.entries.patch

valid {
    input.Body.aspects.STRING.aspectSource.createTime == STRING
    input.Body.aspects.STRING.aspectSource.updateTime == STRING
    input.Body.aspects.STRING.data.STRING == ANY
    input.Body.entrySource.ancestors[_].name == STRING
    input.Body.entrySource.ancestors[_].type == STRING
    input.Body.entrySource.createTime == STRING
    input.Body.entrySource.description == STRING
    input.Body.entrySource.displayName == STRING
    input.Body.entrySource.labels.STRING == STRING
    input.Body.entrySource.platform == STRING
    input.Body.entrySource.resource == STRING
    input.Body.entrySource.system == STRING
    input.Body.entrySource.updateTime == STRING
    input.Body.entryType == STRING
    input.Body.fullyQualifiedName == STRING
    input.Body.name == STRING
    input.Body.parentEntry == STRING
    input.ReqMap.name == STRING
    input.Qs.allowMissing == BOOLEAN
    input.Qs.aspectKeys == STRING
    input.Qs.deleteMissingAspects == BOOLEAN
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.get

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

dataplex.projects.locations.entryGroups.getIamPolicy

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

dataplex.projects.locations.entryGroups.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.patch

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryGroups.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.entryGroups.testIamPermissions

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

dataplex.projects.locations.entryTypes.create

valid {
    input.Body.authorization.alternateUsePermission == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.platform == STRING
    input.Body.requiredAspects[_].type == STRING
    input.Body.system == STRING
    input.Body.typeAliases[_] == STRING
    input.ReqMap.parent == STRING
    input.Qs.entryTypeId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryTypes.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryTypes.get

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

dataplex.projects.locations.entryTypes.getIamPolicy

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

dataplex.projects.locations.entryTypes.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryTypes.patch

valid {
    input.Body.authorization.alternateUsePermission == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.labels.STRING == STRING
    input.Body.platform == STRING
    input.Body.requiredAspects[_].type == STRING
    input.Body.system == STRING
    input.Body.typeAliases[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.entryTypes.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.entryTypes.testIamPermissions

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

dataplex.projects.locations.get

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

dataplex.projects.locations.governanceRules.getIamPolicy

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

dataplex.projects.locations.governanceRules.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.governanceRules.testIamPermissions

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

dataplex.projects.locations.lakes.actions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.content.create

enum_GoogleCloudDataplexV1ContentNotebookKernelType := [ "KERNEL_TYPE_UNSPECIFIED", "PYTHON3" ]
enum_GoogleCloudDataplexV1ContentSqlScriptEngine := [ "QUERY_ENGINE_UNSPECIFIED", "SPARK" ]

valid {
    input.Body.dataText == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.kernelType == enum_GoogleCloudDataplexV1ContentNotebookKernelType[_]
    input.Body.path == STRING
    input.Body.sqlScript.engine == enum_GoogleCloudDataplexV1ContentSqlScriptEngine[_]
    input.ReqMap.parent == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.content.delete

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

dataplex.projects.locations.lakes.content.get

enum_ViewParameter := [ "CONTENT_VIEW_UNSPECIFIED", "BASIC", "FULL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.content.getIamPolicy

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

dataplex.projects.locations.lakes.content.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.content.patch

enum_GoogleCloudDataplexV1ContentNotebookKernelType := [ "KERNEL_TYPE_UNSPECIFIED", "PYTHON3" ]
enum_GoogleCloudDataplexV1ContentSqlScriptEngine := [ "QUERY_ENGINE_UNSPECIFIED", "SPARK" ]

valid {
    input.Body.dataText == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.kernelType == enum_GoogleCloudDataplexV1ContentNotebookKernelType[_]
    input.Body.path == STRING
    input.Body.sqlScript.engine == enum_GoogleCloudDataplexV1ContentSqlScriptEngine[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.content.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.content.testIamPermissions

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

dataplex.projects.locations.lakes.contentitems.create

enum_GoogleCloudDataplexV1ContentNotebookKernelType := [ "KERNEL_TYPE_UNSPECIFIED", "PYTHON3" ]
enum_GoogleCloudDataplexV1ContentSqlScriptEngine := [ "QUERY_ENGINE_UNSPECIFIED", "SPARK" ]

valid {
    input.Body.dataText == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.kernelType == enum_GoogleCloudDataplexV1ContentNotebookKernelType[_]
    input.Body.path == STRING
    input.Body.sqlScript.engine == enum_GoogleCloudDataplexV1ContentSqlScriptEngine[_]
    input.ReqMap.parent == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.contentitems.delete

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

dataplex.projects.locations.lakes.contentitems.get

enum_ViewParameter := [ "CONTENT_VIEW_UNSPECIFIED", "BASIC", "FULL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.contentitems.getIamPolicy

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

dataplex.projects.locations.lakes.contentitems.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.contentitems.patch

enum_GoogleCloudDataplexV1ContentNotebookKernelType := [ "KERNEL_TYPE_UNSPECIFIED", "PYTHON3" ]
enum_GoogleCloudDataplexV1ContentSqlScriptEngine := [ "QUERY_ENGINE_UNSPECIFIED", "SPARK" ]

valid {
    input.Body.dataText == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.kernelType == enum_GoogleCloudDataplexV1ContentNotebookKernelType[_]
    input.Body.path == STRING
    input.Body.sqlScript.engine == enum_GoogleCloudDataplexV1ContentSqlScriptEngine[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.contentitems.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.contentitems.testIamPermissions

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

dataplex.projects.locations.lakes.create

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.metastore.service == STRING
    input.ReqMap.parent == STRING
    input.Qs.lakeId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.delete

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

dataplex.projects.locations.lakes.environments.create

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.infrastructureSpec.compute.diskSizeGb == INTEGER
    input.Body.infrastructureSpec.compute.maxNodeCount == INTEGER
    input.Body.infrastructureSpec.compute.nodeCount == INTEGER
    input.Body.infrastructureSpec.osImage.imageVersion == STRING
    input.Body.infrastructureSpec.osImage.javaLibraries[_] == STRING
    input.Body.infrastructureSpec.osImage.properties.STRING == STRING
    input.Body.infrastructureSpec.osImage.pythonPackages[_] == STRING
    input.Body.labels.STRING == STRING
    input.Body.sessionSpec.enableFastStartup == BOOLEAN
    input.Body.sessionSpec.maxIdleDuration == STRING
    input.ReqMap.parent == STRING
    input.Qs.environmentId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.environments.delete

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

dataplex.projects.locations.lakes.environments.get

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

dataplex.projects.locations.lakes.environments.getIamPolicy

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

dataplex.projects.locations.lakes.environments.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.environments.patch

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.infrastructureSpec.compute.diskSizeGb == INTEGER
    input.Body.infrastructureSpec.compute.maxNodeCount == INTEGER
    input.Body.infrastructureSpec.compute.nodeCount == INTEGER
    input.Body.infrastructureSpec.osImage.imageVersion == STRING
    input.Body.infrastructureSpec.osImage.javaLibraries[_] == STRING
    input.Body.infrastructureSpec.osImage.properties.STRING == STRING
    input.Body.infrastructureSpec.osImage.pythonPackages[_] == STRING
    input.Body.labels.STRING == STRING
    input.Body.sessionSpec.enableFastStartup == BOOLEAN
    input.Body.sessionSpec.maxIdleDuration == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.environments.sessions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.environments.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.environments.testIamPermissions

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

dataplex.projects.locations.lakes.get

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

dataplex.projects.locations.lakes.getIamPolicy

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

dataplex.projects.locations.lakes.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.patch

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.metastore.service == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.tasks.create

enum_GoogleCloudDataplexV1TaskTriggerSpecType := [ "TYPE_UNSPECIFIED", "ON_DEMAND", "RECURRING" ]

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.executionSpec.args.STRING == STRING
    input.Body.executionSpec.kmsKey == STRING
    input.Body.executionSpec.maxJobExecutionLifetime == STRING
    input.Body.executionSpec.project == STRING
    input.Body.executionSpec.serviceAccount == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.archiveUris[_] == STRING
    input.Body.notebook.fileUris[_] == STRING
    input.Body.notebook.infrastructureSpec.batch.executorsCount == INTEGER
    input.Body.notebook.infrastructureSpec.batch.maxExecutorsCount == INTEGER
    input.Body.notebook.infrastructureSpec.containerImage.image == STRING
    input.Body.notebook.infrastructureSpec.containerImage.javaJars[_] == STRING
    input.Body.notebook.infrastructureSpec.containerImage.properties.STRING == STRING
    input.Body.notebook.infrastructureSpec.containerImage.pythonPackages[_] == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.network == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.networkTags[_] == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.subNetwork == STRING
    input.Body.notebook.notebook == STRING
    input.Body.spark.archiveUris[_] == STRING
    input.Body.spark.fileUris[_] == STRING
    input.Body.spark.infrastructureSpec.batch.executorsCount == INTEGER
    input.Body.spark.infrastructureSpec.batch.maxExecutorsCount == INTEGER
    input.Body.spark.infrastructureSpec.containerImage.image == STRING
    input.Body.spark.infrastructureSpec.containerImage.javaJars[_] == STRING
    input.Body.spark.infrastructureSpec.containerImage.properties.STRING == STRING
    input.Body.spark.infrastructureSpec.containerImage.pythonPackages[_] == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.network == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.networkTags[_] == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.subNetwork == STRING
    input.Body.spark.mainClass == STRING
    input.Body.spark.mainJarFileUri == STRING
    input.Body.spark.pythonScriptFile == STRING
    input.Body.spark.sqlScript == STRING
    input.Body.spark.sqlScriptFile == STRING
    input.Body.triggerSpec.disabled == BOOLEAN
    input.Body.triggerSpec.maxRetries == INTEGER
    input.Body.triggerSpec.schedule == STRING
    input.Body.triggerSpec.startTime == STRING
    input.Body.triggerSpec.type == enum_GoogleCloudDataplexV1TaskTriggerSpecType[_]
    input.ReqMap.parent == STRING
    input.Qs.taskId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.delete

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

dataplex.projects.locations.lakes.tasks.get

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

dataplex.projects.locations.lakes.tasks.getIamPolicy

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

dataplex.projects.locations.lakes.tasks.jobs.cancel

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.jobs.get

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

dataplex.projects.locations.lakes.tasks.jobs.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.patch

enum_GoogleCloudDataplexV1TaskTriggerSpecType := [ "TYPE_UNSPECIFIED", "ON_DEMAND", "RECURRING" ]

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.executionSpec.args.STRING == STRING
    input.Body.executionSpec.kmsKey == STRING
    input.Body.executionSpec.maxJobExecutionLifetime == STRING
    input.Body.executionSpec.project == STRING
    input.Body.executionSpec.serviceAccount == STRING
    input.Body.labels.STRING == STRING
    input.Body.notebook.archiveUris[_] == STRING
    input.Body.notebook.fileUris[_] == STRING
    input.Body.notebook.infrastructureSpec.batch.executorsCount == INTEGER
    input.Body.notebook.infrastructureSpec.batch.maxExecutorsCount == INTEGER
    input.Body.notebook.infrastructureSpec.containerImage.image == STRING
    input.Body.notebook.infrastructureSpec.containerImage.javaJars[_] == STRING
    input.Body.notebook.infrastructureSpec.containerImage.properties.STRING == STRING
    input.Body.notebook.infrastructureSpec.containerImage.pythonPackages[_] == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.network == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.networkTags[_] == STRING
    input.Body.notebook.infrastructureSpec.vpcNetwork.subNetwork == STRING
    input.Body.notebook.notebook == STRING
    input.Body.spark.archiveUris[_] == STRING
    input.Body.spark.fileUris[_] == STRING
    input.Body.spark.infrastructureSpec.batch.executorsCount == INTEGER
    input.Body.spark.infrastructureSpec.batch.maxExecutorsCount == INTEGER
    input.Body.spark.infrastructureSpec.containerImage.image == STRING
    input.Body.spark.infrastructureSpec.containerImage.javaJars[_] == STRING
    input.Body.spark.infrastructureSpec.containerImage.properties.STRING == STRING
    input.Body.spark.infrastructureSpec.containerImage.pythonPackages[_] == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.network == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.networkTags[_] == STRING
    input.Body.spark.infrastructureSpec.vpcNetwork.subNetwork == STRING
    input.Body.spark.mainClass == STRING
    input.Body.spark.mainJarFileUri == STRING
    input.Body.spark.pythonScriptFile == STRING
    input.Body.spark.sqlScript == STRING
    input.Body.spark.sqlScriptFile == STRING
    input.Body.triggerSpec.disabled == BOOLEAN
    input.Body.triggerSpec.maxRetries == INTEGER
    input.Body.triggerSpec.schedule == STRING
    input.Body.triggerSpec.startTime == STRING
    input.Body.triggerSpec.type == enum_GoogleCloudDataplexV1TaskTriggerSpecType[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.run

valid {
    input.Body.args.STRING == STRING
    input.Body.labels.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.tasks.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.tasks.testIamPermissions

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

dataplex.projects.locations.lakes.testIamPermissions

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

dataplex.projects.locations.lakes.zones.actions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.assets.actions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.assets.create

enum_GoogleCloudDataplexV1AssetResourceSpecReadAccessMode := [ "ACCESS_MODE_UNSPECIFIED", "DIRECT", "MANAGED" ]
enum_GoogleCloudDataplexV1AssetResourceSpecType := [ "TYPE_UNSPECIFIED", "STORAGE_BUCKET", "BIGQUERY_DATASET" ]

valid {
    input.Body.description == STRING
    input.Body.discoverySpec.csvOptions.delimiter == STRING
    input.Body.discoverySpec.csvOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.csvOptions.encoding == STRING
    input.Body.discoverySpec.csvOptions.headerRows == INTEGER
    input.Body.discoverySpec.enabled == BOOLEAN
    input.Body.discoverySpec.excludePatterns[_] == STRING
    input.Body.discoverySpec.includePatterns[_] == STRING
    input.Body.discoverySpec.jsonOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.jsonOptions.encoding == STRING
    input.Body.discoverySpec.schedule == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.resourceSpec.name == STRING
    input.Body.resourceSpec.readAccessMode == enum_GoogleCloudDataplexV1AssetResourceSpecReadAccessMode[_]
    input.Body.resourceSpec.type == enum_GoogleCloudDataplexV1AssetResourceSpecType[_]
    input.ReqMap.parent == STRING
    input.Qs.assetId == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.assets.delete

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

dataplex.projects.locations.lakes.zones.assets.get

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

dataplex.projects.locations.lakes.zones.assets.getIamPolicy

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

dataplex.projects.locations.lakes.zones.assets.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.assets.patch

enum_GoogleCloudDataplexV1AssetResourceSpecReadAccessMode := [ "ACCESS_MODE_UNSPECIFIED", "DIRECT", "MANAGED" ]
enum_GoogleCloudDataplexV1AssetResourceSpecType := [ "TYPE_UNSPECIFIED", "STORAGE_BUCKET", "BIGQUERY_DATASET" ]

valid {
    input.Body.description == STRING
    input.Body.discoverySpec.csvOptions.delimiter == STRING
    input.Body.discoverySpec.csvOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.csvOptions.encoding == STRING
    input.Body.discoverySpec.csvOptions.headerRows == INTEGER
    input.Body.discoverySpec.enabled == BOOLEAN
    input.Body.discoverySpec.excludePatterns[_] == STRING
    input.Body.discoverySpec.includePatterns[_] == STRING
    input.Body.discoverySpec.jsonOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.jsonOptions.encoding == STRING
    input.Body.discoverySpec.schedule == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.resourceSpec.name == STRING
    input.Body.resourceSpec.readAccessMode == enum_GoogleCloudDataplexV1AssetResourceSpecReadAccessMode[_]
    input.Body.resourceSpec.type == enum_GoogleCloudDataplexV1AssetResourceSpecType[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.assets.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.zones.assets.testIamPermissions

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

dataplex.projects.locations.lakes.zones.create

enum_GoogleCloudDataplexV1ZoneResourceSpecLocationType := [ "LOCATION_TYPE_UNSPECIFIED", "SINGLE_REGION", "MULTI_REGION" ]
enum_GoogleCloudDataplexV1ZoneType := [ "TYPE_UNSPECIFIED", "RAW", "CURATED" ]

valid {
    input.Body.description == STRING
    input.Body.discoverySpec.csvOptions.delimiter == STRING
    input.Body.discoverySpec.csvOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.csvOptions.encoding == STRING
    input.Body.discoverySpec.csvOptions.headerRows == INTEGER
    input.Body.discoverySpec.enabled == BOOLEAN
    input.Body.discoverySpec.excludePatterns[_] == STRING
    input.Body.discoverySpec.includePatterns[_] == STRING
    input.Body.discoverySpec.jsonOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.jsonOptions.encoding == STRING
    input.Body.discoverySpec.schedule == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.resourceSpec.locationType == enum_GoogleCloudDataplexV1ZoneResourceSpecLocationType[_]
    input.Body.type == enum_GoogleCloudDataplexV1ZoneType[_]
    input.ReqMap.parent == STRING
    input.Qs.validateOnly == BOOLEAN
    input.Qs.zoneId == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.delete

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

dataplex.projects.locations.lakes.zones.entities.create

enum_GoogleCloudDataplexV1EntitySystem := [ "STORAGE_SYSTEM_UNSPECIFIED", "CLOUD_STORAGE", "BIGQUERY" ]
enum_GoogleCloudDataplexV1EntityType := [ "TYPE_UNSPECIFIED", "TABLE", "FILESET" ]
enum_GoogleCloudDataplexV1SchemaPartitionFieldType := [ "TYPE_UNSPECIFIED", "BOOLEAN", "BYTE", "INT16", "INT32", "INT64", "FLOAT", "DOUBLE", "DECIMAL", "STRING", "BINARY", "TIMESTAMP", "DATE", "TIME", "RECORD", "NULL" ]
enum_GoogleCloudDataplexV1SchemaPartitionStyle := [ "PARTITION_STYLE_UNSPECIFIED", "HIVE_COMPATIBLE" ]
enum_GoogleCloudDataplexV1SchemaSchemaFieldMode := [ "MODE_UNSPECIFIED", "REQUIRED", "NULLABLE", "REPEATED" ]
enum_GoogleCloudDataplexV1SchemaSchemaFieldType := [ "TYPE_UNSPECIFIED", "BOOLEAN", "BYTE", "INT16", "INT32", "INT64", "FLOAT", "DOUBLE", "DECIMAL", "STRING", "BINARY", "TIMESTAMP", "DATE", "TIME", "RECORD", "NULL" ]
enum_GoogleCloudDataplexV1StorageFormatCompressionFormat := [ "COMPRESSION_FORMAT_UNSPECIFIED", "GZIP", "BZIP2" ]

valid {
    input.Body.asset == STRING
    input.Body.dataPath == STRING
    input.Body.dataPathPattern == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.format.compressionFormat == enum_GoogleCloudDataplexV1StorageFormatCompressionFormat[_]
    input.Body.format.csv.delimiter == STRING
    input.Body.format.csv.encoding == STRING
    input.Body.format.csv.headerRows == INTEGER
    input.Body.format.csv.quote == STRING
    input.Body.format.iceberg.metadataLocation == STRING
    input.Body.format.json.encoding == STRING
    input.Body.format.mimeType == STRING
    input.Body.id == STRING
    input.Body.schema.fields[_].description == STRING
    input.Body.schema.fields[_].fields[_] == NESTED
    input.Body.schema.fields[_].mode == enum_GoogleCloudDataplexV1SchemaSchemaFieldMode[_]
    input.Body.schema.fields[_].name == STRING
    input.Body.schema.fields[_].type == enum_GoogleCloudDataplexV1SchemaSchemaFieldType[_]
    input.Body.schema.partitionFields[_].name == STRING
    input.Body.schema.partitionFields[_].type == enum_GoogleCloudDataplexV1SchemaPartitionFieldType[_]
    input.Body.schema.partitionStyle == enum_GoogleCloudDataplexV1SchemaPartitionStyle[_]
    input.Body.schema.userManaged == BOOLEAN
    input.Body.system == enum_GoogleCloudDataplexV1EntitySystem[_]
    input.Body.type == enum_GoogleCloudDataplexV1EntityType[_]
    input.ReqMap.parent == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.get

enum_ViewParameter := [ "ENTITY_VIEW_UNSPECIFIED", "BASIC", "SCHEMA", "FULL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.list

enum_ViewParameter := [ "ENTITY_VIEW_UNSPECIFIED", "TABLES", "FILESETS" ]

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.partitions.create

valid {
    input.Body.etag == STRING
    input.Body.location == STRING
    input.Body.values[_] == STRING
    input.ReqMap.parent == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.partitions.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.etag == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.partitions.get

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

dataplex.projects.locations.lakes.zones.entities.partitions.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.entities.update

enum_GoogleCloudDataplexV1EntitySystem := [ "STORAGE_SYSTEM_UNSPECIFIED", "CLOUD_STORAGE", "BIGQUERY" ]
enum_GoogleCloudDataplexV1EntityType := [ "TYPE_UNSPECIFIED", "TABLE", "FILESET" ]
enum_GoogleCloudDataplexV1SchemaPartitionFieldType := [ "TYPE_UNSPECIFIED", "BOOLEAN", "BYTE", "INT16", "INT32", "INT64", "FLOAT", "DOUBLE", "DECIMAL", "STRING", "BINARY", "TIMESTAMP", "DATE", "TIME", "RECORD", "NULL" ]
enum_GoogleCloudDataplexV1SchemaPartitionStyle := [ "PARTITION_STYLE_UNSPECIFIED", "HIVE_COMPATIBLE" ]
enum_GoogleCloudDataplexV1SchemaSchemaFieldMode := [ "MODE_UNSPECIFIED", "REQUIRED", "NULLABLE", "REPEATED" ]
enum_GoogleCloudDataplexV1SchemaSchemaFieldType := [ "TYPE_UNSPECIFIED", "BOOLEAN", "BYTE", "INT16", "INT32", "INT64", "FLOAT", "DOUBLE", "DECIMAL", "STRING", "BINARY", "TIMESTAMP", "DATE", "TIME", "RECORD", "NULL" ]
enum_GoogleCloudDataplexV1StorageFormatCompressionFormat := [ "COMPRESSION_FORMAT_UNSPECIFIED", "GZIP", "BZIP2" ]

valid {
    input.Body.asset == STRING
    input.Body.dataPath == STRING
    input.Body.dataPathPattern == STRING
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.etag == STRING
    input.Body.format.compressionFormat == enum_GoogleCloudDataplexV1StorageFormatCompressionFormat[_]
    input.Body.format.csv.delimiter == STRING
    input.Body.format.csv.encoding == STRING
    input.Body.format.csv.headerRows == INTEGER
    input.Body.format.csv.quote == STRING
    input.Body.format.iceberg.metadataLocation == STRING
    input.Body.format.json.encoding == STRING
    input.Body.format.mimeType == STRING
    input.Body.id == STRING
    input.Body.schema.fields[_].description == STRING
    input.Body.schema.fields[_].fields[_] == NESTED
    input.Body.schema.fields[_].mode == enum_GoogleCloudDataplexV1SchemaSchemaFieldMode[_]
    input.Body.schema.fields[_].name == STRING
    input.Body.schema.fields[_].type == enum_GoogleCloudDataplexV1SchemaSchemaFieldType[_]
    input.Body.schema.partitionFields[_].name == STRING
    input.Body.schema.partitionFields[_].type == enum_GoogleCloudDataplexV1SchemaPartitionFieldType[_]
    input.Body.schema.partitionStyle == enum_GoogleCloudDataplexV1SchemaPartitionStyle[_]
    input.Body.schema.userManaged == BOOLEAN
    input.Body.system == enum_GoogleCloudDataplexV1EntitySystem[_]
    input.Body.type == enum_GoogleCloudDataplexV1EntityType[_]
    input.ReqMap.name == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.get

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

dataplex.projects.locations.lakes.zones.getIamPolicy

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

dataplex.projects.locations.lakes.zones.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.patch

enum_GoogleCloudDataplexV1ZoneResourceSpecLocationType := [ "LOCATION_TYPE_UNSPECIFIED", "SINGLE_REGION", "MULTI_REGION" ]
enum_GoogleCloudDataplexV1ZoneType := [ "TYPE_UNSPECIFIED", "RAW", "CURATED" ]

valid {
    input.Body.description == STRING
    input.Body.discoverySpec.csvOptions.delimiter == STRING
    input.Body.discoverySpec.csvOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.csvOptions.encoding == STRING
    input.Body.discoverySpec.csvOptions.headerRows == INTEGER
    input.Body.discoverySpec.enabled == BOOLEAN
    input.Body.discoverySpec.excludePatterns[_] == STRING
    input.Body.discoverySpec.includePatterns[_] == STRING
    input.Body.discoverySpec.jsonOptions.disableTypeInference == BOOLEAN
    input.Body.discoverySpec.jsonOptions.encoding == STRING
    input.Body.discoverySpec.schedule == STRING
    input.Body.displayName == STRING
    input.Body.labels.STRING == STRING
    input.Body.resourceSpec.locationType == enum_GoogleCloudDataplexV1ZoneResourceSpecLocationType[_]
    input.Body.type == enum_GoogleCloudDataplexV1ZoneType[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.Qs.validateOnly == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lakes.zones.setIamPolicy

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

valid {
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].exemptedMembers[_] == STRING
    input.Body.policy.auditConfigs[_].auditLogConfigs[_].logType == enum_GoogleIamV1AuditLogConfigLogType[_]
    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
}

dataplex.projects.locations.lakes.zones.testIamPermissions

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

dataplex.projects.locations.list

valid {
    input.ReqMap.name == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.lookupEntry

enum_ViewParameter := [ "ENTRY_VIEW_UNSPECIFIED", "BASIC", "FULL", "CUSTOM", "ALL" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.aspectTypes == STRING
    input.Qs.entry == STRING
    input.Qs.paths == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.operations.cancel

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.operations.delete

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

dataplex.projects.locations.operations.get

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

dataplex.projects.locations.operations.list

valid {
    input.ReqMap.name == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

dataplex.projects.locations.searchEntries

valid {
    input.ReqMap.name == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.query == STRING
    input.Qs.scope == STRING
    input.ProviderMetadata.Region == STRING
}