Every root concept should have a list of attributes accessed by "has" property.
Attributes are not only related to instances, it defines what kind of attributes a certain concept can have.
It can be extremely helpful to describe definitions.
Something handy is having some pre-defined attributes.
Every being has an attribute action born and the place can be earth.
[x] Concepts should be moved from the knowledge package, some refactoring is needed.
[x] Transform every class in the being package into attributes
Eg:
Being has name (attribute)
Being has specie (attribute)
Special cases:
Eiffel Tower is located at France // is located = has location equals to
Bat can fly (action) // can = has ability of
Ability should be a list (Think about how to represent it)
Action and Places are concepts
Specialized concepts can override default values.
Eg:
Spider has legs, qty 8
Every root concept should have a list of attributes accessed by "has" property. Attributes are not only related to instances, it defines what kind of attributes a certain concept can have.
It can be extremely helpful to describe definitions.
Something handy is having some pre-defined attributes.
Every being has an attribute action born and the place can be earth.
Eg: Being has name (attribute) Being has specie (attribute)
Special cases: Eiffel Tower is located at France
// is located = has location equals to
Bat can fly (action)
// can = has ability of
Ability should be a list (Think about how to represent it)Action and Places are concepts
Specialized concepts can override default values. Eg: Spider has legs, qty 8