public interface LanguageHandler
The language handler may optionally provide normalization and verification services for string literals based on the language tags, including translation, grammar and spelling checks. However, this behavior is entirely driven by the user.
Modifier and Type | Field and Description |
---|---|
static String |
BCP47
Identifier for the language tag format defined by BCP47, which is referenced by the RDF-1.1 specification.
|
static String |
RFC3066
Identifier for the language tag format defined by RFC3066, which is referenced by the RDF-1.0 specification.
|
static String |
RFC4646
Identifier for the language tag format defined by RFC4646, which obsoletes RFC3066, but which is not referenced
by the RDF specification.
|
Modifier and Type | Method and Description |
---|---|
String |
getKey()
A unique key for this language handler to identify it in the LanguageHandlerRegistry.
|
boolean |
isRecognizedLanguage(String languageTag)
Checks if the given language tag is recognized by this language handler, including cases where the language tag
is recognized, but is not yet normalized.
|
Literal |
normalizeLanguage(String literalValue,
String languageTag,
ValueFactory valueFactory)
Normalize both the language tag and the language if appropriate, and use the given value factory to generate a
literal matching the literal value and language tag.
|
boolean |
verifyLanguage(String literalValue,
String languageTag)
Verifies that the language tag is valid, optionally including an automated check on the literal value.
|
static final String RFC3066
static final String RFC4646
static final String BCP47
boolean isRecognizedLanguage(String languageTag)
languageTag
- The language tag to check.verifyLanguage(String, String)
and normalizeLanguage(String, String, ValueFactory)
.boolean verifyLanguage(String literalValue, String languageTag) throws LiteralUtilException
This method must only be called after verifying that isRecognizedLanguage(String)
returns true for the
given language tag.
literalValue
- Literal value matching the given language tag.languageTag
- A language tag that matched with isRecognizedLanguage(String)
.LiteralUtilException
- If the language tag was not recognized.Literal normalizeLanguage(String literalValue, String languageTag, ValueFactory valueFactory) throws LiteralUtilException
This method must only be called after verifying that isRecognizedLanguage(String)
returns true for the
given language tag, and verifyLanguage(String, String)
also returns true for the given language and
literal value.
literalValue
- Required literal value to use in the normalization process and to provide the value for the
resulting literal.languageTag
- The language tag which is to be normalized. This tag is available in normalized form from the
result using Literal.getLanguage()
.valueFactory
- The ValueFactory
to use to create the result literal.Literal
containing the normalized literal value and language tag.LiteralUtilException
- If the language tag was not recognized or verified, or the literal value could not
be normalized due to an error.String getKey()
Copyright © 2015-2019 Eclipse Foundation. All Rights Reserved.