protected String convertBaseGraphRelationshipForMatchClause(BaseGraphRelationship baseGraphRelationship) throws InformationProblem {
		String relStr = "";
		
		// the depth first visitor follows outbound relationships, so relationship should be --> this is an assumption that might break
		
		if (baseGraphRelationship != null) {
			
			relStr = relStr + "-";
			
			boolean hasLocalAlias = ((baseGraphRelationship.getLocalAlias() != null) && (baseGraphRelationship.getLocalAlias().length() > 0));
			boolean hasRelationType = ((baseGraphRelationship.getRelationshipType() != null) && (baseGraphRelationship.getRelationshipType().length() > 0));

			String relPropStr = graphComponentPropertiesAsCypherString(baseGraphRelationship.getProperties());
			
			boolean hasProperties = ((relPropStr != null) && (relPropStr.length() > 0));
			
			if (hasLocalAlias | hasRelationType | hasProperties) {
				relStr = relStr + "[";
				
				if (hasLocalAlias) {
					relStr = relStr + baseGraphRelationship.getLocalAlias();
				}
				
				if (hasRelationType) {
					relStr = relStr + ":`" + baseGraphRelationship.getRelationshipType() + "`";
				}
				
				if (hasProperties) {
					relStr = relStr + relPropStr;
				}
				
				relStr = relStr + "]";
			}
			
			if (baseGraphRelationship.getDirectionMatters()) {
				relStr = relStr + "->";
			} else {
				relStr = relStr + "-";
			}
		}
		
		return relStr;		
	}