Ontology to describe PAC files and related concepts.

This document is a work in progress

Introduction

"Longer intro text shown in the Introduction section."@en

Namespaces

xsd:http://www.w3.org/2001/XMLSchema#

Version

Version1.0.0
Version IRIhttps://onto.vaimee.com/pac/1.0.0#

Axiomatization

Classes

Aggregator

IRI: https://onto.vaimee.com/pac#Aggregator

A reusable PAC component that reacts to notifications from one subscription query and performs one update.
Sub-class ofPac Component
Enumeration members

Consumer

IRI: https://onto.vaimee.com/pac#Consumer

A reusable PAC component bound to one SPARQL query. The query can be invoked directly or used as a subscription by specialized components.
Sub-class ofPac Component
Enumeration members

Fixed Named Graph

IRI: https://onto.vaimee.com/pac#FixedNamedGraph

A named graph whose URI is fixed in the PAC description.
Sub-class ofNamed Graph
In the domain ofgraph URI

Forced Binding

IRI: https://onto.vaimee.com/pac#ForcedBinding

Represents a forced variable binding used in a SPARQL operation within a PAC.
Sub-class ofSparql Fragment
Super-class ofLiteral Forced Binding
Uri Forced Binding
In the range ofgraph template binding
has binding

Forced Binding Set

IRI: https://onto.vaimee.com/pac#ForcedBindingSet

A set of forced bindings applied together as one runtime execution context for a query or update.
In the domain ofhas binding
In the range ofhas binding set

Historical Graph

IRI: https://onto.vaimee.com/pac#HistoricalGraph

A persisted named graph that can be queried and updated.
Sub-class ofNamed Graph
In the range ofwrites to graph

Instance Named Graph

IRI: https://onto.vaimee.com/pac#InstanceNamedGraph

A named graph whose URI is derived at runtime from an instance identifier or other forced binding.
Sub-class ofNamed Graph
In the domain ofgraph template binding
graph URI template

Literal Forced Binding

IRI: https://onto.vaimee.com/pac#LiteralForcedBinding

A forced binding whose value is a literal.
Sub-class ofForced Binding
In the domain ofdata type
default value

Live Graph

IRI: https://onto.vaimee.com/pac#LiveGraph

A live named graph that can be subscribed to for notifications.
Sub-class ofNamed Graph
In the range ofsubscribes to graph

Multiple Forced Bindings

IRI: https://onto.vaimee.com/pac#MultipleForcedBindings

A collection of binding sets used to execute an update multiple times, replacing the same template variables with different values for each execution.
In the domain ofhas binding set
In the range ofhas multiple forced bindings

Named Graph

IRI: https://onto.vaimee.com/pac#NamedGraph

A SPARQL named graph used by PAC operations. Named graphs can be historical, live, fixed by URI, or resolved from runtime bindings.
Super-class ofFixed Named Graph
Historical Graph
Instance Named Graph
Live Graph
In the range ofreads from graph

Namespace

IRI: https://onto.vaimee.com/pac#Namespace

Represents an RDF namespace. They allow grouping related terms (classes and properties) under a common base URI.
In the domain ofprefix
In the range ofhas namespace

Operation

IRI: https://onto.vaimee.com/pac#Operation

An abstract superclass representing any operation described in a PAC.
Super-class ofRule
Sparql Operation
In the domain ofhas forced binding
is operation of
reads from graph
sparql
uses snippet
uses template
In the range ofincludes operation

Pac

IRI: https://onto.vaimee.com/pac#Pac

Defines a PAC (JSON SPARQL Application Profile). PAC describes an application based on the SPARQL Event Processing Architecture (SEPA) and following the application design pattern named PAC (Producer-Aggregator-Consumer).
In the domain ofhas component
has namespace
includes operation
In the range ofis operation of

Pac Component

IRI: https://onto.vaimee.com/pac#PacComponent

A component in a PAC application following the PAC (Producer-Aggregator-Consumer) architectural pattern.
Super-class ofAggregator
Consumer
Producer
In the domain ofperforms query
performs subscription
performs update
In the range ofhas component

Producer

IRI: https://onto.vaimee.com/pac#Producer

A reusable PAC component bound to one SPARQL update.
Sub-class ofPac Component
Enumeration members

