public QualifiedName getFullyQualifiedName(final EObject obj) {
    AnnexLinkingService resolver = getLinkingService();

    if (resolver == null) {
      return null;
    }
    return resolver.getFullyQualifiedName(obj);
  }
  // mechanism to resolve individual references in an Xtext based setting
  public List<EObject> resolveAnnexReference(
      String annexName, EObject context, EReference reference, INode node) {
    AnnexLinkingService resolver = getLinkingService();

    if (resolver == null) {
      return Collections.<EObject>emptyList();
    }
    try {
      return resolver.resolveAnnexReference(annexName, context, reference, node);
    } catch (Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    return Collections.<EObject>emptyList();
  }