public void update() throws MaltChainedException {
		// Retrieve the address value 
		final AddressValue arg1 = addressFunction1.getAddressValue();
		final AddressValue arg2 = addressFunction2.getAddressValue();
		try {

			if (arg1.getAddress() == null || arg2.getAddress() == null) {
				featureValue.setIndexCode(table.getNullValueCode(NullValueId.NO_NODE));
				featureValue.setSymbol(table.getNullValueSymbol(NullValueId.NO_NODE));
				featureValue.setNullValue(true); 
			} else {
				final DependencyNode node1 = (DependencyNode)arg1.getAddress();
				final DependencyNode node2 = (DependencyNode)arg2.getAddress();
				
				int head1 = -1;
				int head2 = -1;

				if ( node1.hasHead() )
				{
					head1 = node1.getHead().getIndex(); //lines below don't seem to work
					//head1 = Integer.parseInt(node1.getHeadEdgeLabelSymbol(column.getSymbolTable()));
					//if ( node1.hasHeadEdgeLabel(column.getSymbolTable()) )
					//	head1 = Integer.parseInt(node1.getHeadEdgeLabelSymbol(column.getSymbolTable()));
				}
				if ( node2.hasHead() )
				{
					head2 = node2.getHead().getIndex(); //lines below don't seem to work
					//head2 = Integer.parseInt(node2.getHeadEdgeLabelSymbol(column.getSymbolTable()));
					//if ( node2.hasHeadEdgeLabel(column.getSymbolTable()) )
					//	head2 = Integer.parseInt(node2.getHeadEdgeLabelSymbol(column.getSymbolTable()));
				}
				if (!node1.isRoot() && head1 == node2.getIndex()) {
					featureValue.setIndexCode(table.getSymbolStringToCode("LEFT"));
					featureValue.setSymbol("LEFT");
					featureValue.setNullValue(false);
				} else if (!node2.isRoot() && head2 == node1.getIndex()) {
					featureValue.setIndexCode(table.getSymbolStringToCode("RIGHT"));
					featureValue.setSymbol("RIGHT");
					featureValue.setNullValue(false);			
				} else {
					featureValue.setIndexCode(table.getNullValueCode(NullValueId.NO_NODE));
					featureValue.setSymbol(table.getNullValueSymbol(NullValueId.NO_NODE));
					featureValue.setNullValue(true);
				}
			}
		} catch (NumberFormatException e) {
			throw new FeatureException("The index of the feature must be an integer value. ", e);
		}
//		featureValue.setKnown(true);
		featureValue.setValue(1);
	}