syntax = "proto3";
import "sarus_data_spec/protobuf/type.proto";
import "sarus_data_spec/protobuf/path.proto";
package sarus_data_spec;

message Schema {
  // Schema definition attribute
  string uuid = 1;
  string dataset = 2; // uuid
  string name = 3;
  sarus_data_spec.Type type = 4;
  Path privacy_unit = 5; // Privacy Unit (may be empty for non-Sarus datasets)
  map<string, string> properties = 6; // Other properties

  message Hypothesis {
    // Schema.Hypothesis attribute, the type contains Hypothesis elements with scores
    string uuid = 1;
    string dataset = 2; // uuid
    string name = 3;
    Type type = 4;
    map<string, string> properties = 5; // Other properties
  }
}
