Author
Dorian Taylor
Created
September 6, 2023
Updated
October 9, 2023
October 29, 2023
November 18, 2023
Namespace URI
https://vocab.methodandstructure.com/intertwingler#
Preferred Namespace Prefix
itcv

This document specifies the on-line configuration vocabulary for Intertwingler, a dense hypermedia engine.

This ontology works in conjunction with the Transformation Functions Ontology to organize handlers and transforms for Intertwingler.

Classes

Handler

An itcv:Handler is the basic unit of functionality in Intertwingler. Handlers are microservices that serve one or more URIs via one or more HTTP request methods.

Subclass of:
tfo:Bundle
Properties:
itcv:queue
itcv:response-queue

Back to Top

Engine

An itcv:Engine is the (as in the only one per instance) specialized itcv:Handler that is responsible for marshalling all other handlers and transforms.

Subclass of:
itcv:Handler
Properties:
itcv:resolver
itcv:handler
itcv:handler-list
itcv:request-queue

Back to Top

Transform

An itcv:Transform is a special-purpose itcv:Handler that encapsulates a set of actual transformation functions, identified by their URIs, that interact via HTTP POST.

Subclass of:
itcv:Handler
See also:
tfo:Transform

Back to Top

HandlerList

An itcv:HandlerList is a list of handlers and only handlers.

Subclass of:
rdf:List
Property restrictions:
rdf:firstitcv:Handler
rdf:rest (itcv:HandlerList {rdf:nil})

Back to Top

Resolver

An itcv:Engine has an itcv:Resolver for each website under its management. Resolvers map the dereferenceable—yet perishable—Web addresses to more durable identifiers like UUIDs and cryptographic hashes, as well as determine how to treat certain classes of resource, i.e., whether sovereign document or fragment thereof.

Properties:
itcv:manages
itcv:prefix
itcv:document
itcv:fragment

Back to Top

FragmentList

An itcv:FragmentList is a list of fragments and only fragments.

Subclass of:
rdf:List
Property restrictions:
rdf:rest (itcv:FragmentList {rdf:nil})

Back to Top

FragmentSpecifier

A fragment specifier tells a resolver to treat a particular class of resource as a document fragment, rather than a full document, as well how to relate said fragment to a host document.

Properties:
itcv:fragment-class
itcv:host-class
itcv:except-class
itcv:via
itcv:supersedes

Back to Top

Properties

Describing Resolvers

At the core of the Intertwingler engine is at least one resolver that maps HTTP(S) URIs to more durable underlying identifiers. The resolver also manages prefix mappings for namespaces, as well as a mapping of RDF classes to entire documents versus fragment identifiers.

resolver

This property maps the itcv:Engine to an itcv:Resolver.

Domain:
itcv:Engine
Domain:
itcv:Resolver

Back to Top

manages

Denotes the base URI under management from this resolver.

Domain:
itcv:Resolver

Back to Top

alias

Denotes, ultimately, an HTTP Host: header that is an acceptable substitute for the authority under management.

Domain:
itcv:Resolver

Back to Top

prefix

This is a prefix declaration borrowed from SHACL.

Domain:
itcv:Resolver
Range:
sh:PrefixDeclaration

Back to Top

vocab

Defines the null prefix vocabulary, e.g. for use with RDFa.

Domain:
itcv:Resolver
Range:
xsd:anyURI

Back to Top

document

Denotes a class which is always to be treated as a stand-alone document.

Domain:
itcv:Resolver
Range:
rdfs:Class

Back to Top

fragment-spec

Denotes an itcv:FragmentSpecifier that describes how a given class is to be treated as a fragment of another document.

Domain:
itcv:Resolver
Range:
itcv:FragmentSpecifier

Back to Top

fragment-list

Denotes an ordered list of itcv:FragmentSpecifiers that describes how a given class is to be treated as a fragment of another document.

Domain:
itcv:Resolver
Range:
itcv:FragmentList

Back to Top

fragment

A target class of an itcv:FragmentSpecifier.

Domain:
itcv:FragmentSpecifier
Range:
rdfs:Class

Back to Top

host

Specifies a class of host document.

Domain:
itcv:FragmentSpecifier
Range:
rdfs:Class

Back to Top

except

Specifies an rdfs:Class, e.g. a subclasswhich is explicitly not a host.

Domain:
itcv:FragmentSpecifier
Range:
rdfs:Class

Back to Top

via

Specifies the relationship between a fragment and its host document.

Domain:
itcv:FragmentSpecifier
See also:
SHACL property paths

Back to Top

supersedes

Identifies a fragment specifier over which the subject is intended to take precedence.

Domain:
itcv:FragmentSpecifier
Range:
itcv:FragmentSpecifier

Back to Top

Specifying Handlers

handler

This property relates a handler to the engine.

Domain:
itcv:Engine
Range:
itcv:Handler

Back to Top

handler-list

This property relates an ordered list of handlers to the engine.

Domain:
itcv:Engine
Range:
itcv:HandlerList

Back to Top

Selecting Transform Queues

queue

This property generically relates a transform queue to a handler without specifying what else to do with it.

Domain:
itcv:Handler
Range:
tfo:Queue

Back to Top

request-queue

The engine, which inherits the relation itcv:queue, also has a queue for request transforms.

Sub-property of:
itcv:queue
Domain:
itcv:Engine
Range:
tfo:Queue

Back to Top

response-queue

This property denotes the entry point for the response transform queue associated with the itcv:Handler. It also specifies the default queue associated with the itcv:Engine.

Sub-property of:
itcv:queue
Domain:
itcv:Handler
Range:
tfo:Queue

Back to Top

References