如何在Wordnet中找到“词法文件”?

时间:2011-07-13 15:24:35

标签: sparql wordnet

如果您查看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或数据库?

5 个答案:

答案 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。