Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/gen/java
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/gen/java	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/gen/java	(revision 57461)

Property changes on: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/gen/java
___________________________________________________________________
Added: svn:ignore
## -0,0 +1 ##
+.
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/pom.xml
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/pom.xml	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/pom.xml	(revision 57461)
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<parent>
+		<groupId>eu.dnetlib</groupId>
+		<artifactId>dnet45-parent</artifactId>
+		<version>1.0.0</version>
+		<relativePath />
+	</parent>
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>eu.dnetlib</groupId>
+	<artifactId>dnet-openaire-data-protos</artifactId>
+	<packaging>jar</packaging>
+	<version>3.9.5-proto250</version>
+	<scm>
+	  <developerConnection>scm:svn:https://svn.driver.research-infrastructures.eu/driver/dnet45/modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250</developerConnection>
+	</scm>
+
+	<properties>
+		<!-- defined also in dnet-parent, here in case we need to override -->
+		<google.protobuf.version>2.5.0</google.protobuf.version>
+	</properties>
+
+	<pluginRepositories>
+		<pluginRepository>
+			<id>dnet4-bootstrap-release</id>
+			<url>http://maven.research-infrastructures.eu/nexus/content/repositories/dnet4-bootstrap-release/</url>
+		</pluginRepository>
+	</pluginRepositories>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>eu.dnetlib</groupId>
+				<artifactId>protoc-jar-maven-plugin</artifactId>
+				<version>1.1.0</version>
+				<executions>
+					<execution>
+						<phase>generate-sources</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<protocVersion>${google.protobuf.version}</protocVersion>
+							<inputDirectories>
+								<include>src/main/resources</include>
+							</inputDirectories>
+							<outputDirectory>src/gen/java</outputDirectory>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+<!--
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-jar-plugin</artifactId>
+				<version>3.0.2</version>
+				<extensions>false</extensions>
+				<inherited>false</inherited>
+				<configuration>
+					<classifier>proto250</classifier>
+				</configuration>
+				<dependencies>
+					<dependency>
+						<groupId>com.google.protobuf</groupId>
+						<artifactId>protobuf-java</artifactId>
+						<version>${google.protobuf.version}</version>
+					</dependency>
+				</dependencies>
+			</plugin>
+-->
+		</plugins>
+	</build>
+	<dependencies>
+		<dependency>
+			<groupId>com.google.protobuf</groupId>
+			<artifactId>protobuf-java</artifactId>
+			<version>${google.protobuf.version}</version>
+		</dependency>		
+	</dependencies>
+</project>
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result.proto	(revision 57461)
@@ -0,0 +1,110 @@
+package eu.dnetlib.data.proto;
+
+import "FieldType.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ResultProtos";
+
+message Result {
+
+	optional Metadata metadata = 2;
+	
+	repeated Instance instance = 6;
+	
+	repeated ExternalReference externalReference = 7;
+
+	message Metadata {
+
+		repeated Author author = 40;
+
+		// resulttype allows subclassing results into publications | datasets | software
+		optional Qualifier resulttype = 8;
+
+		// common fields
+		optional Qualifier language = 12;
+		repeated Qualifier country = 33;
+
+		repeated StructuredProperty subject = 1;
+		repeated StructuredProperty title = 2;
+		repeated StructuredProperty relevantdate = 3;
+
+		repeated StringField description = 25;
+		optional StringField dateofacceptance = 4;
+		optional StringField publisher = 5;
+		optional StringField embargoenddate = 6;
+		repeated StringField source = 27;
+		repeated StringField fulltext = 29; // remove candidate
+		repeated StringField format = 21;
+		repeated StringField contributor = 30;
+		optional Qualifier resourcetype = 19;
+		repeated StringField coverage = 43;
+		optional StringField refereed = 46; //peer-review status
+		
+		repeated Context context = 28;
+
+		optional Journal journal = 18;
+
+		// dataset specific
+		optional StringField storagedate = 9;
+		optional StringField device = 26;
+		optional StringField size = 20;
+		optional StringField version = 22;
+		optional StringField lastmetadataupdate = 23;
+		optional StringField metadataversionnumber = 24;
+		repeated GeoLocation geolocation = 44;
+
+		// software specific
+		repeated StringField documentationUrl = 35;
+		repeated StructuredProperty license = 36;
+		optional StringField codeRepositoryUrl = 38;
+		optional Qualifier programmingLanguage = 39;
+
+		// other research products specifics
+		repeated StringField contactperson = 45;
+		repeated StringField contactgroup = 41;
+		repeated StringField tool = 42;
+
+	}
+	
+	// <concept id="egi::vo::alice" />
+	message Context {
+		required string id = 1;
+		repeated DataInfo dataInfo = 2;
+	}
+	
+	message Instance {
+
+		optional StringField license = 6;
+		optional Qualifier accessright = 3;
+		optional Qualifier instancetype = 4;
+	
+		optional KeyValue hostedby = 5;
+		repeated string url = 9;
+
+		// other research products specific
+		optional string distributionlocation = 12;
+
+		optional KeyValue collectedfrom = 10;
+		optional StringField dateofacceptance = 11;
+	}
+	
+	message ExternalReference {
+	
+		optional string sitename = 1;		// source
+		optional string label = 2;			// title
+		optional string url = 3;			// text()
+		optional string description = 4;	// ?? not mapped yet ??
+		optional Qualifier qualifier = 5;	// type
+		optional string refidentifier = 6;	// site internal identifier
+		optional string query = 7;			// maps the oaf:reference/@query attribute
+		optional DataInfo dataInfo = 8;		// ExternalReferences might be also inferred
+	}
+
+	message GeoLocation {
+
+		optional string point = 1;
+		optional string box = 2;
+		optional string place = 3;
+	}
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization.proto	(revision 57461)
@@ -0,0 +1,33 @@
+package eu.dnetlib.data.proto;
+
+import "FieldType.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "OrganizationProtos";
+
+message Organization {
+
+	optional Metadata metadata = 2;
+
+	message Metadata {
+		optional StringField legalshortname = 1;
+		optional StringField legalname = 2;
+		repeated StringField alternativeNames = 17;
+		optional StringField websiteurl = 3;
+		optional StringField logourl = 4;
+		optional StringField eclegalbody = 5;
+		optional StringField eclegalperson = 6;
+		optional StringField ecnonprofit = 7;
+		optional StringField ecresearchorganization = 8;
+		optional StringField echighereducation = 9;
+		optional StringField ecinternationalorganizationeurinterests = 10;
+		optional StringField ecinternationalorganization = 11;
+		optional StringField ecenterprise = 12;
+		optional StringField ecsmevalidated = 13;
+		optional StringField ecnutscode = 14;
+
+		optional Qualifier country = 16;
+
+	}
+
+}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project_Organization.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project_Organization.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project_Organization.proto	(revision 57461)
@@ -0,0 +1,24 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ProjectOrganizationProtos";
+
+message ProjectOrganization {
+
+	optional Participation participation = 1;
+
+	message Participation {
+
+		enum RelName {
+			isParticipant = 1;
+			hasParticipant = 2;
+		}
+
+		required RelMetadata relMetadata = 1;
+		optional string participantnumber = 2;
+		optional float contribution = 3;
+	}
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Project.proto	(revision 57461)
@@ -0,0 +1,48 @@
+package eu.dnetlib.data.proto;
+
+import "FieldType.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ProjectProtos";
+
+message Project {
+
+	optional Metadata metadata = 2;
+
+	message Metadata {
+
+		optional StringField websiteurl = 1;
+		optional StringField code = 2;
+		optional StringField acronym = 3;
+		optional StringField title = 4;
+		optional StringField startdate = 5;
+		optional StringField enddate = 6;
+		optional StringField callidentifier = 7;
+		optional StringField keywords = 8;
+		optional StringField duration = 9;
+		optional StringField ecsc39 = 10;
+		optional StringField oamandatepublications = 11;
+		optional StringField ecarticle29_3 = 12;
+		repeated StructuredProperty subjects = 14; 
+		
+		repeated StringField fundingtree = 15;
+
+		optional Qualifier contracttype = 13;
+
+		optional StringField optional1 = 16;
+		optional StringField optional2 = 17;
+		optional StringField jsonextrainfo = 18;
+
+		optional StringField contactfullname = 19;
+		optional StringField contactfax = 20;
+		optional StringField contactphone = 21;
+		optional StringField contactemail = 22;
+
+		optional StringField summary = 23;
+		optional StringField currency = 24;
+		optional float totalcost = 25;
+		optional float fundedamount = 26;
+
+	}
+	
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/FieldType.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/FieldType.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/FieldType.proto	(revision 57461)
@@ -0,0 +1,122 @@
+package eu.dnetlib.data.proto;
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "FieldTypeProtos";
+
+message StringField {
+
+ 	required string value = 1;
+	optional DataInfo dataInfo = 2;
+}
+
+message BoolField {
+
+ 	required bool value = 1;
+	optional DataInfo dataInfo = 2;
+}
+
+message IntField {
+
+ 	required int32 value = 1;
+	optional DataInfo dataInfo = 2;
+}
+
+message StructuredProperty {
+
+	required string value = 1;
+	optional Qualifier qualifier = 2;
+	optional DataInfo dataInfo = 3;
+}
+
+// Generic container for identified values, e.g:
+//   <oaf:hostedBy name="Publications at Bielefeld University" id="opendoar::2294"/>
+//   <oaf:collectedFrom name="Publications at Bielefeld University" id="opendoar::2294"/>
+message KeyValue {
+
+	required string key = 1;
+	optional string value = 2;
+	
+	optional DataInfo dataInfo = 3;
+}
+
+message Qualifier {
+
+	optional string classid = 1;
+	optional string classname = 2;
+	optional string schemeid = 3;
+	optional string schemename = 4;
+	
+	optional DataInfo dataInfo = 5;
+}
+
+message DataInfo {
+
+	optional bool invisible = 6 [default = false];
+	optional bool inferred = 1;
+	optional bool deletedbyinference = 2;
+	optional string trust = 3;
+	optional string inferenceprovenance = 4;
+
+	required Qualifier provenanceaction = 5;
+}
+
+message OAIProvenance {
+
+	optional OriginDescription originDescription = 1;
+
+	message OriginDescription {
+		
+		optional string harvestDate = 1;
+		optional bool altered = 2 [default = true];
+		
+		optional string baseURL = 3;
+		optional string identifier = 4;
+		optional string datestamp = 5;
+		optional string metadataNamespace = 6;
+		
+		optional OriginDescription originDescription = 7;		
+	}
+}
+
+message ExtraInfo {
+
+	required string name = 1;
+	required string typology = 2;
+	required string provenance = 3;
+	optional string trust = 4;
+	
+	// json containing a Citation or Statistics
+	optional string value = 5;
+
+}
+
+message Author {
+
+	required string fullname = 1;
+
+	optional string name = 2;
+	optional string surname = 3;
+
+	required int32 rank = 4;
+
+	repeated KeyValue pid = 5;
+	repeated StringField affiliation = 6;
+}
+
+message Journal {
+	optional string name = 1;
+	optional string issnPrinted = 2;
+	optional string issnOnline = 3;
+	optional string issnLinking = 4;
+
+	optional string ep = 6;
+	optional string iss = 7;
+	optional string sp = 8;
+	optional string vol = 9;
+
+	optional string edition = 10;
+	optional string conferenceplace = 11;
+	optional string conferencedate = 12;
+
+	optional DataInfo dataInfo = 5;
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource.proto	(revision 57461)
@@ -0,0 +1,63 @@
+package eu.dnetlib.data.proto;
+
+import "FieldType.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "DatasourceProtos";
+
+message Datasource {
+
+	optional Metadata metadata = 2;
+
+	message Metadata {
+	
+		// common fields
+		optional Qualifier datasourcetype = 15;
+		optional Qualifier openairecompatibility = 17;
+
+		optional StringField officialname = 1;
+		optional StringField englishname = 2;
+		optional StringField websiteurl = 3;
+		optional StringField logourl = 4;
+		optional StringField contactemail = 5;
+		optional StringField namespaceprefix = 7;
+
+		optional StringField latitude = 18;
+		optional StringField longitude = 19;
+		optional StringField dateofvalidation = 20;
+		optional StringField description = 21;
+		
+		repeated StructuredProperty subjects = 45; 
+
+		// opendoar specific fields (od*)
+		optional StringField odnumberofitems = 9;
+		optional StringField odnumberofitemsdate = 10;
+		optional StringField odpolicies = 12;
+
+		repeated StringField odlanguages = 13;
+		repeated StringField odcontenttypes = 14;
+		repeated StringField accessinfopackage = 6;
+		
+		// re3data fields
+		optional StringField releasestartdate = 31; 
+		optional StringField releaseenddate = 32;
+		optional StringField missionstatementurl = 33;
+		optional BoolField dataprovider = 34;
+		optional BoolField serviceprovider = 35;
+		optional StringField databaseaccesstype = 36; // {open, restricted or closed} 
+ 		optional StringField datauploadtype = 37; // {open, restricted or closed} 
+ 		optional StringField databaseaccessrestriction = 38; // {feeRequired, registration, other} 
+ 		optional StringField datauploadrestriction = 39; // {feeRequired, registration, other} 
+ 		optional BoolField versioning = 40; 
+ 		optional StringField citationguidelineurl = 41; 
+ 		optional StringField qualitymanagementkind = 42; // {yes, no, uknown} 
+ 		optional StringField pidsystems = 43; 
+ 		optional StringField certificates = 44;		
+
+		repeated KeyValue policies = 46; 
+		optional Journal journal = 47;
+		
+
+	}
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/OafParent.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/OafParent.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/OafParent.proto	(revision 57461)
@@ -0,0 +1,93 @@
+package eu.dnetlib.data.proto;
+
+import "Kind.proto";
+import "FieldType.proto";
+
+// for Oafentity
+import "Type.proto";
+import "Datasource.proto";
+import "Organization.proto";
+import "Project.proto";
+import "Result.proto";
+
+// for OafRel
+import "RelType.proto";
+import "Datasource_Organization.proto";
+import "Project_Organization.proto";
+import "Result_Organization.proto";
+import "Result_Project.proto";
+import "Result_Result.proto";
+import "Organization_Organization.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "OafProtos";
+
+message Oaf {
+  required Kind kind = 1;
+
+  optional OafEntity entity = 2;
+  optional OafRel rel = 3;
+
+  optional DataInfo dataInfo = 4;
+
+	// used to mark the last update time of this object
+  optional sfixed64 lastupdatetimestamp = 5;
+}
+
+message OafEntity {
+  required Type type = 1;
+  required string id = 12;
+  
+  repeated string originalId = 8;
+  repeated KeyValue collectedfrom = 9;
+  
+  repeated StructuredProperty pid = 10;
+  optional string dateofcollection = 11;
+  optional string dateoftransformation = 13;
+
+  /* Any relation that we want to bundle together with this entity.
+   It's intended to be used only in temporary values in map/red jobs (sequence files, ...)
+   and never persisted values stored in  HBase. */
+  repeated OafRel cachedRel = 2;
+  repeated Oaf cachedOafRel = 18;
+
+  optional Datasource datasource = 3;
+  optional Organization organization = 4;
+  optional Project project = 6;
+  optional Result result = 7;
+  
+  repeated OafEntity children = 16;
+  
+  repeated ExtraInfo extraInfo = 15;
+  
+  optional OAIProvenance oaiprovenance = 17;
+}
+
+
+message OafRel {
+  required RelType relType = 1;
+  required SubRelType subRelType = 19;
+  required string relClass = 20;	// one among the SubRel names, e.g. Provision.RelName.isProvidedBy
+
+  required string source = 2;
+  required string target = 3;
+
+  /* if true then is a "child" */
+  required bool child = 4;
+
+  optional OafEntity cachedTarget = 5;
+
+  // needed to have more information that is not included in cachedTarget.
+  optional Oaf cachedOafTarget = 8;
+
+  // Datamodel rels
+  optional DatasourceOrganization datasourceOrganization = 6;
+  optional ProjectOrganization projectOrganization = 9;
+  optional ResultOrganization resultOrganization = 10;
+  optional ResultProject resultProject = 11;
+  optional ResultResult resultResult = 16;
+  optional OrganizationOrganization organizationOrganization = 17;
+
+  repeated KeyValue collectedfrom = 21;
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Type.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Type.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Type.proto	(revision 57461)
@@ -0,0 +1,12 @@
+package eu.dnetlib.data.proto;
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "TypeProtos";
+
+// entity tags are used as rowkey prefixes on hbase
+enum Type {
+	datasource = 10;
+	organization = 20;
+	project = 40;
+	result = 50;
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelType.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelType.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelType.proto	(revision 57461)
@@ -0,0 +1,36 @@
+package eu.dnetlib.data.proto;
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "RelTypeProtos";
+
+enum RelType {
+
+	// Datamodel rels
+	datasourceOrganization = 1;
+	projectOrganization = 4;
+	resultOrganization = 5;
+	resultProject = 6;
+	resultResult = 9;
+	organizationOrganization = 11;
+
+}
+
+enum SubRelType {
+
+	provision = 1;			// datasourceOrganization
+	participation = 4;		// projectOrganization
+	outcome = 6;			// resultProject
+	similarity = 8;			// resultResult
+	publicationDataset = 9; // resultResult
+	affiliation = 12;		// resultOrganizaiton	
+	
+	dedup = 10;				// resultResult | organizationOrganization
+	dedupSimilarity = 11;	// resultResult | organizationOrganization
+
+	supplement = 13;        // resultResult
+	part = 15;              // resultResult
+
+	version = 16;			// resultResult
+
+	relationship = 17;		// catch all
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Result.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Result.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Result.proto	(revision 57461)
@@ -0,0 +1,94 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+import "Dedup.proto";
+import "DedupSimilarity.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ResultResultProtos";
+
+message ResultResult {
+
+	//choice of the possible subtypes
+	optional Similarity similarity = 2;
+	optional PublicationDataset publicationDataset = 3;
+ 	optional Dedup dedup = 4;
+  	optional DedupSimilarity dedupSimilarity = 5;
+
+  	optional Supplement supplement = 6;
+  	optional Part part = 7;
+
+	optional Relationship relationship = 8;
+
+	optional SoftwareSoftware softwareSoftware = 9;
+	
+	message Similarity {
+	
+		enum RelName {
+			isAmongTopNSimilarDocuments = 1;
+			hasAmongTopNSimilarDocuments = 2;
+		}	
+
+		required RelMetadata relMetadata = 1;
+		
+		// level of similarity: coefficient from [0, 1] range,
+		// the greater the number, the more similar the documents
+    	optional float similarity = 2;
+
+    	enum Type {
+			STANDARD = 1;
+			WEBUSAGE = 2;
+    	}
+
+		// similarity type
+    	optional Type type = 3 [default = STANDARD];		
+	}
+
+	message PublicationDataset {
+	
+		enum RelName {
+			isRelatedTo = 1;
+		}		
+	
+		required RelMetadata relMetadata = 1;
+	}
+
+	message Supplement {
+
+        enum RelName {
+            isSupplementTo = 1;
+            isSupplementedBy = 2;
+        }
+
+        required RelMetadata relMetadata = 1;
+    }
+
+	message Part {
+
+        enum RelName {
+            isPartOf = 1;
+            hasPart = 2;
+        }
+
+        required RelMetadata relMetadata = 1;
+    }
+
+	message SoftwareSoftware {
+
+		enum RelName {
+			isVersionOf = 1;
+		}
+
+		required RelMetadata relMetadata = 1;
+	}
+
+	message Relationship {
+
+		enum RelName {
+			isRelatedTo = 1;
+		}
+
+		required RelMetadata relMetadata = 1;
+	}
+	
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Organization.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Organization.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Organization.proto	(revision 57461)
@@ -0,0 +1,23 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ResultOrganizationProtos";
+
+message ResultOrganization {
+
+	optional Affiliation affiliation = 1;
+	
+	message Affiliation {
+
+		enum RelName {
+			isAuthorInstitutionOf = 1; 	// Organization --> Result
+			hasAuthorInstitution = 2;	// Result --> Organization
+		}
+
+		required RelMetadata relMetadata = 1;
+	
+	}
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource_Organization.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource_Organization.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Datasource_Organization.proto	(revision 57461)
@@ -0,0 +1,23 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "DatasourceOrganizationProtos";
+
+message DatasourceOrganization {
+
+	optional Provision provision = 1;
+	
+	message Provision {
+	
+		enum RelName {
+			isProvidedBy = 1;
+			provides = 2;
+		}
+
+		required RelMetadata relMetadata = 1;
+	
+	}
+
+}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelMetadata.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelMetadata.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/RelMetadata.proto	(revision 57461)
@@ -0,0 +1,15 @@
+package eu.dnetlib.data.proto;
+
+import "FieldType.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "RelMetadataProtos";
+
+message RelMetadata {
+
+	optional Qualifier semantics = 1;
+
+	optional string startdate = 3;
+	optional string enddate = 4;
+
+}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization_Organization.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization_Organization.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Organization_Organization.proto	(revision 57461)
@@ -0,0 +1,15 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+import "Dedup.proto";
+import "DedupSimilarity.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "OrganizationOrganizationProtos";
+
+message OrganizationOrganization {
+
+ 	optional Dedup dedup = 1;
+  	optional DedupSimilarity dedupSimilarity = 2;
+
+}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Dedup.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Dedup.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Dedup.proto	(revision 57461)
@@ -0,0 +1,16 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "DedupProtos";
+
+message Dedup {
+
+	enum RelName {
+		isMergedIn = 1;
+		merges = 2;
+	}
+		
+	required RelMetadata relMetadata = 1;
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Project.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Project.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Result_Project.proto	(revision 57461)
@@ -0,0 +1,23 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "ResultProjectProtos";
+
+message ResultProject {
+
+	optional Outcome outcome = 1;
+	
+	message Outcome {
+
+		enum RelName {
+			isProducedBy = 1;
+			produces = 2;
+		}
+
+		required RelMetadata relMetadata = 1;
+	
+	}
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/DedupSimilarity.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/DedupSimilarity.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/DedupSimilarity.proto	(revision 57461)
@@ -0,0 +1,16 @@
+package eu.dnetlib.data.proto;
+
+import "RelMetadata.proto";
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "DedupSimilarityProtos";
+
+message DedupSimilarity {
+
+	enum RelName {
+		isSimilarTo = 1;
+	}
+
+	required RelMetadata relMetadata = 1;
+
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/SpecialTrust.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/SpecialTrust.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/SpecialTrust.proto	(revision 57461)
@@ -0,0 +1,9 @@
+package eu.dnetlib.data.proto;
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "SpecialTrustProtos";
+
+enum SpecialTrust {
+	INFINITE = 1;
+	NEUTRAL = 2;
+}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Kind.proto
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Kind.proto	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/src/main/resources/eu/dnetlib/data/proto/Kind.proto	(revision 57461)
@@ -0,0 +1,9 @@
+package eu.dnetlib.data.proto;
+
+option java_package = "eu.dnetlib.data.proto";
+option java_outer_classname = "KindProtos";
+
+enum Kind {
+	entity = 1;
+	relation = 2;
+}
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/deploy.info
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/deploy.info	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250/deploy.info	(revision 57461)
@@ -0,0 +1 @@
+{"type_source": "SVN", "goal": "package -U -T 4C source:jar", "url": "http://svn-public.driver.research-infrastructures.eu/driver/dnet45/modules/dnet-openaire-data-protos/trunk/", "deploy_repository": "dnet4-snapshots", "version": "4", "mail": "sandro.labruzzo@isti.cnr.it,michele.artini@isti.cnr.it, claudio.atzori@isti.cnr.it, alessia.bardi@isti.cnr.it", "deploy_repository_url": "http://maven.research-infrastructures.eu/nexus/content/repositories/dnet45-snapshots", "name": "dnet-openaire-data-protos"}
\ No newline at end of file
Index: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250
===================================================================
--- modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250	(nonexistent)
+++ modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250	(revision 57461)

Property changes on: modules/dnet-openaire-data-protos/tags/dnet-openaire-data-protos-3.9.5-proto250
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,6 ##
+.project
+.classpath
+.settings
+target
+src/gen/java
+*.iml
