Eigenschaften indizieren und suchen

Das Beispiel indiziert aktuell Titel Inhalt und Datum. Mindbreeze bietet aber die Möglichkeit beliebige Eigenschaften pro Objekt zu hinterlegen.

Eigenschaften werden mit indexable.putProperty angegeben.


indexable.putProperty(NamedValue.newBuilder()
	.setName("name")
.addValue(ValueHelper.newBuilder("value"))
);


Um einen Listenwert abzubilden, genügt ein mehrfacher Aufruf von addValue:


indexable.putProperty(NamedValue.newBuilder()
	.setName("name")
.addValue(ValueHelper.newBuilder("value"))
.addValue(ValueHelper.newBuilder("value"))
);


Die hinzugefügten Eigenschaften sind bereits im Index enthalten und auch durchsuchbar. Sie können z.B. eine Suche nach name:value machen und erhalten nur die Objekte, die name auf value gesetzt haben.

Anzeige der Eigenschaften im Mindbreeze Client

Damit die Eigenschaften auch im Mindbreeze Client angezeigt werden, müssen sie im CategoryDescriptor eingetragen werden. Jede Eigenschaft, die angezeigt werden soll, muss als metadatum eingetragen werden. Sie können durch name-Elemente die Übersetzung für die Bezeichnung angeben.


<metadatum id="name">
  <name xml:lang="de">Name de</name>
  <name xml:lang="en">Name en</name>
</metadatum>


Nach der Änderung des CategoryDescriptors muss das Plugin neu paketiert und eingespielt werden.