Reference

Edge types

knowmind uses a fully RDF/RDFS-grounded schema. Every node and every edge has a defined semantic role — no arbitrary tags, no implicit meanings.

Standards stack

knowmind aligns with established W3C and community vocabularies:foaf:Person,schema:Organization,prov:Activity,bibo:Document,org:Membership,dqv:QualityMeasurement,odrl:Policy,skos:Concept. This lets knowmind data move into other triple stores or semantic search stacks without schema migration.

Each node carries multiple RDF class labels simultaneously — for instance a Person node is at the same time :Person, :foaf_Person, :schema_Person, :prov_Person and :prov_Agent.

IRI namespace

Every resource gets a stable, tenant-prefixed IRI:

https://kg.knowmind.de/t/<tenant-uuid>/<segment>/<slug>

Examples:
https://kg.knowmind.de/t/{tenant}/memory/onboarding-handbook
https://kg.knowmind.de/t/{tenant}/chunk/onboarding-handbook/0003
https://kg.knowmind.de/t/{tenant}/emb/onboarding-handbook/0003
https://kg.knowmind.de/t/{tenant}/person/anna-mueller
https://kg.knowmind.de/t/{tenant}/policy/internal-confidential

The tenant UUID is a required segment — cross-tenant IRIs are not allowed.

Classes

26 core classes, each aligned with W3C standards. You can add your own subclasses with a tag or a type property — knowmind turns them into rdfs:subClassOf relations automatically.

ClassStandard mappingPurpose
Personfoaf:Person, schema:Person, prov:Person, prov:AgentA natural person — user, contact, author.
PseudonymizedPersonPerson + pseudonymisedA pseudonymised person, used when the clear name must not be persisted (GDPR).
Organizationorg:Organization, schema:Organization, prov:AgentCompany, public authority, association, group.
ClientOrganization + client roleAn organisation you have a business relationship with.
SupplierOrganization + supplier roleAn external service provider or supplier.
Roleorg:Role, skos:ConceptA functional role (CTO, project lead, consultant…).
Skillskos:ConceptCapability or competency, attached to a person or role.
ProjectA time-bounded undertaking with clear goals.
Meetingschema:EventMeeting — connects people, projects, documents.
Documentschema:DigitalDocument, bibo:DocumentA knowledge artifact: note, memo, spec, whitepaper.
DocumentVersionbibo:Document, prov:EntityA concrete version of a document — versioned over time.
Contractbibo:LegalDocumentA contract — a specialisation of Document with extra required fields (parties, term).
Chunkprov:EntityContent section of a DocumentVersion — the recall unit.
Embeddingprov:EntityVector representation of a chunk — foundation of semantic recall.
Toolschema:SoftwareApplicationSoftware used as a tool (Claude Code, Cursor, ChatGPT).
Applicationschema:SoftwareApplicationApplication software you use or build yourself.
Productschema:ProductA product in the portfolio — your own or someone else's.
Serviceschema:ServiceA service offered.
DataSourceprov:EntityA data source — mailbox, S3 bucket, API, import path.
PipelineRunprov:ActivityA pipeline run (import, embedding, migration) — provenance-relevant.
QualityMetricdqv:MetricA quality metric (e.g. Recall@5).
QualityMeasurementdqv:QualityMeasurementA single measurement of a QualityMetric with value and timestamp.
AccessPolicyodrl:PolicyAccess policy (public, internal, internal-confidential, restricted).
ConsentRecordPrivacy consent — who consented to what, when.
TombstoneMarker for deleted content — GDPR-driven but provenance-preserving.
DeletionEventprov:ActivityThe deletion event itself — who, when, why.

Edge types

knowmind defines 21 semantically typed edge classes. Each has a defined domain, a range, and — when bidirectional — an automatically materialised inverse edge. When you create a forward edge, the inverse appears instantly with the same tenant ID.

RelationFromToInverseSemantics
HAS_EMPLOYEEOrganizationPersonIS_EMPLOYEE_OFThe person is employed by the organisation.
IS_LED_BYOrganizationPersonLEADS_ORGANIZATIONThe person leads the organisation.
OWNSPerson | OrganizationTool | Product | DataSourceOWNED_BYOwnership relation.
HAS_SKILLPerson | RoleSkillThe skill is assigned to the person or role.
WORKS_ONPerson | RoleProjectParticipation in a project.
FOR_CLIENTProject | DocumentClientThe project or document belongs to a client mandate.
HAS_VERSIONDocumentDocumentVersionIS_VERSION_OFDocument has this version.
HAS_CHUNKDocumentVersionChunkCHUNK_OFDocumentVersion is split into this chunk.
HAS_EMBEDDINGChunkEmbeddingEMBEDDING_OFChunk has this embedding.
INDEXED_INEmbeddingVectorIndexEmbedding lives in this ANN index.
REFERENCES_ENTITYDocument | ChunkPerson | Organization | Project | Product …REFERENCED_BYContent reference — this person or thing is mentioned in the document.
PRODUCESTool | ServiceDocument | ProductPRODUCED_BYOutput of an activity.
DEPENDS_ON**ENABLESDependency — A only works if B exists.
APPLIES_TOQualityMeasurement | AccessPolicy*HAS_RULERule or measurement applies to the target resource.
REFERENCESDocumentDocumentREFERENCED_BYDocument cites or references another document.
SUPERSEDESDocument | DocumentVersionDocument | DocumentVersionSUPERSEDED_BYA newer version replaces an older one.
WAS_GENERATED_BY*PipelineRun | DeletionEventGENERATEDPROV-O — this resource was produced by a run.
USEDPipelineRun*USED_BYPROV-O — the run consumed this resource.
WAS_DERIVED_FROM**DERIVATION_TARGET_OFPROV-O — content is derived from another piece of content.
WAS_ASSOCIATED_WITHPipelineRun | DeletionEventPerson | ToolPROV-O — the agent that triggered the run.
MEASURED_METRICQualityMeasurementQualityMetricDQV — this measurement belongs to that metric.

How to maintain relations

Three ways to create an edge:

  1. Implicit on save — if a memory contains tags such as @project-helios or [[ada-lovelace]], knowmind creates a REFERENCES_ENTITY edge automatically.
  2. Via the API — POST /api/graph/relations with { fromId, toId, relType, properties }. The typed edge is created, the inverse edge appears automatically.
  3. In the dashboard — every memory detail page has a "Relations" area where you pick one of the 21 edge types and choose the target resource.

Validation: SHACL constraints enforce domain and range. On violation the edge is rejected with a clear error message — no broken relations in the graph.

Example — consulting mandate

(Anna Müller :Person)
    -[:HAS_SKILL]-> (AI strategy :Skill)
    -[:IS_EMPLOYEE_OF]-> (Acme Consulting :Organization)
    -[:WORKS_ON]-> (Project Helios :Project)
                    -[:FOR_CLIENT]-> (Müller Maschinenbau :Client)
                    -[:HAS_DOCUMENT]-> (Workshop memo 2026-03-12 :Document)
                                        -[:HAS_VERSION]-> (Workshop memo v1 :DocumentVersion)
                                                            -[:HAS_CHUNK]-> (Chunk 0001 :Chunk)
                                                                              -[:HAS_EMBEDDING]-> (Embedding :Embedding)
                                                                                                    -[:INDEXED_IN]-> (sc-internal-idx :VectorIndex)
                    -[:GOVERNED_BY]-> (internal-confidential :AccessPolicy)

Related: Recall pipeline · REST interface · Deutsche Version