I-Scover

I-Scover
I-Scoverの検索インタフェース
I-Scoverの詳細検索インタフェース
検索キーワードのメタデータ表示
I-Scover（あいすかばー、IEICE Knowledge Discovery）は、2013年4月3日より公開された電子情報通信学会の文献検索システムである。I-Scoverは、電子情報通信学会が著作権を保有する論文誌や研究会などの文献のメタデータをはじめ、日本電信電話株式会社 (NTT)や日本電気株式会社 (NEC)、沖電気工業株式会社 (OKI)などの各社が発行する企業誌のメタデータが登録されている。I-Scoverは、メタデータをLinked Open Data (LOD)の形式で蓄積しており、一般的な検索システムの機能に加え、OpenSearch APIやSPARQL API (SPARQL Endpoint)の各機能を提供している。平成30年3月29日をもって運用を停止している。

**概要**
I-Scoverは、キーワードや著者名、組織名などを検索フォームに入力して検索する一般的な検索システムの機能に加え、外部のアプリケーションからアクセス可能なOpenSearch APIとSPARQL API (SPARQL Endpoint)の2つのAPIを一般公開している。APIを利用することでI-Scoverの文献データベースに自由にアクセスでき、文献検索だけでなく研究動向や研究コミュニティなどの分析が可能となる。2017年9月1日現在、I-Scoverには24万件以上の文献をはじめ、27万人規模の著者、32万件規模の技術用語がLinked Open Data (LOD)の形式で登録されている。
I-Scoverの"I"はIEICEの"I"であるとともに、I（私）を意味しており、I-Scoverの発音がI discoverと聞こえることから名付けられたものである。
I-Scoverは、電子情報通信学会の登録商標である。

**文献検索**
I-Scoverは、文献のタイトルやキーワード、概要、発行日などのメタデータをLinked Dataとして蓄積しており、1語のキーワードによる直観的な検索や、個々のメタデータを指定した詳細検索の機能を提供している。I-Scoverは、CiNii ArticlesやIEEE Xploreなどの一般的な文献検索システムとは異なりメタデータが互いにリンクされているため、メタデータを辿ることで知識を横断するような文献検索が可能である。著者やキーワードなどのメタデータは、電子情報通信学会の事務局により名寄せが行われており、メタデータの質向上が図られている。

**Linked Data**
Linked Dataは、Resource Description Framework (RDF)に基づき主語、述語、目的語の3つ組（Triple）で個々のリソース（メタデータ）を意味的にリンクし、メタデータを体系的に整理したデータである。オープンデータとして公開されたLinked DataをLinked Open Data (LOD)という。I-Scoverは、Linked Dataを一般公開していないが、OpenSearch APIやSPARQL APIを通じて得られるデータに関してはオープンデータとして取り扱うことができ、メタデータの二次利用によるアプリケーション開発、及び公開が可能である。
I-Scoverは、各種メタデータをArticle（文献）、Term（技術用語）、Person（著者）、Organization（組織）、Publication（出版物）、Event（イベント）の6つのクラスに分類して管理している。また、この他にデータ数は僅かであるが、Multimedia（マルチメディア）とOnlineService（オンラインサービス）の2つのクラスを定義してメタデータを管理している。
RDFのTriple構造
I-Scover SPARQL APIの検索インタフェース

**SPARQL**
SPARQLは、RDFクエリ言語の1つであり、Linked Dataのリソースを対象とした検索や分析が可能である。I-Scoverは、SPARQL APIを提供しており、文献メタデータを用いた高度な検索や分析を可能としている，2017．。
I-Scover SPARQL API: https://i-scover-api.ieice.org/iscover/api/sparql

**例1. 文献数を取得**
select
count(*)
where {
?articleIRI
a iscover:Article.
}

**例2. クラスとその使用回数を取得**
select
?object
count(?object) as ?total
where {
?subject
a ?object.
}
group by ?object
order by desc(?total)

**例3. 述語の一覧を取得**
select
?predicate
where {
?subject
?predicate ?object.
}
group by ?predicate
order by asc(?predicate)

**例4. 「センサネットワーク」と「消費電力」が概要文に含まれる最新の文献20件を取得**
select
?articleIRI
?title
where {
?articleIRI
dcterms:title ?title;
dcterms:abstract ?abstract;
dcterms:issued ?date;
a iscover:Article.

filter(lang(?title) = "ja")
filter(regex(?abstract, "センサネットワーク") = true
&& regex(?abstract, "消費電力") = true
)
}
order by desc(?date)
limit 20

