My problem is exactly the same as you can read in this thread: stackoverflow thread
But there is a small difference. I try to explain it using the above thread's image.
The CS relationship contains C
type objects as it is described, but also contains E
type objects too, because the E
type objects are derived from the C
type object.
On thread's image the E
type object is not present and this is the difference. The E
type property also has a CS
relationship.
The problem comes when I try to reach the E
type object's CS
property using the following query: SUBQUERY(bs, $x, ANY $x.cs.cs ....
The query is not finished, but the important code is there. As I observed, the predicate creation fails, because it tries to use the CS
relationship on the C
type object. I've tried to use the CAST
operator on the $x.cs
variable without success.
Do anybody has a clue for this?
Edit: Added image
The values
of the MKMultiAttribute
entity can contain MKAttribute
and MKMultiAttribute
types. And this is the problem, because the values
is set to be a relationship to MKAttribute
, but, because MKMultiAttribute
is derived from MKAttribute
the values
can contain MKMultiAttribute
entities and currently I can't call the values
again.