Class Model

java.lang.Object
org.episteme.social.philosophy.Model
All Implemented Interfaces:
Serializable, Commented, ComprehensiveIdentification, Identified<Identification>, Named

public class Model extends Object implements ComprehensiveIdentification
Represents a logical organization or cluster of interrelated concepts.

Models are used to structure philosophical systems or scientific theories, providing a framework for organizing conceptual networks.

Modernized to implement ComprehensiveIdentification and support dynamic traits and consistent identity. * @version 7.0
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
See Also:
  • Constructor Details

    • Model

      public Model(String name)
      Creates a new Model with the specified name.
      Parameters:
      name - the identifying name of the model
      Throws:
      IllegalArgumentException - if name is null or empty
  • Method Details

    • getId

      public Identification getId()
      Description copied from interface: Identified
      Returns the unique identifier of this entity.
      Specified by:
      getId in interface Identified<Identification>
      Returns:
      the identifier
    • getTraits

      public Map<String,Object> getTraits()
      Description copied from interface: ComprehensiveIdentification
      Returns the traits map for this entity.
      Specified by:
      getTraits in interface Commented
      Specified by:
      getTraits in interface ComprehensiveIdentification
      Returns:
      the traits map
    • getConcepts

      public Set<Concept> getConcepts()
      Returns an unmodifiable set of direct concepts in this model.
      Returns:
      set of concepts
    • addConcept

      public void addConcept(Concept concept)
      Adds a concept to the model.
      Parameters:
      concept - the concept to add
      Throws:
      NullPointerException - if concept is null
    • removeConcept

      public void removeConcept(Concept concept)
      Removes a concept from the model.
      Parameters:
      concept - the concept to remove
    • getAllConcepts

      public Set<Concept> getAllConcepts()
      Retrieves all unique concepts, including those related to the direct concepts in this model, through recursive traversal.
      Returns:
      a comprehensive set of all concepts in the logical graph
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object