# Libgraph

> libgraph - RDF graph index using N3 library. GraphIndex stores and queries linked data triples. PREFIXES provides standard namespaces (schema, rdf, rdfs, foaf). parseTripleQuery parses subject-predicate-object patterns. serializeShacl generates SHACL constraints. Use for knowledge graphs, semantic queries, and linked data processing.

- Skill: `majiayu000/libgraph` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/libgraph`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/libgraph/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/libgraph

---


# libgraph Skill

## When to Use

- Building and querying knowledge graphs
- Storing RDF triples for semantic data
- Executing subject-predicate-object pattern queries
- Working with linked data and ontologies

## Key Concepts

**GraphIndex**: Storage-backed index for RDF triples with pattern-based
querying.

**PREFIXES**: Standard namespace prefixes for common vocabularies (schema.org,
RDF, RDFS, FOAF).

**Triple patterns**: Query graphs using subject-predicate-object patterns with
wildcards.

## Usage Patterns

### Pattern 1: Query graph triples

```javascript
import { createGraphIndex, PREFIXES } from "@copilot-ld/libgraph";

const index = await createGraphIndex(storage, "knowledge");
const results = await index.query(
  `${PREFIXES.schema}Person`,
  `${PREFIXES.schema}name`,
  "?",
);
```

### Pattern 2: Parse triple query string

```javascript
import { parseTripleQuery } from "@copilot-ld/libgraph";

const { subject, predicate, object } = parseTripleQuery("schema:Person ? ?");
```

## Integration

Used by Graph service for knowledge queries. Processes ontology.ttl files.

