docs: def _create_application_version_request(app_metadata, application_id, template):
      """
      Construct the request body to create application version.
  
      :param app_metadata: Object containing app metadata
      :type app_metadata: ApplicationMetadata
      :param application_id: The Amazon Resource Name (ARN) of the application
      :type application_id: str
      :param template: A packaged YAML or JSON SAM template
      :type template: str
      :return: SAR CreateApplicationVersion request body
      :rtype: dict
      """
      app_metadata.validate(['semantic_version'])
      request = {
          'ApplicationId': application_id,
          'SemanticVersion': app_metadata.semantic_version,
          'SourceCodeUrl': app_metadata.source_code_url,
          'TemplateBody': template
      }
      return {k: v for k, v in request.items() if v}