如果您查看original Wordnet search并选择“显示选项:显示词汇文件信息”,您会看到一个非常有用的词组分类,名为词汇文件。例如,对于“填充”,我们有:
<noun.substance>S: (n) filling, fill (any material that fills a space or container)
<noun.process>S: (n) filling (flow into something (as a container))
<noun.food>S: (n) filling (a food mixture used to fill pastry or sandwiches etc.)
<noun.artifact>S: (n) woof, weft, filling, pick (the yarn woven across the warp yarn in weaving)
<noun.artifact>S: (n) filling ((dentistry) a dental appliance consisting of ...)
<noun.act>S: (n) filling (the act of filling something)
括号中的第一件事是“词汇文件”。不幸的是,我无法找到提供此信息的SPARQL端点
Wordnet 3.0的latest RDF translation指向两件事:
Talis SPARQL endpoint。使用例如此查询来检查没有这样的信息:
DESCRIBE <http://purl.org/vocabularies/princeton/wn30/synset-chair-noun-1>
W3C's mapping description。附录D“转换详细信息”描述了一些有用的内容:wn:classifiedByTopic
。
但它与词汇文件不同,并且相当不完整。例如,“椅子”什么都没有,而“完成”的一种感觉是在“美式足球”主题中
DESCRIBE <http://purl.org/vocabularies/princeton/wn30/synset-completion-noun-1>
- &gt;
<j.1:classifiedByTopic rdf:resource="http://purl.org/vocabularies/princeton/wn30/synset-American_football-noun-1"/>
问题:是否有提供词汇文件信息的公共Wordnet查询API或数据库?
答案 0 :(得分:3)
我认为你无法在WordNet的RDF / OWL表示中找到它。它虽然在WordNet发行版中:dict/lexnames
。以下是WordNet 3.0文件的内容:
00 adj.all 3
01 adj.pert 3
02 adv.all 4
03 noun.Tops 1
04 noun.act 1
05 noun.animal 1
06 noun.artifact 1
07 noun.attribute 1
08 noun.body 1
09 noun.cognition 1
10 noun.communication 1
11 noun.event 1
12 noun.feeling 1
13 noun.food 1
14 noun.group 1
15 noun.location 1
16 noun.motive 1
17 noun.object 1
18 noun.person 1
19 noun.phenomenon 1
20 noun.plant 1
21 noun.possession 1
22 noun.process 1
23 noun.quantity 1
24 noun.relation 1
25 noun.shape 1
26 noun.state 1
27 noun.substance 1
28 noun.time 1
29 verb.body 2
30 verb.change 2
31 verb.cognition 2
32 verb.communication 2
33 verb.competition 2
34 verb.consumption 2
35 verb.contact 2
36 verb.creation 2
37 verb.emotion 2
38 verb.motion 2
39 verb.perception 2
40 verb.possession 2
41 verb.social 2
42 verb.stative 2
43 verb.weather 2
44 adj.ppl 3
对于dict / data。*的每个条目,第二个数字是词汇文件信息。例如,此填充条目包含数字13,即noun.food。
07883031 13 n 01 filling 0 002 @ 07882497 n 0000 ~ 07883156 n 0000 | a food mixture used to fill pastry or sandwiches etc.
答案 1 :(得分:3)
使用Python NLTK界面:
from nltk.corpus import wordnet as wn
for synset in wn.synsets('can'):
print synset.lexname
答案 2 :(得分:1)
可以通过 MIT JWI (MIT Java Wordnet Interface)Java API来查询Wordnet。 this link中有一个主题,展示了如何实现java类来访问词典
答案 3 :(得分:1)
这对我有用,
Synset[] synsets = database.getSynsets(wordStr);
ReferenceSynset referenceSynset = (ReferenceSynset) synsets[i];
int lexicalCode =referenceSynset.getLexicalFileNumber();
然后使用上表来推断“lexnames”,例如名词时间
答案 4 :(得分:0)
如果您使用的是Windows,则很有可能位于您的appdata中,位于本地目录中。要到达那里,您将需要打开文件浏览器,转到顶部,然后输入%appdata%
下一步,单击漫游,然后找到nltk_data目录。在那里,您将拥有您的语料库文件。完整路径类似于: C:\ Users \您的名字\ AppData \ Roaming \ nltk_data \ corpora
和lexnames将出现在 C:\ Users \您的名字\ AppData \ Roaming \ nltk_data \ corpora \ wordnet。