MediaWiki bilgiyi kullanıcılarla paylaşmada son derece yeteneklidir. Fakat iş bu dev bilgi ağının içerisinden bazı detay bilgileri çekmeye geldiğinde MediaWiki eksik kalmaktadır.
Bu sebeple, geleceğin web standartı denilen semantic web eklentisi yardımımıza koşmaktadır. SemanticMediaWiki (semantic-mediawiki.org) ile sonradan hızlıca çekmemiz gereken bu detay bilgiler için özel yapılar (property) tanımlanır. Ve daha sonra bunları aynı sql sorgusu yapar gibi istediğimiz wikipedia sayfasından çekebiliriz.
Bu anlattıklarım ile ilgili aşağıda hızlıca göz atabileceğiniz örnek template, form ve property'ler var. Ve semantic sorgu ile bunları nasıl alıp gösterebileceğimiz.
Sonuç olarak ortaya çıkacak semantic-mediawiki destekli kategori sayfası
Örnek Template (Rapor tutulması için kullanılacak template)
This is the "Report" template.
It should be called in the following format:
{{Report
|Date=
|Personnel=
|Keywords=
}}
Edit the page to see the template text.
{| class="wikitable"
|-
! Date
| [[Has date::{{{Date|}}}]]
|-
! Personel
| {{#arraymap:{{{Personnel|}}}|,|x|[[Is assigned to::x]] }}
|-
! Keywords
| [[Has keywords::{{{Keywords|}}}]]
|}
[[Category:Report]]
Örnek Form (Rapor girilebilmesi için oluşturulan form)
;Başlangıç
* Rapor ismini, aşağıdaki "Rapor id"yi bir arttırarak giriniz.
'''En son olusturulan Rapor id:'''
{{#ask:[[Category:Report]]
| order=desc
| limit=1
}}
{{#forminput:form=Report}}
{{{for template|Report}}}
{| class="formtable"
! Date:
| {{{field|Date}}}
|-
! Personnel:
| {{{field|Personnel}}}
|-
! Keywords:
| {{{field|Keywords}}}
|}
{{{end template}}}
'''Free text:'''
{{{standard input|summary}}}
{{{standard input|minor edit}}} {{{standard input|watch}}}
{{{standard input|save}}} {{{standard input|preview}}} {{{standard input|changes}}} {{{standard input|cancel}}}
Örnek Kategori Sayfası (Raporları zaman çizgisinde ve tablolar halinde görmek için)
This category uses the form [[Has default form::Report]].
''' Zaman Çizgisi '''
{{ #ask: [[Category:Report]]
| ?Has date#Has date=Rapor Tarihi
| ?Is assigned to#Is assigned to=Sahibi
| ?Has keywords#Has keywords=Anahtar Kelimeler
| format=timeline
| timelinebands=WEEK,MONTH
| limit=100
}}
''' Raporlar '''
{{#ask: [[Category:Report]]
| ?Has date#Has date=Rapor Tarihi
| ?Has keywords#Has keywords=Anahtar Kelimeler
| ?Is assigned to#Is assigned to=Sahibi
| format=broadtable
| sort=Has date
| order=desc
| limit=20
}}
No comments:
Post a Comment