Interface RelationSymbol
- All Superinterfaces:
Symbol
- All Known Implementing Classes:
DatabaseRelationSymbol,InlineRelationSymbol,QueryRelationSymbol,SourceRelationSymbol,SystemRelationSymbol
public sealed interface RelationSymbol
extends Symbol
permits DatabaseRelationSymbol, InlineRelationSymbol, QueryRelationSymbol, SourceRelationSymbol, SystemRelationSymbol
Sealed sub-interface of
Symbol for all relation-typed symbols.
A relation symbol describes a named entity that, when evaluated, produces
a set (or bag) of tuples conforming to the associated Schema.
Five concrete kinds exist:
DatabaseRelationSymbol— backed by an external JDBC store.InlineRelationSymbol— rows declared inline in source.QueryRelationSymbol— defined by a relational algebra expression.SourceRelationSymbol— backed by an external HTTP, CSV, or other transport; the full source configuration lives in the semantic model.SystemRelationSymbol— a read-only engine-computed catalog relation in the reservedrelix.*namespace.
- See Also:
-
Method Summary
Methods inherited from interface com.darkcollective.relix.symbol.Symbol
canonicalName, declaredName, namespace, provenance, shadowPolicy
-
Method Details
-
schema
Schema schema()The structural description of this relation's columns.- Returns:
- the schema; never null
-