diff --git a/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php b/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
index cd1c462..20fccfb 100644
--- a/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
+++ b/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
@@ -269,9 +269,11 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		//Plot type
 		$plotNode = $this->unmarshallPlotType($panelData, $panelNode);
 		
+		$isTimePlot = ($plotNode->getName() == REQUESTOUTPUTPLOTELEMENTTIME_NAME);
+		
 		//Tick plot
 		$tickPlotNode = NULL;
-		if ($plotNode->getName() == REQUESTOUTPUTPLOTELEMENTTIME_NAME)
+		if ($isTimePlot)
 		{
 			if ($this->hasTickBar($panelData->{'params'}))
 			{
@@ -283,7 +285,7 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		
 		//Status plot
 		$statusPlotNode = NULL;
-		if ($plotNode->getName() == REQUESTOUTPUTPLOTELEMENTTIME_NAME)
+		if ($isTimePlot)
 		{
 			if ($this->hasStatusBar($panelData->{'params'}))
 			{
@@ -308,6 +310,10 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		//Params
 		$this->unmarshallParams($panelData->{'params'}, $paramsNode, $plotNode, $panelNode, $statusPlotNode, $tickPlotNode);
 		
+		//Additional objects
+		if ($plotNode->getAdditionalObjects() != NULL)
+			$this->unmarshallAdditionalObjects($panelData, $plotNode->getAdditionalObjects(), $isTimePlot);
+		
 		return $panelNode;
 	}
 	
@@ -817,6 +823,67 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		$this->unmarshallCurve($constantData, "constant-line", $constantNode);
 	}
 	
+	protected function unmarshallAdditionalObjects($panelData, $addObjectsNode, $isTimePlot)
+	{
+		foreach ($panelData->{'textObjs'} as $textData)
+			$this->unmarshallTextObject($textData, $addObjectsNode, $isTimePlot);
+	}
+	
+	protected function unmarshallTextObject($textData, $addObjectsNode, $isTimePlot)
+	{
+		$textNode = $addObjectsNode->addTextObject();
+		
+		$textNode->setText($textData->{'text-value'});
+		
+		switch ($textData->{'text-y-axis'})
+		{
+			case 'y-right' :
+				$textNode->setYAxis('y-right');
+				break;
+			case 'y-left' :
+				$textNode->setYAxis('y-left');
+				break;
+		}
+		
+		if ($isTimePlot && !$textData->{'text-x-relative'})
+		{
+			date_default_timezone_set('UTC');
+			$timeStamp = strtotime($textData->{'text-x-timevalue'});
+			$time = CommonClass::timeStampToDDTime($timeStamp);
+			$textNode->setX($time);
+		}
+		else if ($textData->{'text-x-relative'})
+			$textNode->setX(($textData->{'text-x-floatvalue'}*100)."%");
+		else
+			$textNode->setX($textData->{'text-x-floatvalue'});
+		
+		if ($textData->{'text-y-relative'})
+			$textNode->setY(($textData->{'text-y-value'}*100)."%");
+		else
+			$textNode->setY($textData->{'text-y-value'});
+		
+		$textNode->setAngle($textData->{'text-angle'});
+		
+		$textNode->setColor($this->hexColor2KernelColor($textData->{'text-color'}));
+		
+		switch ($textData->{'text-align'})
+		{
+			case 'center' :
+				$textNode->setAlign(RequestOutputPlotTextAlign::CENTER);
+				break;
+			case 'right' :
+				$textNode->setAlign(RequestOutputPlotTextAlign::RIGHT);
+				break;
+			case 'left' :
+			default:
+				$textNode->setAlign(RequestOutputPlotTextAlign::LEFT);
+		}
+		
+		//Font
+		if ($textData->{'text-font-activated'})
+			$this->unmarshallFont($textData, 'text-font', $textNode->getFont());
+	}
+	
 	protected function unmarshallTitle($inputData, $keyPrefix, $titleNode)
 	{
 		if ($inputData->{$keyPrefix.'-text'} != '')
diff --git a/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotAdditionalObjectsNodeClass.php b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotAdditionalObjectsNodeClass.php
new file mode 100644
index 0000000..64df3c9
--- /dev/null
+++ b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotAdditionalObjectsNodeClass.php
@@ -0,0 +1,25 @@
+<?php
+
+define ("REQUESTOUTPUTPLOTADDITIONALOBJECTS_NAME", "additionalObjects");
+
+/**
+ * @class RequestOutputPlotAdditionalObjectsNodeClass
+ * @brief Definition of additional objects for a plot
+ * @details
+ */
+class RequestOutputPlotAdditionalObjectsNodeClass extends NodeClass
+{
+	public function __construct()
+	{
+		parent::__construct(REQUESTOUTPUTPLOTADDITIONALOBJECTS_NAME);
+	}
+	
+	public function addTextObject()
+	{
+		$node = new RequestOutputPlotTextNodeClass();
+		$this->addChild($node);
+		return $node;
+	}
+}
+
+?>
\ No newline at end of file
diff --git a/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotElementNodeClass.php b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotElementNodeClass.php
index 3da8701..3e35b27 100644
--- a/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotElementNodeClass.php
+++ b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotElementNodeClass.php
@@ -37,12 +37,12 @@ class RequestOutputPlotElementNodeClass extends NodeClass
 			$this->addChild($node);
 		}
 			
-		//ToDo additional objects
-		/*if ($defineAdditionalObjects)
-		 {
-		$node = new RequestOutputPlotAdditionalObjectsNodeClass();
-		$this->addChild($node);
-		}*/
+		//additional objects
+		if ($defineAdditionalObjects)
+		{
+			$node = new RequestOutputPlotAdditionalObjectsNodeClass();
+			$this->addChild($node);
+		}
 
 		//ToDo fills
 		/*if ($defineFills)
diff --git a/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotTextNodeClass.php b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotTextNodeClass.php
new file mode 100644
index 0000000..15f556a
--- /dev/null
+++ b/src/Request/ParamsRequestImpl/Nodes/Requests/RequestOutputPlotTextNodeClass.php
@@ -0,0 +1,116 @@
+<?php
+
+define ("REQUESTOUTPUTPLOTTEXT_NAME", "textPlot");
+define ("REQUESTOUTPUTPLOTTEXT_TEXT", "text");
+define ("REQUESTOUTPUTPLOTTEXT_YAXIS", "yAxis");
+define ("REQUESTOUTPUTPLOTTEXT_X", "x");
+define ("REQUESTOUTPUTPLOTTEXT_Y", "y");
+define ("REQUESTOUTPUTPLOTTEXT_ANGLE", "angle");
+define ("REQUESTOUTPUTPLOTTEXT_COLOR", "color");
+define ("REQUESTOUTPUTPLOTTEXT_ALIGN", "align");
+define ("REQUESTOUTPUTPLOTTEXT_FONT", "font");
+
+abstract class RequestOutputPlotTextAlign
+{
+	const CENTER = "center";
+	const LEFT   = "left";
+	const RIGHT  = "right";
+}
+
+/**
+ * @class RequestOutputPlotTextNodeClass
+ * @brief Definition of a text element for a plot
+ * @details
+ */
+class RequestOutputPlotTextNodeClass extends NodeClass
+{
+	public function __construct()
+	{
+		parent::__construct(REQUESTOUTPUTPLOTTEXT_NAME);
+	}
+	
+	public function setText($text)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_TEXT, $text);
+	}
+	
+	public function getText()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_TEXT);
+	}
+	
+	public function setYAxis($yAxis)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_YAXIS, $yAxis);
+	}
+	
+	public function getYAxis()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_YAXIS);
+	}
+	
+	public function setX($x)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_X, $x);
+	}
+	
+	public function getX()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_X);
+	}
+	
+	public function setY($y)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_Y, $y);
+	}
+	
+	public function getY()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_Y);
+	}
+	
+	public function setAngle($angle)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_ANGLE, $angle);
+	}
+	
+	public function getAngle()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_ANGLE);
+	}
+	
+	public function setColor($color)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_COLOR, $color);
+	}
+	
+	public function getColor()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_COLOR);
+	}
+	
+	public function setAlign($align)
+	{
+		$this->setAttribute(REQUESTOUTPUTPLOTTEXT_ALIGN, $align);
+	}
+	
+	public function getAlign()
+	{
+		return $this->getAttribute(REQUESTOUTPUTPLOTTEXT_ALIGN);
+	}
+	
+	public function getFont()
+	{
+		$node = $this->getFirstChildByName(REQUESTOUTPUTPLOTTEXT_FONT);
+	
+		if (!isset($node))
+		{
+			$node = new RequestOutputPlotFontNodeClass();
+			$this->addChild($node);
+		}
+	
+		return $node;
+	}
+}
+
+?>
\ No newline at end of file
--
libgit2 0.21.2