code: public Tag getTagEntity(String objectIRI, String label, Relation relation, String codeSystemIRI) {
      Tag tag =
          dataService
              .query(TAG, Tag.class)
              .eq(OBJECT_IRI, objectIRI)
              .and()
              .eq(RELATION_IRI, relation.getIRI())
              .and()
              .eq(CODE_SYSTEM, codeSystemIRI)
              .findOne();
      if (tag == null) {
        tag = tagFactory.create();
        tag.setId(idGenerator.generateId());
        tag.setObjectIri(objectIRI);
        tag.setLabel(label);
        tag.setRelationIri(relation.getIRI());
        tag.setRelationLabel(relation.getLabel());
        tag.setCodeSystem(codeSystemIRI);
        dataService.add(TAG, tag);
      }
      return tag;
    }
docs: Fetches a tag from the repository. Creates a new one if it does not yet exist.
  
  @param objectIRI IRI of the object
  @param label label of the object
  @param relation {@link Relation} of the tag
  @param codeSystemIRI the IRI of the code system of the tag
  @return {@link Tag} of type {@link TagMetadata}