Я пытаюсь использовать Dhall для генерации AWS облачной информации, и первое, что я пытаюсь кодировать, это AWS :: ApiGatewayV2 :: Api . Который имеет следующее json spe c:
{
"Type" : "AWS::ApiGatewayV2::Api",
"Properties" : {
"ApiKeySelectionExpression" : String,
"BasePath" : String,
"Body" : Json,
"BodyS3Location" : BodyS3Location,
"CorsConfiguration" : Cors,
"CredentialsArn" : String,
"Description" : String,
"DisableSchemaValidation" : Boolean,
"FailOnWarnings" : Boolean,
"Name" : String,
"ProtocolType" : String,
"RouteKey" : String,
"RouteSelectionExpression" : String,
"Tags" : Json,
"Target" : String,
"Version" : String
}
}
В спецификации есть несколько полей, но два из них образуют объединение: BodyS3Location
и Body
. Означают, что любой из них должен присутствовать. Я знаю о поддержке dynamici c records , но, очевидно, работает только для объектов с одной записью. Каков был бы рекомендуемый способ кодировать это поведение?