Class TurtleUtil
- java.lang.Object
-
- com.stardog.stark.io.turtle.TurtleUtil
-
public class TurtleUtil extends java.lang.Object
Utility methods for Turtle encoding/decoding.- See Also:
- Turtle: Terse RDF Triple Language
-
-
Field Summary
Fields Modifier and Type Field Description static char[]
LOCAL_ESCAPED_CHARS
-
Constructor Summary
Constructors Constructor Description TurtleUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
decodeString(java.lang.String s)
Decodes an encoded Turtle string.static java.lang.String
encodeLongString(java.lang.String s)
Encodes the supplied string for inclusion as a long string in a Turtle document.static java.lang.String
encodeString(java.lang.String s)
Encodes the supplied string for inclusion as a 'normal' string in a Turtle document.static java.lang.String
encodeURIString(java.lang.String s)
Encodes the supplied string for inclusion as a (relative) URI in a Turtle document.static int
findURISplitIndex(java.lang.String uri)
Tries to find an index where the supplied URI can be split into a namespace and a local name that comply with the serialization constraints of the Turtle format.static boolean
isBLANK_NODE_LABEL_Char(int codePoint)
Check if the supplied code point represents a valid blank node label character.static boolean
isBLANK_NODE_LABEL_EndChar(int codePoint)
Check if the supplied code point represents a valid blank node label end character.static boolean
isBLANK_NODE_LABEL_StartChar(int codePoint)
Check if the supplied code point represents a valid start character for a blank node label.static boolean
isLanguageChar(int codePoint)
Check if the supplied code point represents a valid language tag character.static boolean
isLanguageStartChar(int codePoint)
Check if the supplied code point represents a valid language tag start character.static boolean
isLocalEscapedChar(int codePoint)
Check if the supplied code point represents a valid local escaped character.static boolean
isNameChar(int codePoint)
Check if the supplied code point represents a valid name character.static boolean
isNameEndChar(int codePoint)
Check if the supplied code point represents a valid name end character.static boolean
isNameStartChar(int codePoint)
Check if the supplied code point represents a valid name start character.static boolean
isPERCENT(java.lang.String name)
static boolean
isPLX_INTERNAL(java.lang.String name)
static boolean
isPLX_START(java.lang.String name)
static boolean
isPN_CHARS(int codePoint)
Check if the supplied code point represents a valid prefixed name character.static boolean
isPN_CHARS_BASE(int codePoint)
Check if the supplied code point represents a valid prefixed name base character.static boolean
isPN_CHARS_U(int codePoint)
Check if the supplied code point represents either a valid prefixed name base character or an underscore.static boolean
isPN_LOCAL(java.lang.String name)
static boolean
isPN_LOCAL_ESC(java.lang.String name)
static boolean
isPN_PREFIX(java.lang.String prefix)
Checks if the supplied prefix string is a valid Turtle namespace prefix.static boolean
isPrefixChar(int codePoint)
Check if the supplied code point represents a valid prefix character.static boolean
isPrefixStartChar(int codePoint)
Check if the supplied code point represents a valid prefixed name start character.static boolean
isWhitespace(int codePoint)
Check if the supplied code point represents a whitespace character
-
-
-
Method Detail
-
findURISplitIndex
public static int findURISplitIndex(java.lang.String uri)
Tries to find an index where the supplied URI can be split into a namespace and a local name that comply with the serialization constraints of the Turtle format.- Parameters:
uri
- The URI to split.- Returns:
- The index where the supplied URI can be split, or -1 if the URI cannot be split.
-
isWhitespace
public static boolean isWhitespace(int codePoint)
Check if the supplied code point represents a whitespace character- Parameters:
codePoint
- a Unicode code point- Returns:
true
iff the supplied code point represents a whitespace character,false
otherwise.
-
isPN_CHARS_BASE
public static boolean isPN_CHARS_BASE(int codePoint)
Check if the supplied code point represents a valid prefixed name base character.From Turtle Spec:
http://www.w3.org/TR/turtle/#grammar-production-PN_CHARS_BASE
[163s] PN_CHARS_BASE ::= [A-Z] | [a-z] | [#x00C0-#x00D6] | [#x00D8-#x00F6] | [#x00F8-#x02FF] | [#x0370-#x037D] | [#x037F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]
-
isPN_CHARS_U
public static boolean isPN_CHARS_U(int codePoint)
Check if the supplied code point represents either a valid prefixed name base character or an underscore.From Turtle Spec:
http://www.w3.org/TR/turtle/#grammar-production-PN_CHARS_U
[164s] PN_CHARS_U ::= PN_CHARS_BASE | '_'
-
isPN_CHARS
public static boolean isPN_CHARS(int codePoint)
Check if the supplied code point represents a valid prefixed name character.From Turtle Spec:
http://www.w3.org/TR/turtle/#grammar-production-PN_CHARS
[166s] PN_CHARS ::= PN_CHARS_U | '-' | [0-9] | #x00B7 | [#x0300-#x036F] | [#x203F-#x2040]
-
isPrefixStartChar
public static boolean isPrefixStartChar(int codePoint)
Check if the supplied code point represents a valid prefixed name start character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid prefixed name start char, false otherwise.
-
isBLANK_NODE_LABEL_StartChar
public static boolean isBLANK_NODE_LABEL_StartChar(int codePoint)
Check if the supplied code point represents a valid start character for a blank node label.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid blank node label start char,false
otherwise.
-
isBLANK_NODE_LABEL_Char
public static boolean isBLANK_NODE_LABEL_Char(int codePoint)
Check if the supplied code point represents a valid blank node label character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid blank node label char,false
otherwise.
-
isBLANK_NODE_LABEL_EndChar
public static boolean isBLANK_NODE_LABEL_EndChar(int codePoint)
Check if the supplied code point represents a valid blank node label end character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid blank node label end char,false
otherwise.
-
isNameStartChar
public static boolean isNameStartChar(int codePoint)
Check if the supplied code point represents a valid name start character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid name start char,false
otherwise.
-
isNameChar
public static boolean isNameChar(int codePoint)
Check if the supplied code point represents a valid name character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid name char,false
otherwise.
-
isNameEndChar
public static boolean isNameEndChar(int codePoint)
Check if the supplied code point represents a valid name end character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid name end char,false
otherwise.
-
isLocalEscapedChar
public static boolean isLocalEscapedChar(int codePoint)
Check if the supplied code point represents a valid local escaped character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid local escaped char,false
otherwise.
-
isPrefixChar
public static boolean isPrefixChar(int codePoint)
Check if the supplied code point represents a valid prefix character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid prefix char,false
otherwise.
-
isLanguageStartChar
public static boolean isLanguageStartChar(int codePoint)
Check if the supplied code point represents a valid language tag start character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid language tag start char,false
otherwise.
-
isLanguageChar
public static boolean isLanguageChar(int codePoint)
Check if the supplied code point represents a valid language tag character.- Parameters:
codePoint
- a Unicode code point.- Returns:
true
iff the supplied code point represents a valid language tag char,false
otherwise.
-
isPN_PREFIX
public static boolean isPN_PREFIX(java.lang.String prefix)
Checks if the supplied prefix string is a valid Turtle namespace prefix. From Turtle Spec:http://www.w3.org/TR/turtle/#grammar-production-PN_PREFIX
[167s] PN_PREFIX ::= PN_CHARS_BASE ((PN_CHARS | '.')* PN_CHARS)?
- Parameters:
prefix
- a prefix string.- Returns:
- true iff the supplied prefix conforms to Turtle grammar rules
-
isPLX_START
public static boolean isPLX_START(java.lang.String name)
-
isPERCENT
public static boolean isPERCENT(java.lang.String name)
-
isPLX_INTERNAL
public static boolean isPLX_INTERNAL(java.lang.String name)
-
isPN_LOCAL_ESC
public static boolean isPN_LOCAL_ESC(java.lang.String name)
-
isPN_LOCAL
public static boolean isPN_LOCAL(java.lang.String name)
-
encodeString
public static java.lang.String encodeString(java.lang.String s)
Encodes the supplied string for inclusion as a 'normal' string in a Turtle document.
-
encodeLongString
public static java.lang.String encodeLongString(java.lang.String s)
Encodes the supplied string for inclusion as a long string in a Turtle document.
-
encodeURIString
public static java.lang.String encodeURIString(java.lang.String s)
Encodes the supplied string for inclusion as a (relative) URI in a Turtle document.
-
decodeString
public static java.lang.String decodeString(java.lang.String s)
Decodes an encoded Turtle string. Any \-escape sequences are substituted with their decoded value.- Parameters:
s
- An encoded Turtle string.- Returns:
- The unencoded string.
- Throws:
java.lang.IllegalArgumentException
- If the supplied string is not a correctly encoded Turtle string.
-
-