Giter Club home page Giter Club logo

Comments (2)

BQXBQX avatar BQXBQX commented on June 7, 2024 1

Description:

I think this issue is very challenging, and I would like to participate in the solution. I would like to use the npm package reactflow to achieve this task. At the same time, for the conversion of Cypher statements, I found that the Neo4j official website provides an npm package @neo4j/cypher-builder, which is still in a state of maintenance. I want to use this package to achieve the conversion of Cypher statements. I am also trying to implement a demo to solve this issue, and the link to my demo is: https://github.com/BQXBQX/Demo_for_GraphPattenQuery

Proposed Solution:

  • Use ReactFlow: Leverage the reactflow npm package to create the visual graph representation and handle the user interaction with the graph.
  • Utilize Neo4j's Cypher Builder: Use the @neo4j/cypher-builder npm package to convert the user's input into Cypher statements, which can then be executed against the Neo4j database.
  • Integrate the Components: Combine the ReactFlow and Cypher Builder components to create a seamless user experience, where the user can interact with the graph, and the corresponding Cypher statements are generated and executed.

from graphscope.

pomelo-nwu avatar pomelo-nwu commented on June 7, 2024

基于用户交互的图模式查询工具

项目描述:

随着图查询语言 GQL 标准的发布,标志着图技术的发展已进入成熟阶段。虽然开发者的研发标准确定了,但是对于普通用户而言,学习,理解,编写 GQL 语句依然是一个很高的门槛。
本项目旨在开发一套基于用户交互的图模式查询工具,通过手绘,拖拽,编辑等直观的可视化操作,让用户定义符合业务语义的查询模式,过滤条件。系统实时将其转化为对应的标准查询语言,实现用户意图与数据库查询之间的无缝对接,极大释放用户自主分析的潜力。

用户场景举例:

用户在界面中拖拽一个圆形节点,将其类型指定为 Person,并在该节点的年龄属性 (age) 上数值分布上,筛选年龄位于 18 至 28 岁之间。当用户点击“查询”按钮时,系统将这些操作转化为对应的 Cypher 查询语句:

MATCH (p:Person) WHERE p.age >= 18 AND p.age <= 28 RETURN p 

项目产出:

  • 为用户提供一套 UI 交互,能够实现用户对于节点,边,属性,路径等图模式意图表达。
  • 根据用户的交互结果,实现对于 Cypher 语句的转化

挑战型目标:

  • 定义一份 JSON 配置文件(简称 GPE ),来实现这种表达,并支持文件的导入与导出功能。
  • GPE 能够支持 Cypher/Gremlin/GQL 等多查询语言的转化
  • 基于 LLM 能力,支持用户上传草稿图进行图模式的转化与查询

难度: 进阶

技能要求:HTML,Javascript,Canvas 等

from graphscope.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.