360 Secure SkillHub
360 安全技能中心

Knowledge Graph - Property Graph Schema Designer

该 Skill 将领域描述、系统文档或关系模型转换为 Neo4j 风格属性图 Schema,输出节点标签、关系类型、属性及其类型、唯一约束与索引建议以及 Cypher 实现模板,并附带命名规范、建模最佳实践和参考文档。

fisa712
fisa712
热度 16.02
最近更新 2026-06-07 17:46:26
分类:开发依赖:内部调用大模型应用场景:代码生成 / 模板

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add property-graph-schema-designer
Metadata
name
property_graph_schema_designer
title
Property Graph Schema Designer (Neo4j Style)
description
Design property graph schemas for knowledge graph systems using Neo4j-style node labels, relationships, and properties based on domain descriptions or developer requirements.
category
graph-modeling
tags
["knowledge-graph","property-graph","neo4j","graph-schema","graph-modeling","cypher","developer-tools"]
version
1.0.0
author
community
license
MIT

Property Graph Schema Designer

Design Neo4j-style property graph schemas from domain descriptions.

This skill translates domain models, requirements, and entity descriptions into structured property graph schemas with node labels, relationships, properties, and constraints.

Quick Start

Use When

  • Designing property graph schemas for Neo4j
  • Converting domain documentation → graph models
  • Creating graph database data models
  • Modeling entities and relationships
  • Bootstrapping graph projects

Inputs

  • Domain descriptions
  • System architecture docs
  • Entity relationship diagrams
  • Relational schemas
  • JSON/API schemas
  • Business rules

Outputs

  • Node labels (e.g., Student, Course)
  • Relationship types (e.g., ENROLLED_IN, TEACHES)
  • Node properties with types
  • Relationship properties
  • Index recommendations
  • Constraint suggestions
  • Cypher implementation templates

Example

Input:

A university has students, professors, courses, and departments.
Students enroll in courses. Professors teach courses.
Departments manage professors and courses.

Output:

Node Labels:
- Student (properties: student_id, name, email, enrollment_year)
- Professor (properties: professor_id, name, research_area)
- Course (properties: course_id, title, credits)
- Department (properties: dept_id, name, budget)

Relationships:
- (Student)-[:ENROLLED_IN {semester}]->(Course)
- (Professor)-[:TEACHES {semester}]->(Course)
- (Department)-[:MANAGES]->(Course)
- (Department)-[:EMPLOYS]->(Professor)

Constraints:
- CREATE CONSTRAINT student_id UNIQUE on Student.student_id
- CREATE CONSTRAINT course_id UNIQUE on Course.course_id
- CREATE INDEX on Professor.name

Execution Steps

  1. Identify Entities – Extract nouns/concepts from domain text
  2. Map to Node Labels – Determine PascalCase labels
  3. Identify Relationships – Extract verbs and connections
  4. Map Relationship Types – Determine SCREAMING_SNAKE_CASE types
  5. Extract Properties – Identify node & relationship attributes
  6. Suggest Constraints – Recommend unique constraints
  7. Suggest Indexes – Recommend indexes for queries
  8. Generate Cypher – Output implementation templates

Schema Components

Node Labels

PascalCase naming
Examples: Student, Professor, Course, Department

Relationship Types

SCREAMING_SNAKE_CASE naming
Directional: A-[TYPE]->B
Examples: ENROLLED_IN, TEACHES, MANAGES

Properties

Node properties: camelCase (student_id, name, email)
Relationship properties: camelCase (semester, grade)
Include types: String, Integer, Date, Float

Constraints & Indexes

Unique constraints on identifiers
Indexes on frequently queried properties
Recommended indexes for relationships

Recommended Libraries

  • Drivers: neo4j, py2neo
  • Graph modeling: networkx
  • Visualization: pyvis, graphviz
  • Data: pandas

Best Practices

✓ Use clear, consistent naming (PascalCase, SCREAMING_SNAKE_CASE, camelCase)
✓ Avoid redundant relationships
✓ Prefer directional relationships
✓ Use unique constraints on identifiers
✓ Index frequently queried properties
✓ Keep nodes focused, avoid over-nesting
✓ Separate schema concerns from instance data
✓ Plan for query patterns upfront

References

See schema-patterns.md for property graph design patterns and example-schemas.md for domain schema examples.


Version: 1.0.0