diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormController.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormController.js
index 2a9e6c67df933f4b97f30562b84fbe38a05391af..043e1ba3bf7cbdc46fbd89ff1b2bd02a779138a4 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormController.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormController.js
@@ -230,9 +230,16 @@ function SampleFormController(mainController, mode, sample) {
 		// Sending the request to the server
 		//
 		if(profile.getDefaultDataStoreCode()) {
-			mainController.serverFacade.createReportFromAggregationService(profile.getDefaultDataStoreCode(), parameters, function(response) {
-				_this._createUpdateCopySampleCallback(_this, isCopyWithNewCode, response);
-			});
+			
+			var commit = function() {
+				mainController.serverFacade.createReportFromAggregationService(profile.getDefaultDataStoreCode(), parameters, function(response) {
+					_this._createUpdateCopySampleCallback(_this, isCopyWithNewCode, response);
+				});
+			}
+			
+			this._updateAnnotationsUsingCopyParentsInfo(sampleParentsFinal, commit);
+			
+			
 		} else {
 			Util.showError("No DSS available.", function() {Util.unblockUI();});
 		}
@@ -240,6 +247,56 @@ function SampleFormController(mainController, mode, sample) {
 		return false;
 	}
 	
+	this._updateAnnotationsUsingCopyParentsInfo = function(newParents, nextAction) {
+		var _this = this;
+		//Annotations from where to add and discard
+		var newAnnotations = FormUtil.getAnnotationsFromSample(this._sampleFormModel.sample);
+		var newParents = newParents;
+		
+		//Made modifications depending on
+		var sampleTypeDefinitionsExtension = profile.sampleTypeDefinitionsExtension[this._sampleFormModel.sample.sampleTypeCode];
+		var sampleParentsAnnotationsCopy = null;
+		if(sampleTypeDefinitionsExtension) {
+			sampleParentsAnnotationsCopy = sampleTypeDefinitionsExtension["SAMPLE_PARENTS_ANNOTATIONS_COPY"];
+		}
+		
+		//Add automatic annotations
+		var builAnnotationsAction = function(parentsReturned) {
+			var finalAnnotations = {};
+			for(var pIdx = 0; pIdx < parentsReturned.length; pIdx++) {
+				var sampleTypeCode = parentsReturned[pIdx].sampleTypeCode;
+				var copyAnnotationsOfTypes = sampleParentsAnnotationsCopy[sampleTypeCode];
+				var annotationsProperty = parentsReturned[pIdx].properties["ANNOTATIONS_STATE"];
+				var annotationsObj = FormUtil.getAnnotationsFromSample(parentsReturned[pIdx]);
+				//Add annotations from requested types and add container
+				for(permId in annotationsObj) {
+					var annotatedSample = annotationsObj[permId];
+					var annotatedSampleType = annotatedSample.sampleType;
+					if(jQuery.inArray(annotatedSampleType, copyAnnotationsOfTypes) !== -1) {
+						annotatedSample["CONTAINED"] =  _this._sampleFormModel.sample.identifier;
+						finalAnnotations[permId] = annotatedSample;
+					}
+				}
+			}
+			
+			//Add annotations from samples without contained property, these are supposed to be user generated
+			for(permId in newAnnotations) {
+				if(!newAnnotations[permId]["CONTAINED"]) {
+					finalAnnotations[permId] = newAnnotations[permId];
+				}
+			}
+			
+			//Build XML from annotations object
+			var annotationsXML = FormUtil.getXMLFromAnnotations(finalAnnotations);
+			//Update property
+			_this._sampleFormModel.sample.properties["ANNOTATIONS_STATE"] = annotationsXML;
+			//Trigger next step
+			nextAction();
+		}
+		
+		mainController.serverFacade.searchWithIdentifier(null, builAnnotationsAction, newParents);
+	}
+	
 	this._createUpdateCopySampleCallback = function(_this, isCopyWithNewCode, response) {
 		if(response.error) { //Error Case 1
 			Util.showError(response.error.message, function() {Util.unblockUI();});
diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormView.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormView.js
index 204c3d9e791944cc41f82dd583117789611bb4d2..43fce29318673edb6d0a5c84015a81374bbf720f 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormView.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm/SampleFormView.js
@@ -238,6 +238,7 @@ function SampleFormView(sampleFormController, sampleFormModel) {
 				orphanSample.code = annotationsFromSample[orphanSamplePermId].identifier.split('/')[2];
 				orphanSample.identifier = annotationsFromSample[orphanSamplePermId].identifier;
 				orphanSample.sampleTypeCode = annotationsFromSample[orphanSamplePermId].sampleType;
+				orphanSample.properties = { "NAME" : "TO-DO, get names on links"};
 				currentOrphanLinks.push(orphanSample);
 			}
 		}