Могут ли правила создавать новые экземпляры?
Короткий ответ - нет.Мы требуем, чтобы правила были ограничены по диапазону - их приложение не может создавать никаких отключенных узлов.На практике это означает, что мы требуем, чтобы все переменные заголовка правила были связаны с соответствующим телом правила.
Обратите внимание, что вычет с правилами с ограниченным диапазоном является решаемым.
Длинный ответ заключается в том, что рассуждениеможет работать с виртуальными концепциями, если это необходимо, поэтому во время запроса под капотом могут создаваться реальные новые концепции.Однако они недолговечны и привязаны к конкретной транзакции.
В качестве дополнения к этому Graql монотонен?
Вплоть до последнего выпуска (который на данный момент1.4.3) Graql является монотонным.В следующем выпуске будет введено отрицание шаблона, что в сочетании с правилами делает рассуждение немонотонным.Однако если вы ограничиваете свои правила только положительными, свойство монотонности рассуждения восстанавливается.
Что касается противоречий, мы планируем информировать пользователя о возможных противоречиях во время проверки данных.