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は、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つのクラスを定義してメタデータを管理している。 SPARQLは、RDFクエリ言語の1つであり、Linked Dataのリソースを対象とした検索や分析が可能である。I-Scoverは、SPARQL APIを提供しており、文献メタデータを用いた高度な検索や分析を可能としている。 I-Scover SPARQL API: https://i-scover-api.ieice.org/iscover/api/sparql select count(*) where { ?articleIRI a iscover:Article. } select ?object count(?object) as ?total where { ?subject a ?object. } group by ?object order by desc(?total) select ?predicate where { ?subject ?predicate ?object. } group by ?predicate order by asc(?predicate) 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 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) 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) 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) 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) 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 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) 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) 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 <= year(?date)) ?articleIRI iscover:authorInfos/rdf:rest*/rdf:first/iscover:authorInfo [ iscover:affiliation ?targetIRI; ]; a iscover:Article. } order by desc(?weight) } filter(?weight >= 10) ?targetIRI rdfs:label ?target; a iscover:Organization. filter(lang(?target) = "ja") filter(?source != ?target && ?abbraviation != ?target) } order by asc(?source) desc(?weight) 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) [脚注の使い方] ^ 西野文人「I-Scover:—Linked Dataに基づく電子情報通信学会文献検索システム—」『電子情報通信学会 通信ソサイエティマガジン』第7巻第1号、電子情報通信学会、2013年、49-53頁、doi:10.1587/bplus.7.49、ISSN 1884-4863、NAID 130003378603。  ^ 井形伸之, 西野文人, 粂照宣「Linked Dataを用いた情報統合・活用技術 (特集 研究開発最前線) -- (大量データの利活用)」『Fujitsu』第64巻第5号、富士通、2013年9月、464-470頁、ISSN 0016-2515、NAID 40019809152、NDLJP:9974112。  ^ “EiC　横断検索システムI-Scoverに関するお知らせ（続報）”. app.journal.ieice.org. 2024年9月20日閲覧。 ^ 柏崎吉一, "2017/09/22. 文献検索システム「I-Scover」から考えるオープンデータ時代の共創のあり方と学会の役割", インプレスビジネスメディア, IT Leaders ^ 五味弘「I-Scoverによる文献検索のススメ」『電子情報通信学会 通信ソサイエティマガジン』第11巻第2号、電子情報通信学会、2017年、148-155頁、doi:10.1587/bplus.11.148、ISSN 1884-4863、NAID 130006041697。  ^ 山里敬也, 飯田勝吉, 内山博幸「研究専門委員会によるI-Scoverキーワード解説文の執筆と検索されやすい文献キーワードの付与の仕方」『電子情報通信学会誌』第98巻第6号、電子情報通信学会、2015年6月、494-499頁、ISSN 0913-5693、NAID 40020499006。  ^ I-Scover, "メタデータ仕様書", 電子情報通信学会, http://www.ieice.org/~iscover/rdfdef/, Accessed on September 1, 2017 ^ I-Scoverビジネストライアルチーム，"I-Scover SPARQL API利活用レポート1"，http://iscover-p.ieice.org/cms/wp-content/uploads/2014/10/iscover_report_v1_11.pdf，2017． J-STAGE - 科学技術振興機構が運営する電子ジャーナル公開サービス CiNii - 国立情報学研究所が運営する日本国内の学術論文や図書・雑誌の学術情報データベース。 電子情報通信学会 I-Scover｜電子情報通信学会 I-Scover SPARQL API｜電子情報通信学会 I-Scoverひろば｜電子情報通信学会 I-Scoverユーザ会｜Facebook I-Scover: 電子情報通信学会の文献検索システム｜Knowledge Connector on LinkData.org Cytoscape 表示 編集