SPARQL/WIKIDATA 词汇数据
WIKIDATA 上的数据包含的信息不仅仅是三元组,这些概念:Q 项目与事物或想法相关。自 2018 年以来,维基数据还存储了一种新的数据类型:词语、短语和句子,以多种语言描述,并以多种语言描述。此信息存储在新的实体类型中,称为词条 (L)、形式 (F) 和义项 (S)。
评论本章尚未完成。请帮助扩展它。
词汇表 | SPARQL 代码 |
词条是语言的词汇元素,例如词语、短语或前缀(参见 维基百科上的词条)。词条是维基数据模型意义上的实体。词条使用以下信息进行描述
|
|
|
|
|
|
前缀仅用于词汇数据
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
PREFIX dct: <http://purl.org/dc/terms/>
SELECT ?sense ?gloss
WHERE {
VALUES ?l {wd:L35455}. # Swedish noun "vara"
?l ontolex:sense ?sense.
?sense skos:definition ?gloss.
# Get only the swedish gloss, exclude otherwise
FILTER(LANG(?gloss) = "sv")
}
SELECT ?sense ?gloss
WHERE {
VALUES ?l {wd:L39751}. # Swedish adjective "smaklös"
?l ontolex:sense ?sense.
?sense skos:definition ?gloss.
# Exclude lexemes without a linked QID from at least one sense
?sense wdt:P5137 []. # has P5137 (item for this sense)
}
# By Vesihiisi
SELECT ?l ?lemma ?languageLabel WHERE {
?l a ontolex:LexicalEntry;
dct:language ?language;
wikibase:lemma ?lemma .
?l wdt:P31 wd:Q376431. # color term
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY ?languageLabel
以下是每种语言的词语数量概述
SELECT (?language AS ?label) (COUNT(*) AS ?count)
WHERE {
?l a ontolex:LexicalEntry ; wikibase:lemma ?word .
BIND( LANG(?word) AS ?language )
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
GROUP BY ?language
ORDER BY DESC(?count)
此查询列出英语和美式英语中所有不同的词语
SELECT ?l ?english ?american
WHERE {
?l wikibase:lemma ?english . FILTER(LANG(?english)="en-gb")
?l wikibase:lemma ?american . FILTER(LANG(?american)="en")
FILTER(?english!=?american)
}
ORDER BY ?english
以下是英语中最常用的词汇类别的概述
SELECT ?categoryLabel (COUNT(*) AS ?count)
WHERE {
?l a ontolex:LexicalEntry ; wikibase:lemma ?word ; wikibase:lexicalCategory ?category; dct:language ?language.
?language wdt:P218 'en'
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
GROUP BY ?categoryLabel
ORDER BY DESC(?count)
以下是以英语为例的最长词语列表
SELECT DISTINCT ?l ?word ?len
WHERE {
{
?l a ontolex:LexicalEntry ; dct:language wd:Q1860 ; wikibase:lemma ?word .
BIND(strlen(?word) as ?len)
} UNION {
?l a ontolex:LexicalEntry ; dct:language wd:Q1860 ; ontolex:lexicalForm/ontolex:representation ?word .
BIND(strlen(?word) as ?len)
}
}
order by DESC(?len)
LIMIT 20
此示例展示了(英文)形容词及其原级、比较级和最高级形式。通过更改VALUES ?language { wd:Q1860 }
,可以将此查询更改为任何语言。
# adjectives
SELECT DISTINCT ?l ?word (GROUP_CONCAT(DISTINCT ?subfeatLabel; SEPARATOR=", ") AS ?subfeatures)
(GROUP_CONCAT(DISTINCT ?positive; SEPARATOR=", ") AS ?Positive)
(GROUP_CONCAT(DISTINCT ?comparative; SEPARATOR=", ") AS ?Comparative)
(GROUP_CONCAT(DISTINCT ?superlative; SEPARATOR=", ") AS ?Superlative)
WHERE {
VALUES ?language { wd:Q1860 } # English
?l a ontolex:LexicalEntry ; wikibase:lemma ?word; wikibase:lexicalCategory wd:Q34698 . # adjective
?l dct:language ?language.
OPTIONAL {
?l ontolex:lexicalForm ?form1 .
?form1 ontolex:representation ?positive ; wikibase:grammaticalFeature wd:Q3482678 . # positive
OPTIONAL { ?form1 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q3482678 ) }
}
?l ontolex:lexicalForm ?form2 .
?form2 ontolex:representation ?comparative ; wikibase:grammaticalFeature wd:Q14169499 . # comparative
OPTIONAL { ?form2 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q14169499 ) }
?l ontolex:lexicalForm ?form3 .
?form3 ontolex:representation ?superlative ; wikibase:grammaticalFeature wd:Q1817208 . # superlative
OPTIONAL { ?form3 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q1817208 ) }
# use ?word if ?positive is blank
BIND(IF(BOUND(?positive),?positive,?word) AS ?positive).
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".
?subfeat rdfs:label ?subfeatLabel.
}
}
GROUP BY ?word ?l
ORDER BY ?word ?l
LIMIT 20000
此示例展示了(英文)动词及其变位形式。此查询非常复杂,因为 Wikidata 中的动词变位建模非常复杂。通过更改VALUES ?language { "en" }
,可以将此查询更改为任何语言。目前,只有少数动词被变位。
# verbs
SELECT ?l ?word (GROUP_CONCAT(DISTINCT ?subfeatLabel; SEPARATOR=", ") AS ?subfeatures)
?single1 ?single2 ?single3 ?plural1 ?plural2 ?plural3
WHERE {
VALUES ?language { "en" }
?l a ontolex:LexicalEntry ; wikibase:lemma ?word; wikibase:lexicalCategory ?category .
FILTER(?category = wd:Q24905 ) # verb
FILTER(LANG(?word) = ?language)
OPTIONAL {
?l ontolex:lexicalForm ?form1 .
{ ?form1 ontolex:representation ?single1 ; wikibase:grammaticalFeature wd:Q51929218 . # first-person singular
} UNION
{ ?form1 ontolex:representation ?single1 ; wikibase:grammaticalFeature wd:Q21714344 . # first person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q146786 . } # without plural
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q51929154 . } # without plural person
} UNION
{ ?form1 ontolex:representation ?single1 ; wikibase:grammaticalFeature wd:Q51929131 . # singular person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form1 ontolex:representation ?single1 ; wikibase:grammaticalFeature wd:Q110786 . # singular
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form1 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?single1) = ?language )
OPTIONAL { ?form1 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929218 && ?subfeat != wd:Q21714344 ) # not first-person singular / first person
FILTER(?subfeat != wd:Q51929131 && ?subfeat != wd:Q110786 ) # not singular person / singular
FILTER(?subfeat != wd:Q51929049 && ?subfeat != wd:Q51929074 ) } # not second person / third person
}
OPTIONAL {
?l ontolex:lexicalForm ?form2 .
{ ?form2 ontolex:representation ?single2 ; wikibase:grammaticalFeature wd:Q51929369 . # second-person singular
} UNION
{ ?form2 ontolex:representation ?single2 ; wikibase:grammaticalFeature wd:Q51929049 . # second person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q146786 . } # without plural
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q51929154 . } # without plural person
} UNION
{ ?form2 ontolex:representation ?single2 ; wikibase:grammaticalFeature wd:Q51929131 . # singular person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form2 ontolex:representation ?single2 ; wikibase:grammaticalFeature wd:Q110786 . # singular
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form2 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?single2) = ?language )
OPTIONAL { ?form2 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929369 && ?subfeat != wd:Q51929049 ) # not second-person singular / second person
FILTER(?subfeat != wd:Q51929131 && ?subfeat != wd:Q110786 ) # not singular person / singular
FILTER(?subfeat != wd:Q21714344 && ?subfeat != wd:Q51929074 ) } # not first person / third person
}
OPTIONAL {
?l ontolex:lexicalForm ?form3 .
{ ?form3 ontolex:representation ?single3 ; wikibase:grammaticalFeature wd:Q51929447 . # third-person singular
} UNION
{ ?form3 ontolex:representation ?single3 ; wikibase:grammaticalFeature wd:Q51929074 . # third person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q146786 . } # without plural
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q51929154 . } # without plural person
} UNION
{ ?form3 ontolex:representation ?single3 ; wikibase:grammaticalFeature wd:Q51929131 . # singular person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form3 ontolex:representation ?single3 ; wikibase:grammaticalFeature wd:Q110786 . # singular
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form3 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?single3) = ?language )
OPTIONAL { ?form3 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929447 && ?subfeat != wd:Q51929074 ) # not third-person singular / third person
FILTER(?subfeat != wd:Q51929131 && ?subfeat != wd:Q110786 ) # not singular person / singular
FILTER(?subfeat != wd:Q21714344 && ?subfeat != wd:Q51929049 ) } # not first person / second person
}
OPTIONAL {
?l ontolex:lexicalForm ?form4 .
{ ?form4 ontolex:representation ?plural1 ; wikibase:grammaticalFeature wd:Q51929290 . # first-person plural
} UNION
{ ?form4 ontolex:representation ?plural1 ; wikibase:grammaticalFeature wd:Q21714344 . # first person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q110786 . } # without singular
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q51929131 . } # without singular person
} UNION
{ ?form4 ontolex:representation ?plural1 ; wikibase:grammaticalFeature wd:Q51929154 . # plural person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form4 ontolex:representation ?plural1 ; wikibase:grammaticalFeature wd:Q146786 . # plural
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form4 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?plural1) = ?language )
OPTIONAL { ?form4 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929290 && ?subfeat != wd:Q21714344 ) # not first-person plural / first person
FILTER(?subfeat != wd:Q51929154 && ?subfeat != wd:Q146786 ) # not plural person / plural
FILTER(?subfeat != wd:Q51929049 && ?subfeat != wd:Q51929074 ) } # not second person / third person
}
OPTIONAL {
?l ontolex:lexicalForm ?form5 .
{ ?form5 ontolex:representation ?plural2 ; wikibase:grammaticalFeature wd:Q51929403 . # second-person plural
} UNION
{ ?form5 ontolex:representation ?plural2 ; wikibase:grammaticalFeature wd:Q51929049 . # second person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q110786 . } # without singular
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q51929131 . } # without singular person
} UNION
{ ?form5 ontolex:representation ?plural2 ; wikibase:grammaticalFeature wd:Q51929154 . # plural person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form5 ontolex:representation ?plural2 ; wikibase:grammaticalFeature wd:Q146786 . # plural
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form5 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?plural2) = ?language )
OPTIONAL { ?form5 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929403 && ?subfeat != wd:Q51929049 ) # not second-person plural / second person
FILTER(?subfeat != wd:Q51929154 && ?subfeat != wd:Q146786 ) # not plural person / plural
FILTER(?subfeat!= wd:Q21714344 && ?subfeat != wd:Q51929074 ) } # not first person / third person
}
OPTIONAL {
?l ontolex:lexicalForm ?form6 .
{ ?form6 ontolex:representation ?plural3 ; wikibase:grammaticalFeature wd:Q51929517 . # third-person plural
} UNION
{ ?form6 ontolex:representation ?plural3 ; wikibase:grammaticalFeature wd:Q51929074 . # third person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q110786 . } # without singular
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q51929131 . } # without singular person
} UNION
{ ?form6 ontolex:representation ?plural3 ; wikibase:grammaticalFeature wd:Q51929154 . # plural person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
} UNION
{ ?form6 ontolex:representation ?plural3 ; wikibase:grammaticalFeature wd:Q146786 . # plural
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q21714344 . } # without first person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q51929049 . } # without second person
FILTER NOT EXISTS{ ?form6 wikibase:grammaticalFeature wd:Q51929074 . } # without third person
}
FILTER(LANG(?plural3) = ?language )
OPTIONAL { ?form6 wikibase:grammaticalFeature ?subfeat .
FILTER(?subfeat != wd:Q51929517 && ?subfeat != wd:Q51929074 ) # not third-person plural / third person
FILTER(?subfeat != wd:Q51929154 && ?subfeat != wd:Q146786 ) # not plural person / plural
FILTER(?subfeat != wd:Q21714344 && ?subfeat != wd:Q51929049 ) } # not first person / second person
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".
?subfeat rdfs:label ?subfeatLabel.
}
}
GROUP BY ?l ?word ?single1 ?single2 ?single3 ?plural1 ?plural2 ?plural3
ORDER BY ?word ?single1 ?single2 ?single3 ?plural1 ?plural2 ?plural3
LIMIT 20000
此示例展示了多种语言中的冠词。
# articles in all languages
SELECT ?l ?language ?categoryLabel ?word ?subfeatures
(GROUP_CONCAT(DISTINCT ?masculine; SEPARATOR=", ") AS ?Masculine )
(GROUP_CONCAT(DISTINCT ?feminine; SEPARATOR=", ") AS ?Feminine )
(GROUP_CONCAT(DISTINCT ?neuter; SEPARATOR=", ") AS ?Neuter )
WHERE {
SELECT ?l ?language ?categoryLabel ?word (GROUP_CONCAT(DISTINCT ?subfeatLabel; SEPARATOR=", ") AS ?subfeatures)
?masculine ?feminine ?neuter
WHERE {
VALUES ?categories { wd:Q103184 wd:Q2865743 wd:Q3813849 } # article or definite article or indefinite article
?l a ontolex:LexicalEntry ; wikibase:lemma ?word; wikibase:lexicalCategory ?category .
FILTER(?category = ?categories ) # article or definite article or indefinite article
BIND(LANG(?word) as ?language)
OPTIONAL {
?l ontolex:lexicalForm ?form1 .
?form1 ontolex:representation ?masculine ; wikibase:grammaticalFeature wd:Q499327 . # masculine
FILTER(LANG(?masculine) = ?language )
OPTIONAL { ?form1 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q499327 ) }
}
OPTIONAL {
?l ontolex:lexicalForm ?form2 .
?form2 ontolex:representation ?feminine ; wikibase:grammaticalFeature wd:Q1775415 . # feminine
FILTER(LANG(?feminine) = ?language )
OPTIONAL { ?form2 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q1775415 ) }
}
OPTIONAL {
?l ontolex:lexicalForm ?form3 .
?form3 ontolex:representation ?neuter ; wikibase:grammaticalFeature wd:Q1775461 . # neuter
FILTER(LANG(?neuter) = ?language )
OPTIONAL { ?form3 wikibase:grammaticalFeature ?subfeat . FILTER(?subfeat != wd:Q1775461 ) }
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".
?subfeat rdfs:label ?subfeatLabel.
?category rdfs:label ?categoryLabel.
}
}
GROUP BY ?language ?l ?categoryLabel ?word ?masculine ?feminine ?neuter
ORDER BY ?language ?categoryLabel ?subfeatures ?word ?masculine ?feminine ?neuter
}
GROUP BY ?language ?l ?categoryLabel ?word ?subfeatures
ORDER BY ?language ?l ?categoryLabel ?word ?subfeatures ?masculine ?feminine ?neuter
有关词汇数据外部工具的列表,请参见Wikidata:Tools/Lexicographical data。