/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the forecast-2018-06-26.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ForecastService.Model
{
///
/// Container for the parameters to the CreateWhatIfAnalysis operation.
/// What-if analysis is a scenario modeling technique where you make a hypothetical change
/// to a time series and compare the forecasts generated by these changes against the
/// baseline, unchanged time series. It is important to remember that the purpose of a
/// what-if analysis is to understand how a forecast can change given different modifications
/// to the baseline time series.
///
///
///
/// For example, imagine you are a clothing retailer who is considering an end of season
/// sale to clear space for new styles. After creating a baseline forecast, you can use
/// a what-if analysis to investigate how different sales tactics might affect your goals.
///
///
///
/// You could create a scenario where everything is given a 25% markdown, and another
/// where everything is given a fixed dollar markdown. You could create a scenario where
/// the sale lasts for one week and another where the sale lasts for one month. With a
/// what-if analysis, you can compare many different scenarios against each other.
///
///
///
/// Note that a what-if analysis is meant to display what the forecasting model has learned
/// and how it will behave in the scenarios that you are evaluating. Do not blindly use
/// the results of the what-if analysis to make business decisions. For instance, forecasts
/// might not be accurate for novel scenarios where there is no reference available to
/// determine whether a forecast is good.
///
///
///
/// The TimeSeriesSelector object defines the items that you want in the what-if
/// analysis.
///
///
public partial class CreateWhatIfAnalysisRequest : AmazonForecastServiceRequest
{
private string _forecastArn;
private List _tags = new List();
private TimeSeriesSelector _timeSeriesSelector;
private string _whatIfAnalysisName;
///
/// Gets and sets the property ForecastArn.
///
/// The Amazon Resource Name (ARN) of the baseline forecast.
///
///
[AWSProperty(Required=true, Max=256)]
public string ForecastArn
{
get { return this._forecastArn; }
set { this._forecastArn = value; }
}
// Check to see if ForecastArn property is set
internal bool IsSetForecastArn()
{
return this._forecastArn != null;
}
///
/// Gets and sets the property Tags.
///
/// A list of tags
/// to apply to the what if forecast.
///
///
[AWSProperty(Min=0, Max=200)]
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Gets and sets the property TimeSeriesSelector.
///
/// Defines the set of time series that are used in the what-if analysis with a TimeSeriesIdentifiers
/// object. What-if analyses are performed only for the time series in this object.
///
///
///
/// The TimeSeriesIdentifiers
object needs the following information:
///
/// -
///
///
DataSource
///
/// -
///
///
Format
///
/// -
///
///
Schema
///
///
///
public TimeSeriesSelector TimeSeriesSelector
{
get { return this._timeSeriesSelector; }
set { this._timeSeriesSelector = value; }
}
// Check to see if TimeSeriesSelector property is set
internal bool IsSetTimeSeriesSelector()
{
return this._timeSeriesSelector != null;
}
///
/// Gets and sets the property WhatIfAnalysisName.
///
/// The name of the what-if analysis. Each name must be unique.
///
///
[AWSProperty(Required=true, Min=1, Max=63)]
public string WhatIfAnalysisName
{
get { return this._whatIfAnalysisName; }
set { this._whatIfAnalysisName = value; }
}
// Check to see if WhatIfAnalysisName property is set
internal bool IsSetWhatIfAnalysisName()
{
return this._whatIfAnalysisName != null;
}
}
}