2013-10-14 11 views
7

Come si crea una query come questa di seguito?Come creare query avanzate con una serie di AND/OR con mediawiki semantico?

ottenere un elenco di persone dove il colore dei capelli è marrone o nero e occhi colore è blu o verde.

Il motivo per cui sto chiedendo questo è perché non sono sicuro di come viene gestita la precedenza in queste query.

Per esempio, se ho scritto:

#ask: [[Category:Person]] 
     [[Hair color::brown]] OR [[Hair color::black]] 
     [[Eye color::blue]] OR [[Eye color::green]] 

Sarebbe SMW gruppo la logica come: ((capelli = marrone o nero) e (occhi = blu o verdi))

o

sarebbe la logica raggruppata come: (capelli = marrone o (capelli = nero e occhi = blu) o occhi = verde)

Dalle mie prove iniziali sembra che quest'ultimo sembra essere il caso che sembra essere è impossibile creare la query che sto cercando.

Questa funzione è mancante in smw?

risposta

3

che ho appena trovato la risposta: l'interrogazione dovrebbe essere scritto come tale:

#ask: [[Category:Person]] 
    [[Hair color::brown||black]] 
    [[Eye color::blue||green]] 

questo mi darà la presecende corretto in modo logico sarebbe ottenere raggruppati come: ((capelli = marrone o nero) e (occhi azzurri o verdi =))

0

Suppongo che non puoi farlo. Qui login sarà:

Categoria: Persona e (capelli = marrone o capelli: nero o degli occhi: blu o degli occhi: Verdi)

+0

il fatto che questa funzione non è implementata è un grande shock per me. Qualcosa di fondamentale come la gestione delle presenze dovrebbe essere implementata .... – netbrain