syntax = "proto3";
package sciobjsdb.api.storage.models.v1;
option go_package = "github.com/ScienceObjectsDB/go-api/sciobjsdb/api/storage/models/v1";
option java_multiple_files = true;
option java_package = "com.github.ScienceObjectsDB.java_api.sciobjsdb.api.storage.models.v1";
option java_outer_classname = "DatasetModels";
import "google/protobuf/timestamp.proto";
import "sciobjsdb/api/storage/models/v1/common_models.proto";
import "sciobjsdb/api/storage/models/v1/object_models.proto";
message Dataset {
string id = 1;
string name = 2; // Name of the dataset
string description = 3;
google.protobuf.Timestamp created = 4; // When the datasets was created
repeated Label labels = 5;
repeated Annotation annotations = 6;
string project_id = 7;
bool is_public = 8; //Indicates if the dataset if publicly available
Status status = 9;
string bucket = 10;
DatasetStats stats = 11;
repeated Object metadata_objects = 12;
}
message DatasetVersion {
string id = 1;
string name = 2;
string description = 3;
string dataset_id = 4;
repeated Label labels = 5;
repeated Annotation annotations = 6;
google.protobuf.Timestamp created = 7; // When the datasets version was created
Version version = 8;
repeated string object_group_ids = 9;
int64 object_count = 10; // Number of objects registered with this dataset version
Status status = 11; // Indicates the status of a dataset
string project_id = 12;
DatasetVersionStats stats = 13;
repeated Object metadata_objects = 14;
}
message DatasetStats {
int64 object_count = 1;
int64 object_group_count = 2;
int64 acc_size = 3;
double avg_object_size = 4;
}
message DatasetVersionStats {
int64 object_count = 1;
int64 object_group_count = 2;
int64 acc_size = 3;
double avg_object_size = 4;
}