AllegroGraph RDF Store提供了多个通信通道。我正在为此开发一个Web服务。我有以下问题:
如何在SPARQL端点上实现Web服务?最佳实践是什么?CXF还是Axis?您提供的链接指向AllegroGraph API文档。文档说:
这里描述的协议兼容(是一个超集)芝麻2.0 HTTP协议和W3C SPARQL协议(SPARQL端点)。
我认为你可能想要开发一个位于AllegroGraph和客户端应用程序之间的小库,并"说"这个协议,它似乎是"普通"REST和SPARQL的组合。然后,客户端应用程序可以将参数传递给库,库将它们转换为SPARQL查询或普通REST请求中的参数。对于这些操作,您可以使用本回答中提到的工具之一,或者使用SPARQL API(如Jena ARQ)和通用REST API(如JAX-RS),或者使用项目编程语言中的类似功能。
根据您的项目,您可以将这些功能(SPARQL和REST调用)集成到客户端应用程序中。当然,您可以再次以web服务的形式提供这些服务(例如使用CXF或Axis),但如果您控制了客户端应用程序,那么对于您的项目来说,这可能太过分了。