Project

General

Profile

1 26600 sandro.lab
package eu.dnetlib.data.proto;
2
3 44138 claudio.at
import "FieldType.proto";
4 26600 sandro.lab
5
option java_package = "eu.dnetlib.data.proto";
6
option java_outer_classname = "ResultProtos";
7
8
message Result {
9
10
	optional Metadata metadata = 2;
11
12
	repeated Instance instance = 6;
13
14
	repeated ExternalReference externalReference = 7;
15
16
	message Metadata {
17
18 49027 claudio.at
		repeated Author author = 40;
19
20 48674 claudio.at
		// resulttype allows subclassing results into publications | datasets | software
21 26600 sandro.lab
		optional Qualifier resulttype = 8;
22
23
		// common fields
24
		optional Qualifier language = 12;
25 38153 michele.ar
		repeated Qualifier country = 33;
26 26600 sandro.lab
27
		repeated StructuredProperty subject = 1;
28
		repeated StructuredProperty title = 2;
29
		repeated StructuredProperty relevantdate = 3;
30
31 28091 claudio.at
		repeated StringField description = 25;
32
		optional StringField dateofacceptance = 4;
33
		optional StringField publisher = 5;
34
		optional StringField embargoenddate = 6;
35
		repeated StringField source = 27;
36 37325 claudio.at
		repeated StringField fulltext = 29; // remove candidate
37 34832 claudio.at
		repeated StringField format = 21;
38 41522 claudio.at
		repeated StringField contributor = 30;
39 52407 claudio.at
		optional Qualifier resourcetype = 19;
40 52379 claudio.at
		repeated StringField coverage = 43;
41 54109 alessia.ba
		optional StringField refereed = 46; //peer-review status
42 52379 claudio.at
43 26600 sandro.lab
		repeated Context context = 28;
44
45
		// publication specific
46
		optional Journal journal = 18;
47
48
		// dataset specific
49 37325 claudio.at
		optional StringField storagedate = 9;
50 28091 claudio.at
		optional StringField device = 26;
51
		optional StringField size = 20;
52
		optional StringField version = 22;
53
		optional StringField lastmetadataupdate = 23;
54
		optional StringField metadataversionnumber = 24;
55 52379 claudio.at
		repeated GeoLocation geolocation = 44;
56 48674 claudio.at
57
		// software specific
58
		repeated StringField documentationUrl = 35;
59
		repeated StructuredProperty license = 36;
60
		optional StringField codeRepositoryUrl = 38;
61
		optional Qualifier programmingLanguage = 39;
62 52379 claudio.at
63
		// other research products specifics
64 52393 claudio.at
		repeated StringField contactperson = 45;
65 52379 claudio.at
		repeated StringField contactgroup = 41;
66
		repeated StringField tool = 42;
67
68 57519 andreas.cz
		// ( article | book ) processing charges
69
		optional StringField processingchargeamount = 50;
70
		// currency - alphabetic code describe in ISO-4217
71
		optional StringField processingchargecurrency = 51;
72
73 26600 sandro.lab
	}
74
75 46584 alessia.ba
76 26600 sandro.lab
77 48672 claudio.at
	// <concept id="egi::vo::alice" />
78
	message Context {
79
		required string id = 1;
80 52899 claudio.at
		repeated DataInfo dataInfo = 2;
81 48672 claudio.at
	}
82
83 26600 sandro.lab
	message Instance {
84 49093 claudio.at
85
		optional StringField license = 6;
86
		optional Qualifier accessright = 3;
87 26600 sandro.lab
		optional Qualifier instancetype = 4;
88
89
		optional KeyValue hostedby = 5;
90
		repeated string url = 9;
91 47991 claudio.at
92 52379 claudio.at
		// other research products specific
93
		optional string distributionlocation = 12;
94
95 48675 claudio.at
		optional KeyValue collectedfrom = 10;
96 47991 claudio.at
		optional StringField dateofacceptance = 11;
97 26600 sandro.lab
	}
98
99
	message ExternalReference {
100
101
		optional string sitename = 1;		// source
102
		optional string label = 2;			// title
103
		optional string url = 3;			// text()
104
		optional string description = 4;	// ?? not mapped yet ??
105
		optional Qualifier qualifier = 5;	// type
106
		optional string refidentifier = 6;	// site internal identifier
107 37325 claudio.at
		optional string query = 7;			// maps the oaf:reference/@query attribute
108 37361 claudio.at
		optional DataInfo dataInfo = 8;		// ExternalReferences might be also inferred
109 26600 sandro.lab
	}
110
111 52379 claudio.at
	message GeoLocation {
112
113
		optional string point = 1;
114
		optional string box = 2;
115
		optional string place = 3;
116
	}
117
118 26600 sandro.lab
}