String asJsonLdString()

in commons-rdf-jsonld-java/src/main/java/org/apache/commons/rdf/jsonldjava/JsonLdRDF.java [157:178]


    String asJsonLdString(final BlankNodeOrIRI blankNodeOrIRI) {
        if (blankNodeOrIRI == null) {
            return null;
        }
        if (blankNodeOrIRI instanceof IRI) {
            return ((IRI) blankNodeOrIRI).getIRIString();
        }
        if (!(blankNodeOrIRI instanceof BlankNode)) {
            throw new IllegalArgumentException("Expected a BlankNode or IRI, not: " + blankNodeOrIRI);
        }
        final BlankNode blankNode = (BlankNode) blankNodeOrIRI;
        final String ref = blankNode.uniqueReference();
        if (ref.startsWith(bnodePrefix)) {
            // One of ours (but possibly not a JsonLdBlankNode) -
            // we can use the suffix directly
            return ref.replace(bnodePrefix, "");
        }
        // Map to unique bnode identifier, e.g.
        // _:0dbd92ee-ab1a-45e7-bba2-7ade54f87ec5
        final UUID uuid = UUID.nameUUIDFromBytes(ref.getBytes(StandardCharsets.UTF_8));
        return "_:" + uuid;
    }