Hannes Niederhausen of The TopicMaps Lab in Leipzig has released Aranuka 1.0, a Topic Maps object data binding tool, which supports persisting information stored in Java objects in a topic map. Effectively, it means you can write normal Java objects encapsulating your business logic and have Aranuka take care of storing the data in a topic map for you. Aranuka works with Ontopia and tinyTiM.
Aranuka is not part of Ontopia, but since it adds value to Ontopia users we thought it would be good to mention it here.
Here is an example showing how you could implement a simple class representing Person topics, and have Aranuka store the data about the person in a topic map for you:
@Topic(subject_identifier="ex:address") public class Address { @Id(type=IdType.ITEM_IDENTIFIER) private int id; @Occurrence(type="ex:zipcode") private String zipCode; @Occurrence(type="ex:city") private String city; @Occurrence(type="ex:street") private String street; @Occurrence(type="ex:number") private String number; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getZipCode() { return zipCode; } public void setZipCode(String zipCode) { this.zipCode = zipCode; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getStreet() { return street; } public void setStreet(String street) { this.street = street; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; } }
The example was taken from the Aranuka manual, which has more information.