The Inferal Hypergraphs Ontology defines RDF terms for hypergraphs, vertices, hyperedges, hyperedge membership occurrences, and incidence occurrences. It builds on the Inferal Sets Ontology by treating a hypergraph as a set of hyperedges and each hyperedge as a set-like resource whose incidences connect it to vertices. This enables RDF publishers to describe arbitrary-arity edges while preserving the individual membership occurrences needed for validation and annotation.

This is an unofficial 0.1 Editor's Draft maintained in the Inferal ontology repository.

Feedback should be sent to contact@inferal.com.

This specification defines three conformance classes: hypergraphs data graph, hypergraphs producer, and hypergraphs validator.

A hypergraphs data graph is an RDF graph that uses terms from this specification consistently with the term definitions and validation expectations below.

A hypergraphs producer is software or an authoring process that emits hypergraphs, vertices, hyperedges, and incidence occurrences.

A hypergraphs validator is software that checks incidence completeness, duplicate incidence, and vertex-containment constraints.

Scope and Boundaries

This module is limited to classical hypergraphs whose hyperedges behave as sets of vertices. It does not define ordered tuples, multisets, repeated incidence semantics, paths, weights, or graph algorithms. Applications needing those capabilities SHOULD define extensions and MUST NOT infer an ordering among incidences from RDF serialization order.

Competency Questions

Namespaces

Prefix IRI
hg https://ontology.inferal.com/modules/hypergraphs/
set https://ontology.inferal.com/modules/sets/

The hypergraphs namespace imports the Inferal Sets Ontology [[!INFERAL-SETS]].

Term Index

Term Kind Normative role
hg:Hypergraph Class A graph-like structure with vertices and hyperedges.
hg:Vertex Class A resource available for incidence with hyperedges.
hg:Hyperedge Class A set-like edge resource whose members are vertices.
hg:Incidence Class A specialized membership occurrence connecting one hyperedge to one vertex.
hg:HyperedgeMembership Class A specialized membership occurrence connecting one hypergraph to one contained hyperedge.
hg:hasVertex Object property Connects a hypergraph to a vertex in its vertex set.
hg:vertexInHypergraph Object property Connects a vertex to a hypergraph in which it is available.
hg:hasHyperedge Object property Connects a hypergraph to one of its hyperedges.
hg:hasHyperedgeMembership Object property Connects a hypergraph to a hyperedge membership occurrence.
hg:membershipHypergraph Object property Connects a hyperedge membership occurrence to its hypergraph.
hg:membershipHyperedge Object property Connects a hyperedge membership occurrence to its hyperedge.
hg:edgeInHypergraph Object property Connects a hyperedge to a hypergraph that contains it.
hg:hasIncidence Object property Connects a hyperedge to one of its incidence occurrences.
hg:incidentEdge Object property Connects an incidence occurrence to its hyperedge.
hg:incidentVertex Object property Connects an incidence occurrence to its vertex.

Hypergraph Model

The model distinguishes the hypergraph's vertex universe from the incidence members of any one hyperedge; membership in one does not by itself imply containment in the other. A hg:Hypergraph has a vertex set and a set of hyperedges. The graph-level set of hyperedges is stated with hg:hasHyperedge and backed by hg:HyperedgeMembership occurrences. The vertex universe is stated with hg:hasVertex.

A hg:HyperedgeMembership is a subclass of set:Membership and MUST identify exactly one hg:membershipHypergraph and exactly one hg:membershipHyperedge. A hg:Hyperedge is also a subclass of set:Set. Its member resources are vertices, but membership is represented through explicit hg:Incidence resources. Each incidence is a subclass of set:Membership and MUST identify exactly one hg:incidentEdge and exactly one hg:incidentVertex.

An empty hyperedge is allowed by this module. It has no incidence occurrences. A singleton hyperedge has one incidence occurrence. A k-uniform hyperedge has k incidence occurrences.

Classical hyperedges do not contain duplicate occurrences of the same vertex. If a downstream domain needs repeated vertex occurrences, it should define a multiset, tuple, or pseudograph extension rather than weakening the meaning of hg:Hyperedge.

Containment

If a hypergraph contains a hyperedge, then every vertex incident with that hyperedge MUST be listed as a vertex of the same hypergraph. This rule gives authors a clear vertex universe and prevents edge-local incidence from silently introducing vertices outside the hypergraph.

A conforming producer MUST state the forward containment properties hg:hasHyperedge, hg:hasHyperedgeMembership, and hg:hasIncidence. The inverse properties hg:edgeInHypergraph and hg:vertexInHypergraph are provided for authoring convenience. When both directions are stated, they MUST agree.

Since hg:membershipHypergraph and hg:membershipHyperedge specialize set:inSet and set:member, the Sets Ontology property chain can derive set:hasMember from hg:HyperedgeMembership occurrences under OWL property-chain reasoning. The same applies to hg:Incidence through hg:incidentEdge and hg:incidentVertex.

This ontology also declares a module-specific property chain: inverse(hg:membershipHypergraph) o hg:membershipHyperedge -> hg:hasHyperedge. hg:HyperedgeMembership declares an OWL key over hg:membershipHypergraph and hg:membershipHyperedge. hg:Incidence is not keyed in OWL, so later tuple, multiset, or pseudograph extensions can distinguish repeated edge/vertex occurrences. SHACL validation remains responsible for reporting duplicate classical incidences in this source profile.

Validation Expectations

A conforming hypergraphs data graph MUST satisfy the following constraints:

These constraints define a source-authoring validation profile. Producers SHOULD validate source graphs before applying OWL inverse-property materialization, or with an entailment regime that does not add derived forward containment links. Conforming source data states hg:hasHyperedge, hg:hasHyperedgeMembership, and hg:hasIncidence explicitly; OWL or SPARQL materialization can run afterward for consumer convenience.

Examples