open-standards/eoc/vocab/v1.ttl
Transaction Science 2354fd9a96 vocab v1 across sister standards: arl + openpay + smart-byte + eoc + wai + joule-code (wave-23 #3)
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.
2026-06-02 14:16:58 -04:00

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\")" .