Query

IRI: https://onto.vaimee.com/pac#Query

A SPARQL operation that retrieves information from a knowledge base without modifying it. Examples include SELECT, ASK, and CONSTRUCT queries.
Sub-class ofSparql Operation
In the domain ofsubscribes to graph
In the range ofperforms query
performs subscription

Rule

IRI: https://onto.vaimee.com/pac#Rule

A general-purpose rule defined within a PAC configuration. A rule can express declarative logic or behavior that triggers specific operations (e.g., updates) under certain conditions.
Sub-class ofOperation

Snippet

IRI: https://onto.vaimee.com/pac#Snippet

Represents a reusable SPARQL code fragment that can be included in one or more operations.
Sub-class ofSparql Fragment
In the domain ofsnippet body
In the range ofuses snippet

Sparql Fragment

IRI: https://onto.vaimee.com/pac#SparqlFragment

Defines a fragment of SPARQL that can be inserted into queries or updates, typically through variable substitution or templating mechanisms.
Super-class ofForced Binding
Snippet
Template

Sparql Operation

IRI: https://onto.vaimee.com/pac#SparqlOperation

Abstract superclass for SPARQL-based operations. It encompasses both queries and updates that interact with the RDF knowledge base using SPARQL 1.1 syntax.
Sub-class ofOperation
Super-class ofQuery
Update

Template

IRI: https://onto.vaimee.com/pac#Template

Reusable SPARQL query or update text containing variables that can be replaced by forced bindings at runtime.
Sub-class ofSparql Fragment
In the domain oftemplate body
In the range ofuses template

Update

IRI: https://onto.vaimee.com/pac#Update

A SPARQL operation that modifies the knowledge base by inserting, deleting, or updating triples. Examples include INSERT DATA, DELETE DATA, and DELETE/INSERT operations.
Sub-class ofSparql Operation
In the domain ofhas multiple forced bindings
writes to graph
In the range ofperforms update

Uri Forced Binding

IRI: https://onto.vaimee.com/pac#UriForcedBinding

A forced binding whose value is a URI.
Sub-class ofForced Binding
In the domain ofdefault value

Object Properties

data type

IRI: https://onto.vaimee.com/pac#dataType

Domain includesLiteral Forced Binding
Range includesData Type

graph template binding

IRI: https://onto.vaimee.com/pac#graphTemplateBinding

Associates an instance-scoped graph URI template with the forced binding used to resolve the graph URI at runtime.
Domain includesInstance Named Graph
Range includesForced Binding

has binding

IRI: https://onto.vaimee.com/pac#hasBinding

Associates one runtime binding set with the forced bindings that are applied together during one operation execution.
Domain includesForced Binding Set
Range includesForced Binding

has binding set

IRI: https://onto.vaimee.com/pac#hasBindingSet

Associates multiple forced bindings with the binding sets used to execute the same update repeatedly with different values.
Domain includesMultiple Forced Bindings
Range includesForced Binding Set

has component

IRI: https://onto.vaimee.com/pac#hasComponent

Inferred link: a PAC is associated with a PAC component if the component uses an operation defined within the PAC.
Domain includesPac
Range includesPac Component

has forced binding

IRI: https://onto.vaimee.com/pac#hasForcedBinding

Domain includesOperation
Range includesAggregator Consumer Data Type Fixed Named Graph Forced Binding Forced Binding Set Historical Graph Instance Named Graph Literal Forced Binding Live Graph Multiple Forced Bindings Named Graph Namespace Operation Pac Pac Component Producer Query Rule Snippet Sparql Fragment Sparql Operation Template Update Uri Forced Binding data type default value graph template binding graph URI graph URI template has binding has binding set has component has forced binding has multiple forced bindings has namespace includes operation is operation of performs query performs subscription performs update prefix reads from graph snippet body sparql subscribes to graph template body uses snippet uses template variable name writes to graph

has multiple forced bindings

IRI: https://onto.vaimee.com/pac#hasMultipleForcedBindings

Associates an update with the grouped forced bindings used to execute the update multiple times, producing many triples from the same template.
Domain includesUpdate
Range includesMultiple Forced Bindings

has namespace

IRI: https://onto.vaimee.com/pac#hasNamespace

