首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何构建特定于域的查询语言?

如何构建特定于域的查询语言?
EN

Stack Overflow用户
提问于 2009-11-17 23:58:41
回答 4查看 6.1K关注 0票数 11

我有一个生物学数据库,我想查询一下。还有一个给定的术语库,我可以访问它,它有可形式化的谓词。我想使用上面提到的谓词为这个DB构建一个查询语言。你会怎么做?我的解决办法如下:

  1. 将谓词形式化
  2. 转换成查询语言(sql,sparql,依赖)
  3. 使用ANTLR或其他此类工具构建特定语言
  4. 翻译从3到2。

这是一个有效的方法吗?有更好的吗?任何指示都将不胜感激。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-11-18 00:29:45

使用BNF来抢先一步进入语言semantics..GoldParser将通过使用语义和语法(这里的链接:http://www.devincook.com/)来帮助您。一旦理清了BNF语义,就可以根据输入建立动作,例如,一个bnf语法部分,处理提取肢体遗传组成分类的组合(我不知道这是否存在,这里有抽象的例子,但您得到了要点)来进行一个特定的查询.‘获取肢体上的统计信息,其中肢体是腿’,然后在幕后您将从一个预定义的表中对列别名或名称发出SQL选择.我的做法可能错了..。希望能帮上忙?

票数 4
EN

Stack Overflow用户

发布于 2009-11-18 01:49:47

看看布尔阿诺

票数 5
EN

Stack Overflow用户

发布于 2010-01-11 19:42:36

我建议您看看i2b2框架,它是一个用于病人数据库的图形查询语言和查询引擎平台。

首先可能很难理解,但请看一下CRC单元格或webservice,您将看到它们是如何以有趣的方式从临床图形查询语言中实现SQL生成的(尽管,性能不太友好:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1752732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档