public function getChildrenId($includeSelf = true, $all = true)
    {
        $cacheKey = [
            'class' => self::className(),
            'ownerClass' => $this->ownerClassName,
            'method' => 'getChildrenId',
            'id' => $this->owner->{$this->primaryKey},
            'all' => $all,
        ];
        $ids = $this->cache->getOrSet($cacheKey, function() use ( $all ) {
            return self::getChildrenIdRec($this->owner->{$this->primaryKey}, $this->ownerClassName, $this->primaryKey, $this->parentIdField, $all);
        }, null, $this->getTagDependency());
        if ( $includeSelf ) {
            return array_merge([ $this->owner->{$this->primaryKey} ], $ids);
        } else {
            return $ids;
        }
    }