001package de.deepamehta.core.model; 002 003import de.deepamehta.core.Identifiable; 004import de.deepamehta.core.JSONEnabled; 005 006import org.codehaus.jettison.json.JSONObject; 007 008 009 010public interface DeepaMehtaObjectModel extends Identifiable, JSONEnabled, Cloneable { 011 012 // --- ID --- 013 014 long getId(); 015 016 void setId(long id); 017 018 // --- URI --- 019 020 String getUri(); 021 022 void setUri(String uri); 023 024 // --- Type URI --- 025 026 String getTypeUri(); 027 028 void setTypeUri(String typeUri); 029 030 // --- Simple Value --- 031 032 SimpleValue getSimpleValue(); 033 034 // --- 035 036 void setSimpleValue(String value); 037 038 void setSimpleValue(int value); 039 040 void setSimpleValue(long value); 041 042 void setSimpleValue(boolean value); 043 044 void setSimpleValue(SimpleValue value); 045 046 // --- Child Topics --- 047 048 ChildTopicsModel getChildTopicsModel(); 049 050 void setChildTopicsModel(ChildTopicsModel childTopics); 051 052 // --- misc --- 053 054 void set(DeepaMehtaObjectModel object); 055 056 // --- 057 058 RoleModel createRoleModel(String roleTypeUri); 059 060 061 062 // === Java API === 063 064 DeepaMehtaObjectModel clone(); 065}