Class WordNetLinker
java.lang.Object
de.uni_mannheim.informatik.dws.melt.matching_jena_matchers.external.wordNet.WordNetLinker
- All Implemented Interfaces:
LabelToConceptLinker
This class is capable of linking words to concepts in WordNet.
-
Field Summary
Modifier and TypeFieldDescriptionprivate WordNetKnowledgeSource
The WordNet dictionary instance that is to be used.private static org.slf4j.Logger
private String
Mapping Buffer -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionGet instance specific name of the linker.linkLabelToTokensLeftToRight
(String labelToBeLinked) Splits the labelToBeLinked in ngrams up to infinite size and tries to link components.linkToPotentiallyMultipleConcepts
(String labelToBeLinked) This method tries to linklabelToBeLinked
to one concept if possible.linkToSingleConcept
(String labelToBeLinked) Queries for a concept and returns a link that represents an entity in the background knowledge source such as theSemanticWordRelationDictionary
.static String
normalizeForWordnetLookupWithOutTokenization
(String lookupString) Normalize for WordNet lookup, i.e., lowercasing.static String
normalizeForWordnetLookupWithTokenization
(String lookupString) Normalize for WordNet lookup, i.e., lowercasing and camel-case resolution.void
setNameOfLinker
(String nameOfLinker) Set instance specific name of the linker.
-
Field Details
-
LOGGER
private static org.slf4j.Logger LOGGER -
dictionary
The WordNet dictionary instance that is to be used. -
nameOfLinker
-
singleConceptBuffer
Mapping Buffer
-
-
Constructor Details
-
WordNetLinker
-
-
Method Details
-
linkToSingleConcept
Description copied from interface:LabelToConceptLinker
Queries for a concept and returns a link that represents an entity in the background knowledge source such as theSemanticWordRelationDictionary
. Note that the link may not always be something intuitive such as a URI but may also be an artificial identifier that is understood by the corresponding background knowledge source.- Specified by:
linkToSingleConcept
in interfaceLabelToConceptLinker
- Parameters:
labelToBeLinked
- The label which shall be linked to a single concept.- Returns:
- Concept or null if no link could be found.
-
linkToPotentiallyMultipleConcepts
Description copied from interface:LabelToConceptLinker
This method tries to linklabelToBeLinked
to one concept if possible. If it fails, it will try to link it to multiple concepts.- Specified by:
linkToPotentiallyMultipleConcepts
in interfaceLabelToConceptLinker
- Parameters:
labelToBeLinked
- The label which shall be linked.- Returns:
- One or multiple linked concepts in a set. Null if it could not fully link the label.
-
linkLabelToTokensLeftToRight
Splits the labelToBeLinked in ngrams up to infinite size and tries to link components. This corresponds to a MAXGRAM_LEFT_TO_RIGHT_TOKENIZER or NGRAM_LEFT_TO_RIGHT_TOKENIZER OneToManyLinkingStrategy.- Parameters:
labelToBeLinked
- The label that shall be linked.- Returns:
- A set of concept URIs that were found.
-
getNameOfLinker
Description copied from interface:LabelToConceptLinker
Get instance specific name of the linker.- Specified by:
getNameOfLinker
in interfaceLabelToConceptLinker
- Returns:
- Name as String.
-
setNameOfLinker
Description copied from interface:LabelToConceptLinker
Set instance specific name of the linker.- Specified by:
setNameOfLinker
in interfaceLabelToConceptLinker
- Parameters:
nameOfLinker
- Name to be set.
-
normalizeForWordnetLookupWithTokenization
Normalize for WordNet lookup, i.e., lowercasing and camel-case resolution. Dev-Remark: The WordNet library utilizes space-separation.- Parameters:
lookupString
- The string that shall be normalized for lookup.- Returns:
- Space-separated lookup word.
-
normalizeForWordnetLookupWithOutTokenization
Normalize for WordNet lookup, i.e., lowercasing. No camelCase resolution. Dev-Remark: The WordNet library utilizes space-separation.- Parameters:
lookupString
- The string that shall be normalized for lookup.- Returns:
- Space-separated lookup word.
-