Carries the third-generation-interop pattern shipped at
jouleclaw/vocab/v1 across every TX Science open standard. Every
sister standard now has a stable IRI for every wire field of
every major data type, plus a Turtle ontology covering classes,
enumerations, and properties.
What ships, per standard:
arl/vocab/ Claim, Session, Evaluation, Attestation;
the four axes (Validation Depth 1–9,
Convergence A–E, EnergyProfile, S0–S4);
ARL-S isolation tiers 0–3.
openpay/vocab/ Money, Currency, PaymentMethod, Receipt,
Refund, Dispute; the five rails (FedNow / PIX
/ SEPA Instant / USDC / USDT); the four card
schemes; the seven lifecycle states.
smart-byte/vocab/ Byte, Envelope, Issuer, Holder, KERI AID,
LockstepEvent; the cargo-class taxonomy
(Value / Coding / Identity / Telemetry /
Custom) and the shared HwShunt / ModelBased /
Estimator energy-provenance enum.
eoc/vocab/ Query, Resolution, EOC Receipt, the four
cascade stages (Cache / KeyValue / Graph /
Neural), CarbonRecord, VendorAPI binding.
wai/vocab/ Manifest, Capability, Codec; the two paths
(NeuralPath shared-prior + ZerothPath
registered codec menu); the six modalities;
the nine codecs in the v1 menu.
joule-code/vocab/ README.md complements the LEXICON.md / v1.jsonld
/ v1.ttl already shipped in b838b86.
Every JSON-LD `@context` pairs with a Turtle ontology. Every
ontology subclasses W3C PROV-O where the alignment is exact
(prov:Activity for sessions / resolutions / lockstep events,
prov:Entity for source trees, prov:Agent for issuers / agents).
Pattern is identical to jouleclaw/vocab/v1 so a downstream
consumer that already loads one vocabulary picks up the others
with no new code: same namespace shape, same JSON-LD context
binding, same Turtle conventions.
Standards documents stay unchanged on the wire: vocabularies are
optional additions, not modifications. A receipt or claim that
doesn't carry `@context` deserialises exactly as before; one that
does gains typed RDF semantics for free.
Licences match each standard's spec text — CC-BY-4.0 for ARL,
Smart Byte, EOC, joule-code; Apache-2.0 for OpenPay, WAI.
Deploy follow-up: extending the Caddyfile @-blocks of arl /
openpay / byte / eoc / wai / joulecode sites to serve `.jsonld`
files as `application/ld+json` is a separate small change. Until
then the vocab is reachable via the GitHub raw URL.
51 lines
3.7 KiB
Turtle
51 lines
3.7 KiB
Turtle
@prefix eoc: <https://eoc.transaction.science/vocab/v1#> .
|
|
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
@prefix prov: <http://www.w3.org/ns/prov#> .
|
|
@prefix dc: <http://purl.org/dc/terms/> .
|
|
|
|
<https://eoc.transaction.science/vocab/v1> a owl:Ontology ;
|
|
dc:title "EOC vocabulary (v1)" ;
|
|
dc:description "Stable IRIs for the Energy-Optimised Compute open standard: the four-stage cache→key-value→graph→neural pipeline, joule + carbon accounting, and the cross-vendor metering surface." ;
|
|
dc:license <https://creativecommons.org/licenses/by/4.0/> ;
|
|
owl:versionInfo "1" .
|
|
|
|
# ─── Top-level classes ───────────────────────────────────────────────
|
|
|
|
eoc:Query a owl:Class ; rdfs:label "EOC query" .
|
|
eoc:Resolution a owl:Class ; rdfs:label "Resolution outcome" ; rdfs:subClassOf prov:Activity .
|
|
eoc:Receipt a owl:Class ; rdfs:label "EOC receipt" .
|
|
eoc:CarbonRecord a owl:Class ; rdfs:label "Carbon-emission record" .
|
|
eoc:VendorAPI a owl:Class ; rdfs:label "Vendor API binding" .
|
|
|
|
# ─── Cascade stages ──────────────────────────────────────────────────
|
|
|
|
eoc:Stage a owl:Class ; rdfs:label "Cascade stage" .
|
|
eoc:Cache a eoc:Stage ; rdfs:label "Cache stage" .
|
|
eoc:KeyValue a eoc:Stage ; rdfs:label "Key-value stage" .
|
|
eoc:Graph a eoc:Stage ; rdfs:label "Graph stage" .
|
|
eoc:Neural a eoc:Stage ; rdfs:label "Neural stage (last resort)" .
|
|
|
|
# ─── Energy provenance ───────────────────────────────────────────────
|
|
|
|
eoc:Provenance a owl:Class ; rdfs:label "Energy provenance" .
|
|
eoc:HwShunt a eoc:Provenance ; rdfs:label "Hardware shunt" .
|
|
eoc:ModelBased a eoc:Provenance ; rdfs:label "Model-based estimate" .
|
|
eoc:Estimator a eoc:Provenance ; rdfs:label "Estimator" .
|
|
|
|
# ─── Properties ──────────────────────────────────────────────────────
|
|
|
|
eoc:stageClosed a owl:ObjectProperty ; rdfs:domain eoc:Resolution ; rdfs:range eoc:Stage ; rdfs:label "Stage that closed the query" .
|
|
eoc:joulesMicrojoules a owl:DatatypeProperty ; rdfs:range xsd:nonNegativeInteger ; rdfs:label "Energy (microjoules)" .
|
|
eoc:energyProvenance a owl:ObjectProperty ; rdfs:range eoc:Provenance ; rdfs:label "Energy provenance" .
|
|
eoc:carbonGrams a owl:DatatypeProperty ; rdfs:domain eoc:CarbonRecord ; rdfs:range xsd:double ; rdfs:label "Carbon emitted (grams CO2e)" .
|
|
eoc:embeddingId a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Embedding identifier" .
|
|
eoc:vendorId a owl:DatatypeProperty ; rdfs:domain eoc:VendorAPI ; rdfs:range xsd:string ; rdfs:label "Vendor id" .
|
|
eoc:modelId a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Model id" .
|
|
eoc:queryText a owl:DatatypeProperty ; rdfs:domain eoc:Query ; rdfs:range xsd:string ; rdfs:label "Query text" .
|
|
eoc:inputHash a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Input hash (BLAKE3 hex)" .
|
|
eoc:outputHash a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Output hash (BLAKE3 hex)" .
|
|
eoc:closedAt a owl:DatatypeProperty ; rdfs:range xsd:dateTime ; rdfs:label "Closed at (RFC 3339)" .
|
|
eoc:schemaId a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "Schema id (e.g. \"eoc/1\")" .
|