// Copyright (c) 2018, Apple Inc. All rights reserved.
//
// Use of this source code is governed by a BSD-3-clause license that can be
// found in LICENSE.txt or at https://opensource.org/licenses/BSD-3-Clause

syntax = "proto3";
option optimize_for = LITE_RUNTIME;

import public "DataStructures.proto";

package CoreML.Specification.CoreMLModels;

/**
* A model which takes a single input string and outputs a
* label for the input.
*/
message TextClassifier {

    /*
    * Stores the resivion number for the model, revision 1 is available on
    * iOS, tvOS 12.0+, macoOS 10.14+
    */
    uint32 revision = 1;
    
    /*
    * Stores the language of the model, as specified in BCP-47 format,
    * e.g. "en-US". See https://tools.ietf.org/html/bcp47
    */
    string language = 10;

    /*
    * Stores the byte representation of learned model parameters
    */
    bytes modelParameterData = 100;
    
    /*
    * Stores the set of output class labels
    */
    oneof ClassLabels {
        StringVector stringClassLabels = 200;
    }
    
}
