Project

General

Profile

1
package eu.dnetlib.data.proto;
2

    
3
import "eu/dnetlib/data/proto/FieldType.proto";
4

    
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
		// resulttype allows subclassing results into publications or datasets
19
		optional Qualifier resulttype = 8;
20

    
21
		// common fields
22
		optional Qualifier language = 12;
23

    
24
		repeated StructuredProperty subject = 1;
25
		repeated StructuredProperty title = 2;
26
		repeated StructuredProperty relevantdate = 3;
27

    
28
		repeated StringField description = 25;
29
		optional StringField dateofacceptance = 4;
30
		optional StringField publisher = 5;
31
		optional StringField embargoenddate = 6;
32
		optional StringField storagedate = 9;
33
		repeated StringField source = 27;
34
		repeated StringField fulltext = 29;
35
		
36
		repeated Context context = 28;
37

    
38
		// publication specific
39
		optional Journal journal = 18;
40

    
41
		// dataset specific
42
		optional Qualifier resourcetype = 19;
43
		optional StringField device = 26;
44
		optional StringField size = 20;
45
		optional StringField format = 21;
46
		optional StringField version = 22;
47
		optional StringField lastmetadataupdate = 23;
48
		optional StringField metadataversionnumber = 24;
49
	}
50
	
51
	message Journal {
52
		optional string name = 1;
53
		optional string issnPrinted = 2;
54
		optional string issnOnline = 3;
55
		optional string issnLinking = 4;
56
		
57
		optional DataInfo dataInfo = 5;
58
	}
59
	
60
	// <concept id="egi::vo::alice" />
61
	message Context {
62
		required string id = 1;  
63
	}
64
	
65
	message Instance {
66
	
67
		optional Qualifier licence = 3;
68
		optional Qualifier instancetype = 4;
69
	
70
		optional KeyValue hostedby = 5;
71
		repeated string url = 9;
72
	}
73
	
74
	message ExternalReference {
75
	
76
		optional string sitename = 1;		// source
77
		optional string label = 2;			// title
78
		optional string url = 3;			// text()
79
		optional string description = 4;	// ?? not mapped yet ??
80
		optional Qualifier qualifier = 5;	// type
81
		optional string refidentifier = 6;	// site internal identifier
82
	}
83

    
84
}
(18-18/23)