**例5. 文献の概要文から「センサネットワーク」の説明文を抽出**
select
?date
?description
where {
values(?term) {
("センサネットワーク")
}
?articleIRI
dcterms:abstract ?abstract;
dcterms:issued ?date;
a iscover:Article.
filter(regex(?abstract, concat(?term, "は.+る．")) = true)
bind(replace(?abstract, strBefore(?abstract, concat(?term, "は")), "") as ?tmp)
bind(replace(?tmp, strAfter(?tmp, "．"), "") as ?description)
bind("本(稿|論文|報告|研究|システム|アルゴリズム)|我々|機構|説明|提案|検討" as ?reject)
filter(regex(?description, ?reject) = false)
}
order by desc(?date)
2012年から2016年において加熱した研究トピック

**例6. 2012年から2016年において加熱した研究トピック（キーワード）を取得**
select
?keyword
?increasedRate
where {
{
select
?p1TermIRI
count(?p1TermIRI) as ?p1Total
where {
?articleIRI
dcterms:subject ?p1TermIRI;
dcterms:issued ?date;
a iscover:Article.
bind(year(?date) as ?year)
filter(?year = 2012)
}
}
{
select
?p2TermIRI
count(?p2TermIRI) as ?p2Total
where {
?articleIRI
dcterms:subject ?p2TermIRI;
dcterms:issued ?date;
a iscover:Article.
bind(year(?date) as ?year)
filter(?year = 2016)
}
}
filter(?p1TermIRI = ?p2TermIRI)
filter(?p1Total >= 3 && ?p2Total >= 3)
bind((xsd:float(?p2Total) / ?p1Total) as ?increasedRate)
?p1TermIRI
rdfs:label ?keyword;
a iscover:Term.
filter(lang(?keyword) = "ja")
filter(?increasedRate >= 5.0)
}
order by desc(?increasedRate)
「IoT」と「ディープラーニング」の文献数推移

**例7. 「IoT」と「ディープラーニング」の文献数推移を取得**
select
?keyword
?year
count(?articleIRI) as ?total
where {
{
select
?termIRI
?keyword
where {
values( ?keyword ) {
("IoT"@ja) ("ディープラーニング"@ja)
}
?termIRI
rdfs:label ?keyword;
a iscover:Term.
}
}
?articleIRI
dcterms:subject ?termIRI;
dcterms:issued ?date;
a iscover:Article.
bind(year(?date) as ?year)
}
order by asc(?keyword) asc(?year)
2014年における主要な研究トピック

**例8. 2014年における主要な研究トピック（キーワード）Top-100を取得**
select
?term
?total
where {
{
select
?termIRI
count(?termIRI) as ?total
where {
?articleIRI
dcterms:subject ?termIRI;
dcterms:issued ?date;
a iscover:Article.

bind(year(?date) as ?year)
filter(?year = 2014)
}
group by ?termIRI
order by desc(?total)
limit 100
}


optional {
?termIRI
rdfs:label ?term;
a iscover:Term.
filter(lang(?term) = "ja")
}
optional {
?termIRI
rdfs:label ?term;
a iscover:Term.

filter(lang(?term) = "en")
}
}
order by desc(?total)
共起頻度に基づいた日英・英日辞書機能

**例9. 技術用語の共起頻度に基づいた日英・英日辞書**
select
?term
if(?total > 5, ?transTerm, "(Insufficient data)") as ?transTerm
where {
{
select
?term
?lang
?coTermIRI
count(?coTermIRI) as ?total
where {
values(?term) { ("自然言語処理"@ja) }

?termIRI
rdfs:label ?term;
a iscover:Term.

bind(lang(?term) as ?lang)
?articleIRI
dcterms:subject ?termIRI;
a iscover:Article.
?articleIRI
dcterms:subject ?coTermIRI;
a iscover:Article.
}
order by desc(?total)
limit 5
}


?coTermIRI
rdfs:label ?transTerm;
a iscover:Term.


bind(if(?lang = "ja", "en", "ja") as ?target)
filter(lang(?transTerm) = ?target)
}
order by desc(?total)
limit 1
データマイニングの共起語を基準とした技術年表

