code: public ResponseBuilder getRepresentation(final ResponseBuilder builder) {
          // Add NonRDFSource-related "describe*" link headers, provided this isn't an ACL resource
          getResource().getBinaryMetadata().filter(ds -> !ACL.equals(getRequest().getExt())).ifPresent(ds -> {
              final String base = getBaseBinaryIdentifier();
              final String description = base + (base.contains("?") ? "&" : "?") + "ext=description";
              if (syntax != null) {
                  builder.link(description, "canonical").link(base, "describes")
                      .link(base + "#description", "alternate");
              } else {
                  builder.link(base, "canonical").link(description, "describedby")
                      .type(ds.getMimeType().orElse(APPLICATION_OCTET_STREAM));
              }
          });
  
          // Add a "self" link header
          builder.link(getSelfIdentifier(), "self");
  
          // URI Template
          builder.header(LINK_TEMPLATE,
                  "<" + getIdentifier() + "{?version}>; rel=\"" + Memento.Memento.getIRIString() + "\"");
  
          // NonRDFSources responses (strong ETags, etc)
          if (getResource().getBinaryMetadata().isPresent() && syntax == null) {
              return getLdpNr(builder);
          }
  
          // RDFSource responses (weak ETags, etc)
          final IRI profile = getProfile(getRequest().getAcceptableMediaTypes(), syntax);
          return getLdpRs(builder, syntax, profile);
      }
docs: Build the representation for the given resource.
  
  @param builder the response builder
  @return the response builder