/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Comprehend { namespace Model { /** *

Describes the dataset input data configuration for a document classifier * model.

For more information on how the input file is formatted, see Preparing * training data in the Comprehend Developer Guide.

See Also:

* AWS * API Reference

*/ class DatasetDocumentClassifierInputDataConfig { public: AWS_COMPREHEND_API DatasetDocumentClassifierInputDataConfig(); AWS_COMPREHEND_API DatasetDocumentClassifierInputDataConfig(Aws::Utils::Json::JsonView jsonValue); AWS_COMPREHEND_API DatasetDocumentClassifierInputDataConfig& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_COMPREHEND_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline const Aws::String& GetS3Uri() const{ return m_s3Uri; } /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline bool S3UriHasBeenSet() const { return m_s3UriHasBeenSet; } /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline void SetS3Uri(const Aws::String& value) { m_s3UriHasBeenSet = true; m_s3Uri = value; } /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline void SetS3Uri(Aws::String&& value) { m_s3UriHasBeenSet = true; m_s3Uri = std::move(value); } /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline void SetS3Uri(const char* value) { m_s3UriHasBeenSet = true; m_s3Uri.assign(value); } /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline DatasetDocumentClassifierInputDataConfig& WithS3Uri(const Aws::String& value) { SetS3Uri(value); return *this;} /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline DatasetDocumentClassifierInputDataConfig& WithS3Uri(Aws::String&& value) { SetS3Uri(std::move(value)); return *this;} /** *

The Amazon S3 URI for the input data. The S3 bucket must be in the same * Region as the API endpoint that you are calling. The URI can point to a single * input file or it can provide the prefix for a collection of input files.

*

For example, if you use the URI S3://bucketName/prefix, if the * prefix is a single file, Amazon Comprehend uses that file as input. If more than * one file begins with the prefix, Amazon Comprehend uses all of them as * input.

This parameter is required if you set DataFormat to * COMPREHEND_CSV.

*/ inline DatasetDocumentClassifierInputDataConfig& WithS3Uri(const char* value) { SetS3Uri(value); return *this;} /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline const Aws::String& GetLabelDelimiter() const{ return m_labelDelimiter; } /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline bool LabelDelimiterHasBeenSet() const { return m_labelDelimiterHasBeenSet; } /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline void SetLabelDelimiter(const Aws::String& value) { m_labelDelimiterHasBeenSet = true; m_labelDelimiter = value; } /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline void SetLabelDelimiter(Aws::String&& value) { m_labelDelimiterHasBeenSet = true; m_labelDelimiter = std::move(value); } /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline void SetLabelDelimiter(const char* value) { m_labelDelimiterHasBeenSet = true; m_labelDelimiter.assign(value); } /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline DatasetDocumentClassifierInputDataConfig& WithLabelDelimiter(const Aws::String& value) { SetLabelDelimiter(value); return *this;} /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline DatasetDocumentClassifierInputDataConfig& WithLabelDelimiter(Aws::String&& value) { SetLabelDelimiter(std::move(value)); return *this;} /** *

Indicates the delimiter used to separate each label for training a * multi-label classifier. The default delimiter between labels is a pipe (|). You * can use a different character as a delimiter (if it's an allowed character) by * specifying it under Delimiter for labels. If the training documents use a * delimiter other than the default or the delimiter you specify, the labels on * that line will be combined to make a single unique label, such as * LABELLABELLABEL.

*/ inline DatasetDocumentClassifierInputDataConfig& WithLabelDelimiter(const char* value) { SetLabelDelimiter(value); return *this;} private: Aws::String m_s3Uri; bool m_s3UriHasBeenSet = false; Aws::String m_labelDelimiter; bool m_labelDelimiterHasBeenSet = false; }; } // namespace Model } // namespace Comprehend } // namespace Aws