Links a PAC instance to a RDF namespace.
Domain includesPac
Range includesNamespace

includes operation

IRI: https://onto.vaimee.com/pac#includesOperation

Associates a PAC with the operations it contains,
Domain includesPac
Range includesOperation

is operation of

IRI: https://onto.vaimee.com/pac#isOperationOf

Indicates that a given operation is used from a PAC.
Domain includesOperation
Range includesPac

performs query

IRI: https://onto.vaimee.com/pac#performsQuery

Declares the unique SPARQL query operation implemented by a PAC component. The query can be invoked directly or used as the query behind a subscription.
Domain includesPac Component
Range includesQuery

performs subscription

IRI: https://onto.vaimee.com/pac#performsSubscription

Declares the unique SPARQL query used by a PAC component as a subscription to continuously monitor changes in the knowledge graph. It is typically used to trigger reactive behavior.
Domain includesPac Component
Range includesQuery

performs update

IRI: https://onto.vaimee.com/pac#performsUpdate

Declares that the PAC component performs a SPARQL update operation that modifies the knowledge graph (e.g., INSERT, DELETE). Each component can make at most one update.
Domain includesPac Component
Range includesUpdate

reads from graph

IRI: https://onto.vaimee.com/pac#readsFromGraph

Declares a named graph from which a query or update reads data. Reads can target either historical graphs or live graphs.
Domain includesOperation
Range includesNamed Graph

subscribes to graph

IRI: https://onto.vaimee.com/pac#subscribesToGraph

Declares a live named graph monitored by a subscription query.
Domain includesQuery
Range includesLive Graph

uses snippet

IRI: https://onto.vaimee.com/pac#usesSnippet

Indicates that the operation reuses a predefined SPARQL snippet.
Domain includesOperation
Range includesSnippet

uses template

IRI: https://onto.vaimee.com/pac#usesTemplate

Associates an operation with the SPARQL template from which its executable query or update is generated.
Domain includesOperation
Range includesTemplate

writes to graph

IRI: https://onto.vaimee.com/pac#writesToGraph

Declares a historical named graph written by an update.
Domain includesUpdate
Range includesHistorical Graph

Datatype Properties

default value

IRI: https://onto.vaimee.com/pac#defaultValue

The value assigned to the variable in the binding.
Domain includesLiteral Forced Binding
Uri Forced Binding
Range includes

graph URI

IRI: https://onto.vaimee.com/pac#graphUri

The fixed URI of a named graph.
Domain includesFixed Named Graph
Range includesxsd:anyURI

graph URI template

IRI: https://onto.vaimee.com/pac#graphUriTemplate

Template used to derive a named graph URI from one or more runtime bindings.
Domain includesInstance Named Graph
Range includesxsd:string

prefix

IRI: https://onto.vaimee.com/pac#prefix

Represents the shorthand prefix used for the namespace (e.g., 'rdf', 'schema').
Domain includesNamespace
Range includesxsd:string

snippet body

IRI: https://onto.vaimee.com/pac#snippetBody

The SPARQL code fragment that can be reused in operations.
Domain includesSnippet
Range includesxsd:string

sparql

IRI: https://onto.vaimee.com/pac#sparql

The SPARQL query or update string.
Domain includesOperation
Range includesxsd:string

template body

IRI: https://onto.vaimee.com/pac#templateBody

The SPARQL text of a reusable query or update template before forced bindings are applied.
Domain includesTemplate
Range includesxsd:string

variable name

IRI: https://onto.vaimee.com/pac#variableName

The name of the variable being bound.
Domain includesAggregator Consumer Data Type Fixed Named Graph Forced Binding Forced Binding Set Historical Graph Instance Named Graph Literal Forced Binding Live Graph Multiple Forced Bindings Named Graph Namespace Operation Pac Pac Component Producer Query Rule Snippet Sparql Fragment Sparql Operation Template Update Uri Forced Binding data type default value graph template binding graph URI graph URI template has binding has binding set has component has forced binding has multiple forced bindings has namespace includes operation is operation of performs query performs subscription performs update prefix reads from graph snippet body sparql subscribes to graph template body uses snippet uses template variable name writes to graph
Range includesxsd:string

Named Individuals