Я на самом деле сделал это в Java. Я просто использовал SAX API для чтения файлов RDF. Это было довольно просто. В моем случае я хотел вытащить каждый URL, который был в теме с "Weblogs" в названии темы.
В основном то, что было реализовано org.xml.sax.helpers.DefaultHandler
Затем для настройки кода вы делаете:
InputSource is = new InputSource(new FileInputStream("filename.rdf"));
XMLReader r = XMLReaderFactory.createXMLReader();
r.setContentHandler(new MyHandlerClass());
r.parse(is);
и это почти всё. В моем классе обработчика я должен был реализовать:
startElement(String uri, String localName, String qName, Attributes attributes)
тогда у меня был оператор if, чтобы увидеть, был ли это тег «ExternalPage», и в этом случае я перешел в другое состояние, чтобы найти «topic», «Title» и «Description». У меня был другой
characters(char[] ch, int start, int length)
где я читаю в теме, заголовке и тексте описания в зависимости от того, какой из них был последний раз отправлен на startElement
endElement(String uri, String localName, String qName)
где я проверил, какой элемент заканчивается, и если это ExternalPage, то это означает конец текущего элемента.
Всего было 80-90 строк кода для базового разбора. Так легко написать. Он мог прожевать мультигигабайтные файлы в ... Не помню, может быть, минуту или две? Если вы просто хотите запросить некоторые конкретные данные, может быть проще написать код для этого в вашем обработчике, а не пытаться загрузить его в БД.
Если вы найдете инструмент, который работает хорошо, это, очевидно, лучше, чем писать собственный код. Но написание собственного кода не сложно! RDF - это просто формат XML, и он не является вложенным или чем-то еще. Простой SAX-парсер легко выполним за день или около того.