public static function split(string $name): array
    {
        $parts = explode(self::JSON_DELIMITER, $name, 2);
        $jsonPath = count($parts) === 2 ? explode(self::JSON_DELIMITER, end($parts)) : [];

        $relationParts = explode(self::RELATION_DELIMITER, $parts[0]);

        return [
            array_slice($relationParts, 0, -1),
            end($relationParts),
            $jsonPath,
        ];
    }