2016-04-11 11 views
0

Derzeit habe ich 3 Kategorien, Anwendung, Application Instance und Vendor.Übergabe von Eigenschaften in Semantic MediaWiki

Im Moment hat die Anwendung eine Verknüpfung (über die Eigenschaft "Made By") zu Vendor. Anwendungsinstanzen müssen über eine Eigenschaft mit dem Kreditor verbunden sein. Ich habe die Abfrage kann ich den Namen der Anwendung zurückzukehren und Verkäufer ist

{{#ask: 
[[Category:Program]][[{{{Program}}}]] 
|?Made By 
}} 

jedoch

{{#set:Made By={{#ask: 
[[Category:Program]][[{{{Program}}}]] 
|?Made By 
}}}} 

funktioniert nicht die Eigenschaft auf den Wert von Anbieter zu setzen, die durch die fragen Abfrage zurückgegeben wird .

Gibt es andere Möglichkeiten, dies zu tun?

Antwort

1

Vielleicht ein bisschen spät, aber Sie könnten dies wahrscheinlich mithilfe einer Vorlage zum Festlegen der Eigenschaft tun. Etwas wie das?

In der Vorlage Anwendungsinstanz (oder manuell auf jeder Seite Anwendungsinstanz) fügen Sie die Abfrage folgende Frage stellen:

{{#ask:[[Category:Program]][[{{{Program}}}]] 
|?Made By 
|link=none 
|format=template 
|template=Set made by 
}} 

dann die Vorlage erstellen „wiki/Vorlage: Set made by“ mit dem folgenden:

includeonly> 
{{#set: 
Made By={{{2}}} 
}} 
</includeonly> 

Hinweise

  1. Parameter {{{1}}} ist das Thema, das der Seitenname ist und {{{2}}} w krank sein, das Ergebnis für "Made By".
  2. Das Entfernen der Verknüpfung von den Abfrageergebnissen verhindert, dass der zusätzliche Text an den Befehl set übergeben wird, was die Dinge verwirren würde.
  3. Sie können auch die Umkehrung von Eigenschaften in Abfragen verwenden, indem Sie ein Minuszeichen vor ihnen hinzufügen. (z.B. 'hergestellt durch')