org.eclipse.rdf4j.rio.helpers

## Class NTriplesUtil

- java.lang.Object
- - org.eclipse.rdf4j.rio.helpers.NTriplesUtil

- Direct Known Subclasses:
    NTriplesUtil

      public class NTriplesUtil
      extends Object

  Utility methods for N-Triples encoding/decoding.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `NTriplesUtil()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `append(BNode bNode, Appendable appendable)` Appends the N-Triples representation of the given `BNode` to the given `Appendable`.
    `static void` | `append(IRI uri, Appendable appendable)` Appends the N-Triples representation of the given `IRI` to the given `Appendable`.
    `static void` | `append(IRI uri, Appendable appendable, boolean escapeUnicode)` Appends the N-Triples representation of the given `IRI` to the given `Appendable`.
    `static void` | `append(Literal lit, Appendable appendable)` Appends the N-Triples representation of the given `Literal` to the given `Appendable`.
    `static void` | `append(Literal lit, Appendable appendable, boolean xsdStringToPlainLiteral, boolean escapeUnicode)` Appends the N-Triples representation of the given `Literal` to the given `Appendable`, optionally ignoring the xsd:string datatype as it is implied for RDF-1.1.
    `static void` | `append(Resource resource, Appendable appendable)` Appends the N-Triples representation of the given `Resource` to the given `Appendable`.
    `static void` | `append(Triple triple, Appendable appendable)` Appends the N-Triples (non-standard) representation of the given `Triple` to the given `Appendable`.
    `static void` | `append(Value value, Appendable appendable)` Appends the N-Triples representation of the given `Value` to the given `Appendable`.
    `static void` | `append(Value value, Appendable appendable, boolean xsdStringToPlainLiteral, boolean escapeUnicode)` Appends the N-Triples representation of the given `Value` to the given `Appendable`, optionally not serializing the datatype a `Literal` with the xsd:string datatype as it is implied for RDF-1.1.
    `static String` | `escapeString(String label)` Escapes a Unicode string to an all-ASCII character sequence.Any special characters are escaped using backslashes ( `"` becomes `\"`, etc.), and non-ascii/non-printable characters are escaped using Unicode escapes ( `\uxxxx` and `\Uxxxxxxxx`).
    `static void` | `escapeString(String label, Appendable appendable)` Escapes a Unicode string to an all-ASCII character sequence.
    `static void` | `escapeString(String label, Appendable appendable, boolean escapeUnicode)` Escapes a Unicode string to an N-Triples compatible character sequence.Any special characters are escaped using backslashes (`"` becomes `\"`, etc.), and non-ascii/non-printable characters are escaped using Unicode escapes (`\uxxxx` and `\Uxxxxxxxx`) if the option is selected.
    `static boolean` | `isDot(int c)` Checks whether the supplied character is Dot '.'.
    `static boolean` | `isLetter(int c)` Deprecated. use `ASCIIUtil.isLetter(int)`
    `static boolean` | `isLetterOrNumber(int c)` Deprecated. use `ASCIIUtil.isLetterOrNumber(int)`
    `static boolean` | `isLiberalCharactersButNotDot(int c)` Checks whether the supplied character is in list of liberal characters according to the N-Triples specification except Dot.
    `static boolean` | `isNumber(int c)` Deprecated. use `ASCIIUtil.isNumber(int)`
    `static boolean` | `isUnderscore(int c)` Checks whether the supplied character is Underscore.
    `static boolean` | `isValidCharacterForBNodeLabel(int c)` Checks whether the supplied character is valid character as per N-Triples specification.
    `static BNode` | `parseBNode(String nTriplesBNode, ValueFactory valueFactory)` Parses an N-Triples bNode, creates an object for it using the supplied ValueFactory and returns this object.
    `static Literal` | `parseLiteral(String nTriplesLiteral, ValueFactory valueFactory)` Parses an N-Triples literal, creates an object for it using the supplied ValueFactory and returns this object.
    `static Resource` | `parseResource(String nTriplesResource, ValueFactory valueFactory)` Parses an N-Triples resource, creates an object for it using the supplied ValueFactory and returns this object.
    `static Triple` | `parseTriple(String nTriplesTriple, ValueFactory valueFactory)` Parses an RDF-star triple (non-standard N-Triples), creates an object for it using the supplied ValueFactory and returns this object.
    `static IRI` | `parseURI(String nTriplesURI, ValueFactory valueFactory)` Parses an N-Triples URI, creates an object for it using the supplied ValueFactory and returns this object.
    `static Value` | `parseValue(String nTriplesValue, ValueFactory valueFactory)` Parses an N-Triples value, creates an object for it using the supplied ValueFactory and returns this object.
    `static String` | `toHexString(int decimal, int stringLength)` Converts a decimal value to a hexadecimal string representation of the specified length.
    `static String` | `toNTriplesString(BNode bNode)` Creates an N-Triples string for the supplied blank node.
    `static String` | `toNTriplesString(IRI uri)` Creates an N-Triples string for the supplied URI.
    `static String` | `toNTriplesString(Literal lit)` Creates an N-Triples string for the supplied literal.
    `static String` | `toNTriplesString(Literal lit, boolean xsdStringToPlainLiteral)` Creates an N-Triples string for the supplied literal, optionally ignoring the xsd:string datatype as it is implied for RDF-1.1.
    `static String` | `toNTriplesString(Resource resource)` Creates an N-Triples string for the supplied resource.
    `static String` | `toNTriplesString(Triple triple)` Creates an N-Triples (non-standard) string for the supplied RDF-star triple.
    `static String` | `toNTriplesString(Value value)` Creates an N-Triples string for the supplied value.
    `static String` | `toNTriplesString(Value value, boolean xsdStringToPlainLiteral)` Creates an N-Triples string for the supplied value.If the supplied value is a `Literal`, it optionally ignores the xsd:string datatype, since this datatype is implicit in RDF-1.1.
    `static String` | `unescapeString(String s)` Unescapes an escaped Unicode string.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### NTriplesUtil

          public NTriplesUtil()

  - ### Method Detail

    - #### parseValue

          public static Value parseValue(String nTriplesValue,
                                         ValueFactory valueFactory)
                                  throws IllegalArgumentException

      Parses an N-Triples value, creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesValue` - The N-Triples value to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed value.
      Throws:
        `IllegalArgumentException` - If the supplied value could not be parsed correctly.

    - #### parseResource

          public static Resource parseResource(String nTriplesResource,
                                               ValueFactory valueFactory)
                                        throws IllegalArgumentException

      Parses an N-Triples resource, creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesResource` - The N-Triples resource to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed resource.
      Throws:
        `IllegalArgumentException` - If the supplied resource could not be parsed correctly.

    - #### parseURI

          public static IRI parseURI(String nTriplesURI,
                                     ValueFactory valueFactory)
                              throws IllegalArgumentException

      Parses an N-Triples URI, creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesURI` - The N-Triples URI to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed URI.
      Throws:
        `IllegalArgumentException` - If the supplied URI could not be parsed correctly.

    - #### parseBNode

          public static BNode parseBNode(String nTriplesBNode,
                                         ValueFactory valueFactory)
                                  throws IllegalArgumentException

      Parses an N-Triples bNode, creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesBNode` - The N-Triples bNode to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed bNode.
      Throws:
        `IllegalArgumentException` - If the supplied bNode could not be parsed correctly.

    - #### parseLiteral

          public static Literal parseLiteral(String nTriplesLiteral,
                                             ValueFactory valueFactory)
                                      throws IllegalArgumentException

      Parses an N-Triples literal, creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesLiteral` - The N-Triples literal to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed literal.
      Throws:
        `IllegalArgumentException` - If the supplied literal could not be parsed correctly.

    - #### parseTriple

          public static Triple parseTriple(String nTriplesTriple,
                                           ValueFactory valueFactory)

      Parses an RDF-star triple (non-standard N-Triples), creates an object for it using the supplied ValueFactory and returns this object.
      Parameters:
        `nTriplesTriple` - The RDF-star triple to parse.
        `valueFactory` - The ValueFactory to use for creating the object.
      Returns:
        An object representing the parsed triple.
      Throws:
        `IllegalArgumentException` - If the supplied triple could not be parsed correctly.

    - #### toNTriplesString

          public static String toNTriplesString(Value value)

      Creates an N-Triples string for the supplied value.
      Parameters:
        `value` -
      Returns:
        string

    - #### toNTriplesString

          public static String toNTriplesString(Value value,
                                                boolean xsdStringToPlainLiteral)

      Creates an N-Triples string for the supplied value.If the supplied value is a `Literal`, it optionally ignores the xsd:string datatype, since this datatype is implicit in RDF-1.1.
      Parameters:
        `value` - The value to write.
        `xsdStringToPlainLiteral` - True to omit serialising the xsd:string datatype and false to always serialise the datatype for literals.
      Returns:
        string

    - #### append

          public static void append(Value value,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples representation of the given `Value` to the given `Appendable`.
      Parameters:
        `value` - The value to write.
        `appendable` - The object to append to.
      Throws:
        `IOException`

    - #### append

          public static void append(Value value,
                                    Appendable appendable,
                                    boolean xsdStringToPlainLiteral,
                                    boolean escapeUnicode)
                             throws IOException

      Appends the N-Triples representation of the given `Value` to the given `Appendable`, optionally not serializing the datatype a `Literal` with the xsd:string datatype as it is implied for RDF-1.1.
      Parameters:
        `value` - The value to write.
        `appendable` - The object to append to.
        `xsdStringToPlainLiteral` - True to omit serializing the xsd:string datatype and false to always serialize the datatype for literals.
        `escapeUnicode` -
      Throws:
        `IOException`

    - #### toNTriplesString

          public static String toNTriplesString(Resource resource)

      Creates an N-Triples string for the supplied resource.
      Parameters:
        `resource` -
      Returns:
        string

    - #### append

          public static void append(Resource resource,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples representation of the given `Resource` to the given `Appendable`.
      Parameters:
        `resource` - The resource to write.
        `appendable` - The object to append to.
      Throws:
        `IOException`

    - #### toNTriplesString

          public static String toNTriplesString(IRI uri)

      Creates an N-Triples string for the supplied URI.
      Parameters:
        `uri` -
      Returns:
        string

    - #### append

          public static void append(IRI uri,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples representation of the given `IRI` to the given `Appendable`.
      Parameters:
        `uri` - The IRI to write.
        `appendable` - The object to append to.
      Throws:
        `IOException`

    - #### append

          public static void append(IRI uri,
                                    Appendable appendable,
                                    boolean escapeUnicode)
                             throws IOException

      Appends the N-Triples representation of the given `IRI` to the given `Appendable`.
      Parameters:
        `uri` -
        `appendable` -
        `escapeUnicode` -
      Throws:
        `IOException`

    - #### toNTriplesString

          public static String toNTriplesString(BNode bNode)

      Creates an N-Triples string for the supplied blank node.
      Parameters:
        `bNode` -
      Returns:
        string

    - #### append

          public static void append(BNode bNode,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples representation of the given `BNode` to the given `Appendable`.
      Parameters:
        `bNode` -
        `appendable` -
      Throws:
        `IOException`

    - #### toNTriplesString

          public static String toNTriplesString(Literal lit)

      Creates an N-Triples string for the supplied literal.
      Parameters:
        `lit` -
      Returns:
        string

    - #### toNTriplesString

          public static String toNTriplesString(Literal lit,
                                                boolean xsdStringToPlainLiteral)

      Creates an N-Triples string for the supplied literal, optionally ignoring the xsd:string datatype as it is implied for RDF-1.1.
      Parameters:
        `lit` - The literal to write.
        `xsdStringToPlainLiteral` - True to omit serializing the xsd:string datatype and false to always serialize the datatype for literals.
      Returns:
        String

    - #### append

          public static void append(Literal lit,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples representation of the given `Literal` to the given `Appendable`.
      Parameters:
        `lit` -
        `appendable` -
      Throws:
        `IOException`

    - #### append

          public static void append(Literal lit,
                                    Appendable appendable,
                                    boolean xsdStringToPlainLiteral,
                                    boolean escapeUnicode)
                             throws IOException

      Appends the N-Triples representation of the given `Literal` to the given `Appendable`, optionally ignoring the xsd:string datatype as it is implied for RDF-1.1.
      Parameters:
        `lit` - The literal to write.
        `appendable` - The object to append to.
        `xsdStringToPlainLiteral` - True to omit serializing the xsd:string datatype and false to always serialize the datatype for literals.
        `escapeUnicode` - True to escape non-ascii/non-printable characters using Unicode escapes (`\uxxxx` and `\Uxxxxxxxx`), false to print without escaping.
      Throws:
        `IOException`

    - #### toNTriplesString

          public static String toNTriplesString(Triple triple)

      Creates an N-Triples (non-standard) string for the supplied RDF-star triple.
      Parameters:
        `triple` -
      Returns:
        string

    - #### append

          public static void append(Triple triple,
                                    Appendable appendable)
                             throws IOException

      Appends the N-Triples (non-standard) representation of the given `Triple` to the given `Appendable`.
      Parameters:
        `triple` -
        `appendable` -
      Throws:
        `IOException`

    - #### isLetterOrNumber

          @Deprecated
          public static boolean isLetterOrNumber(int c)

      Deprecated. use `ASCIIUtil.isLetterOrNumber(int)`
      Checks whether the supplied character is a letter or number according to the N-Triples specification.
      Parameters:
        `c` -
      Returns:
        true if it is a letter or a number
      See Also:
        `isLetter(int)`, `isNumber(int)`

    - #### isLetter

          @Deprecated
          public static boolean isLetter(int c)

      Deprecated. use `ASCIIUtil.isLetter(int)`
      Checks whether the supplied character is a letter according to the N-Triples specification.N-Triples letters are A - Z and a - z.
      Parameters:
        `c` -
      Returns:

    - #### isNumber

          @Deprecated
          public static boolean isNumber(int c)

      Deprecated. use `ASCIIUtil.isNumber(int)`
      Checks whether the supplied character is a number according to the N-Triples specification.N-Triples numbers are 0 - 9.
      Parameters:
        `c` -
      Returns:
        true if the character is a number

    - #### isValidCharacterForBNodeLabel

          public static boolean isValidCharacterForBNodeLabel(int c)

      Checks whether the supplied character is valid character as per N-Triples specification.
      Parameters:
        `c` -
      Returns:
        true if valid
      See Also:
        https://www.w3.org/TR/n-triples/#BNodes

    - #### isLiberalCharactersButNotDot

          public static boolean isLiberalCharactersButNotDot(int c)

      Checks whether the supplied character is in list of liberal characters according to the N-Triples specification except Dot.
      Parameters:
        `c` -
      Returns:
        true if valid

    - #### isUnderscore

          public static boolean isUnderscore(int c)

      Checks whether the supplied character is Underscore.
      Parameters:
        `c` -
      Returns:
        true if it is an underscore

    - #### isDot

          public static boolean isDot(int c)

      Checks whether the supplied character is Dot '.'.
      Parameters:
        `c` -
      Returns:
        true if it is a dot

    - #### escapeString

          public static String escapeString(String label)

      Escapes a Unicode string to an all-ASCII character sequence.Any special characters are escaped using backslashes ( `"` becomes `\"`, etc.), and non-ascii/non-printable characters are escaped using Unicode escapes ( `\uxxxx` and `\Uxxxxxxxx`).
      Parameters:
        `label` -
      Returns:

    - #### escapeString

          public static void escapeString(String label,
                                          Appendable appendable)
                                   throws IOException

      Escapes a Unicode string to an all-ASCII character sequence. Any special characters are escaped using backslashes ( `"` becomes `\"`, etc.), and non-ascii/non-printable characters are escaped using Unicode escapes ( `\uxxxx` and `\Uxxxxxxxx`).
      Parameters:
        `label` -
        `appendable` -
      Throws:
        `IOException`

    - #### escapeString

          public static void escapeString(String label,
                                          Appendable appendable,
                                          boolean escapeUnicode)
                                   throws IOException

      Escapes a Unicode string to an N-Triples compatible character sequence.Any special characters are escaped using backslashes (`"` becomes `\"`, etc.), and non-ascii/non-printable characters are escaped using Unicode escapes (`\uxxxx` and `\Uxxxxxxxx`) if the option is selected.
      Parameters:
        `label` -
        `appendable` -
        `escapeUnicode` -
      Throws:
        `IOException`

    - #### unescapeString

          public static String unescapeString(String s)

      Unescapes an escaped Unicode string. Any Unicode sequences ( `\uxxxx` and `\Uxxxxxxxx`) are restored to the value indicated by the hexadecimal argument and any backslash-escapes ( `\"`, `\\`, etc.) are decoded to their original form.
      Parameters:
        `s` - An escaped Unicode string.
      Returns:
        The unescaped string.
      Throws:
        `IllegalArgumentException` - If the supplied string is not a correctly escaped N-Triples string.

    - #### toHexString

          public static String toHexString(int decimal,
                                           int stringLength)

      Converts a decimal value to a hexadecimal string representation of the specified length.
      Parameters:
        `decimal` - A decimal value.
        `stringLength` - The length of the resulting string.
      Returns:
        padded string

Copyright © 2015-2022 Eclipse Foundation. All Rights Reserved.