public static function createByComposedUUID(string $composedUUID): self
    {
        $parts = explode('~', $composedUUID);
        if (2 !== count($parts)) {
            throw InvalidFormatException::composedItemUUIDNotValid($composedUUID);
        }

        return new self($parts[0], $parts[1]);
    }