Very interesting... my inclination is that you’re probably right. Any tips on how to learn to use Prolog with pulling data from external sources?
You can use ODBC http://www.swi-prolog.org/pldoc/doc_for?object=section(%27pa...
You can use CSV http://www.swi-prolog.org/pldoc/man?section=csv
I've used the above methods.
For RDF, you can load with various methods even over http http://www.swi-prolog.org/pldoc/man?section=rdflib
I suppose one could have a prolog service that came up with suggestions, ordered by preference, and then attempt committing them in order to the actual transactional storage layer. But I don't see how you could avoid re-implementing transactions.
With an rdms you could look for options, and attempt a booking in a transaction, and have a fairly established way to resolve conflicts.