Project

General

Profile

1
package eu.dnetlib.data.proto;
2

    
3
option java_package = "eu.dnetlib.data.proto";
4
option java_outer_classname = "FieldTypeProtos";
5

    
6
message StringField {
7

    
8
 	required string value = 1;
9
	optional DataInfo dataInfo = 2;
10
}
11

    
12
message BoolField {
13

    
14
 	required bool value = 1;
15
	optional DataInfo dataInfo = 2;
16
}
17

    
18
message IntField {
19

    
20
 	required int32 value = 1;
21
	optional DataInfo dataInfo = 2;
22
}
23

    
24
message StructuredProperty {
25

    
26
	required string value = 1;
27
	optional Qualifier qualifier = 2;
28
	optional DataInfo dataInfo = 3;
29
}
30

    
31
// Generic container for identified values, e.g:
32
//   <oaf:hostedBy name="Publications at Bielefeld University" id="opendoar::2294"/>
33
//   <oaf:collectedFrom name="Publications at Bielefeld University" id="opendoar::2294"/>
34
message KeyValue {
35

    
36
	extensions 10 to 19;
37

    
38
	required string key = 1;
39
	optional string value = 2;
40
	
41
	optional DataInfo dataInfo = 3;
42
}
43

    
44
message Qualifier {
45

    
46
	optional string classid = 1;
47
	optional string classname = 2;
48
	optional string schemeid = 3;
49
	optional string schemename = 4;
50
	
51
	optional DataInfo dataInfo = 5;
52
}
53

    
54
message DataInfo {
55

    
56
	optional bool inferred = 1;
57
	optional bool deletedbyinference = 2;
58
	optional string trust = 3;
59
	optional string inferenceprovenance = 4;
60

    
61
	required Qualifier provenanceaction = 5;
62
}
63

    
64
message OAIProvenance {
65

    
66
	optional OriginDescription originDescription = 1;
67

    
68
	message OriginDescription {
69
		
70
		optional string harvestDate = 1;
71
		optional bool altered = 2 [default = true];
72
		
73
		optional string baseURL = 3;
74
		optional string identifier = 4;
75
		optional string datestamp = 5;
76
		optional string metadataNamespace = 6;
77
		
78
		optional OriginDescription originDescription = 7;		
79
	}
80
}
81

    
82
message Journal {
83
	optional string name = 1;
84
	optional string issnPrinted = 2;
85
	optional string issnOnline = 3;
86
	optional string issnLinking = 4;
87

    
88
	optional DataInfo dataInfo = 5;
89
}
90

    
91
message ExtraInfo {
92

    
93
	required string name = 1;
94
	required string typology = 2;
95
	required string provenance = 3;
96
	optional string trust = 4;
97
	
98
	// json containing a Citation or Statistics
99
	optional string value = 5;
100

    
101
}
102

    
103
// <concept id="egi::vo::alice" />
104
message Context {
105
	required string id = 1;
106
	optional DataInfo dataInfo = 2;
107
}
108

    
109
message Instance {
110

    
111
	optional Qualifier licence = 3;
112
	optional Qualifier instancetype = 4;
113

    
114
	optional KeyValue hostedby = 5;
115
	repeated string url = 9;
116
}
117

    
118
message ExternalReference {
119

    
120
	extensions 100 to 199;
121

    
122
	optional string sitename = 1; // source
123
	optional string label = 2; // title
124
	optional string url = 3; // text()
125
	optional string description = 4; // ?? not mapped yet ??
126
	optional Qualifier qualifier = 5; // type
127
	optional string refidentifier = 6; // site internal identifier
128
	optional string query = 7; // maps the oaf:reference/@query attribute
129
	optional DataInfo dataInfo = 8; // ExternalReferences might be also inferred
130

    
131

    
132
}
(5-5/13)