Будучи новичком в прологе, я читаю существующий код (а также пытаюсь написать некоторый код). Имея некоторый опыт работы в semweb, я начал играть с ним и увидел что-то, что меня смущает. Пример утверждения:
?- rdf_assert(ex:bob, rdf:type, foaf:'Person').
Я также нашел следующее в документации:
Remember: Internally, all resources are atoms. The transformations
above are realised at compile-time using rules for goal_expansion/2
provided by the rdf_db library
Правильно ли я считаю, что библиотека обрабатывает три URI как атомы? Я думал, что компилятор отнесется к этому как к module_name:predicate
, но, похоже, это не так. Если это правда, не могли бы вы привести простой пример того, как это можно сделать в прологе?
Спасибо