code: private IRI getReferencePropertyIRI(ForeignKeyConstraint fk) {
          List<String> attributes = new ArrayList<>(fk.getComponents().size());
   		for (Component component : fk.getComponents())
              attributes.add(R2RMLIRISafeEncoder.encode(component.getAttribute().getID().getName()));
          
          return rdfFactory.createIRI(baseIRI + R2RMLIRISafeEncoder.encode(fk.getRelation().getID().getTableName())
                  + "#ref-" + Joiner.on(";").join(attributes));
      }
docs: /*
  Generate an URI for object property from a string (name of column)
  
  A foreign key in a table forms a reference property IRI:
  
  Definition reference property IRI: the concatenation of:
  - the percent-encoded form of the table name,
  - the string '#ref-',
  - for each column in the foreign key, in order:
  - the percent-encoded form of the column name,
  - if it is not the last column in the foreign key, a SEMICOLON character ';'