我负责安装了Semantic MediaWiki扩展的MediaWiki。现在,我正在尝试以这种方式执行语义搜索:
定义概念:
{{#ifeq:{{#BioDB_value:transcript.swissprot_version}}|||
{{#BioDB_store_table:DB
|Uses DB=http://www.uniprot.org/ SwissProt
|Has Alias={{{transcript.transcript_alias}}}
|Uses DB Version={{{transcript.swissprot_version}}}
|Has Hit=http://www.uniprot.org/uniprot/{{{transcript.hit}}}/ {{{transcript.hit}}}
|Has Evalue={{{transcript.evalue}}}
}}}}
语义搜索:
{{#ask:[[DB::{{FULLPAGENAMEE}}]]|?Has Alias|?Uses DB|?Uses DB Version|?Has Hit|?Has Evalue|mainlabel=-|format=template|template=DBList|introtemplate=DBList_Header|outrotemplate=DBList_Footer}}}}
模板:
<includeonly>
|-
| {{{1|}}} || [{{{2|}}}] || {{{3|}}} || [{{{4|}}}] || {{{5|}}}
</includeonly>
如果是Uses DB
,则显示为与提供的URL链接的SwissProt。没问题,就是我想要的。但是,在谈论Has Hit
时,此行为会发生变化。它显示为[O34598]
,没有附加任何链接。它似乎只看到变量{{{transcript.hit}}}
一次,其中包含O34598
。我不明白为什么这种行为会改变。没有变量它运作良好。
注意:BioDB_value
和BioDB_store_table
来自允许从MySQL获取值的扩展。