将node.js连接到virtuoso graph的库?

发布于 2024-11-02 01:39:52 字数 1539 浏览 7 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

云之铃。 2024-11-09 01:39:52

我不知道 Virtuoso 的 Node.js 库,就像 MySQL、Postgres 等库一样。可以使用 Web 服务器通过 HTTP 连接到 Virtuoso 以查询 Quad Store (VSP)SPARQL 端点 或使用我们拥有的驱动程序/提供程序的任何数据访问接口其中包括 ODBC、JDBC、ADO.Net、OLEDBRDF 数据提供商 Jena、Sesame、Redland 等。因此,node.js 是否具有用于通过这些方式连接到服务器的通用库?

I am not aware of node.js library for Virtuoso as you have for MySQL, Postgres and the like. Connections to Virtuoso for querying the Quad Store can be made via HTTP using the Web Server (VSP) or SPARQL endpoint or using any of the Data Access interface we have drivers/providers for which include, ODBC, JDBC, ADO.Net, OLEDB or RDF Data providers Jena, Sesame, Redland and others. Thus does node.js have generic libraries for connection to servers via any of these means ?

眼藏柔 2024-11-09 01:39:52

您可以使用 https://github.com/Tomas2D/virtuoso-connector NPM 库,只需释放。

import { DatabaseConnection } from 'virtuoso-connector'

const db = new DatabaseConnection({
  url: 'jdbc:virtuoso://127.0.0.1:1111/CHARSET=UTF-8',
  username: 'dba',
  password: 'dba',
  driverPath: '/usr/local/vos/lib/jdbc-4.2/virtjdbc4_2.jar',
  lazy: false,
  maxQueryTimeout: 360, // optional (in seconds), 0 = unlimited
  poolSize: 2 // max active connections
})

const results = await db.query(`
  SELECT ?s ?p ?o 
  WHERE { ?s ?p ?o }
  LIMIT 10
`)

results.forEach(result => {
  console.info(result.s, result.p, result.o)
})

// Destroy connection
db.destroy()

另一种方法是使用 Virtuoso SPARQL 端点,您可以在其中发送 HTTP 请求。

PS:我是作者。

You can use https://github.com/Tomas2D/virtuoso-connector NPM library, just released.

import { DatabaseConnection } from 'virtuoso-connector'

const db = new DatabaseConnection({
  url: 'jdbc:virtuoso://127.0.0.1:1111/CHARSET=UTF-8',
  username: 'dba',
  password: 'dba',
  driverPath: '/usr/local/vos/lib/jdbc-4.2/virtjdbc4_2.jar',
  lazy: false,
  maxQueryTimeout: 360, // optional (in seconds), 0 = unlimited
  poolSize: 2 // max active connections
})

const results = await db.query(`
  SELECT ?s ?p ?o 
  WHERE { ?s ?p ?o }
  LIMIT 10
`)

results.forEach(result => {
  console.info(result.s, result.p, result.o)
})

// Destroy connection
db.destroy()

Another approach is to use Virtuoso SPARQL endpoint where you can send HTTP requests.

PS: I am the author.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文