**例10. データマイニングの共起語を基準とした技術年表**
select
?coTerm
min(?year) as ?startYear
max(?year) as ?endYear
where {
{
select
?coTermIRI
count(?coTermIRI) as ?total
where {
values(?term) { ("データマイニング"@ja) }


?termIRI
rdfs:label ?term;
a iscover:Term.


?articleIRI
dcterms:subject ?termIRI;
a iscover:Article.


?articleIRI
dcterms:subject ?coTermIRI;
dcterms:issued ?date;
a iscover:Article.
}
order by desc(?total)
limit 20
}


?coTermIRI
rdfs:label ?coTerm;
a iscover:Term.

filter(lang(?coTerm) = "ja")


?articleIRI
dcterms:subject ?coTermIRI;
dcterms:issued ?date;
a iscover:Article.

bind(year(?date) as ?year)
}
order by asc(?startYear)
ニューラルネットワーク、機械学習、画像処理を起点とした共起語グラフ

**例11. 任意のキーワードを起点とした共起語グラフ**
select
?source
?target
?weight
where {
{
select
?source
?targetIRI
count(?targetIRI) as ?weight
where {
values ?source {
"ニューラルネットワーク"@ja
"機械学習"@ja
"画像処理"@ja
}


?termIRI
rdfs:label ?source;
a iscover:Term.


?articleIRI
dcterms:subject ?termIRI;
a iscover:Article.


?articleIRI
dcterms:subject ?targetIRI;
a iscover:Article.
}
}

filter(?weight >= 5)


?targetIRI
rdfs:label ?target;
a iscover:Term.
filter(lang(?target) = "ja")
filter(?source != ?target)
}
order by asc(?source) desc(?weight)

**例12. 任意の組織名を起点とした組織グラフ**
2010年以降におけるNTT、NEC、OKIを起点とした組織グラフ
select
?source
?target
?weight
where {
{
select
?source
?abbraviation
?targetIRI
count(?organizationIRI) as ?weight
where {
values (?candidate ?abbraviation) {
("日本電信電話"@ja "NTT"@ja)
("日本電気"@ja "NEC"@ja)
("沖電気工業"@ja "OKI"@ja)
}


?organizationIRI
rdfs:label ?source;
a iscover:Organization.

filter(lang(?source) = "ja")
filter(regex(?source, ?candidate) = true

regex(?source, ?abbraviation) = true)


?articleIRI
iscover:authorInfos/rdf:rest*/rdf:first/iscover:authorInfo 
iscover:affiliation ?organizationIRI;
;
dcterms:issued ?date;
a iscover:Article.

filter(2010 = 10)


?targetIRI
rdfs:label ?target;
a iscover:Organization.

filter(lang(?target) = "ja")
filter(?source != ?target && ?abbraviation != ?target)
}
order by asc(?source) desc(?weight)
沖電気工業の研究開発歴

**例13. 任意の組織における研究開発の経歴**
select
?term
?startYear
?endYear
?duration
?total
where {
{
select
?termIRI
min(?year) as ?startYear
max(?year) as ?endYear
count(?termIRI) as ?total
where {
?organizationIRI
rdfs:label "沖電気工業　株式会社"@ja;
a iscover:Organization.

?articleIRI
iscover:authorInfos/rdf:rest*/rdf:first/iscover:authorInfo 
iscover:affiliation ?organizationIRI;
;
dcterms:subject ?termIRI;
dcterms:issued ?date;
a iscover:Article.
bind(year(?date) as ?year)
}
}
bind((?endYear - ?startYear + 1) as ?duration)
?termIRI
rdfs:label ?term;
a iscover:Term.
filter(lang(?term) = "ja")
}
order by desc(?total) desc(?duration)

**脚注**

**関連項目**
 J-STAGE - 科学技術振興機構が運営する電子ジャーナル公開サービス- CiNii - 国立情報学研究所が運営する日本国内の学術論文や図書・雑誌の学術情報データベース。

**外部リンク**
  電子情報通信学会-  I-Scover｜電子情報通信学会-  I-Scover SPARQL API｜電子情報通信学会-  I-Scoverひろば｜電子情報通信学会-  I-Scoverユーザ会｜Facebook-  I-Scover: 電子情報通信学会の文献検索システム｜ Knowledge Connector on  LinkData.org-  Cytoscape