Multiple properties


#1

Hi,
“a concept cannot have multiple properties” is what I get when try to do something like

$grakn has identifier “grakn” isa topic has url “grakn.ai” has category $graph has category $db;

Categories are simple string entities (just description property), same thing like labels.

Any idea how I can model it ?

Thanks


#2

Hi Chris,

What’s the full error message you’re getting?

Looking at your query, have you defined what $graph and $db are elsewhere in the query? If not, that may be the issue.


#3

Hi @felix,

Thanks for the quick reply.
The $graph and $db are declared before that.
"a concept cannot have multiple properties Base Type [ENTITY_TYPE] - Id [V41088] - Label [category] - Abstract [false] and Base Type [RELATIONSHIP_TYPE] - Id [V73856] - Label [topicCategory] - Abstract [false] for isa"

is the whole message I’m getting.

I think I can’t use twice the has category in one entity.

Regards,
Chris


#4

It looks like the issue is that you’re saying $graph is both a category (an entity) and a topicCategory (a relationship). An instance can only have one type. Additionally, you can only use has with attributes. You can read here about the differences between these types.


#5

I tried to simplify the example so maybe I brought more confusion.

The problem:

Entity: Topic has name has url has tags (not sure should model the ‘tags’ so as I can M:M for Topic:Tag)
Entity: Tag has value

I want to insert a value: Topic: has name “grakn” has url “grakn.ai” has tag “db” has tag "graph"
but when I see node db, I can see all Topic instances linked to that, so I don’t want tags to be just new string values for each topic, but connections to one tag entity of value “db”