code: @Override
      protected String findValueImpl(Document object,String path)
      {
          //split path to parts
          String[] pathParts=path.split(AbstractMappingHTTPResponseHandler.VALUES_SEPERATOR);
          int pathPartsAmount=pathParts.length;
          String pathPart=null;
          StringBuilder buffer=new StringBuilder(500);
          for(int index=0;index<pathPartsAmount;index++)
          {
              //get next path part
              pathPart=pathParts[index];
              
              if(pathPart.length()>0)
              {
                  buffer.append("/");
                  buffer.append(pathPart);
              }
          }
          String xpathExpressionStr=buffer.toString();
  
          XPathFactory xpathFactory=XPathFactory.newInstance();
          XPath xpath=xpathFactory.newXPath();
          String value=null;
          try
          {
              //compile path to xpath
              XPathExpression xpathExpression=xpath.compile(xpathExpressionStr);
  
              //find value
              value=xpathExpression.evaluate(object);
          }
          catch(XPathExpressionException exception)
          {
              throw new FaxException("Unable to parse/evaluate xpath expression: "+path,exception);
          }
  
          return value;
      }
docs: This function returns the requested value from the object data.<br>
  The path is a set of key names seperated by ';'.
  
  @param   object
  The object holding all the data
  @param   path
  The path to the value (elements seperated by ;)
  @return  The value (null if not found)