open-standards/aac/vocab/v1.ttl
Transaction Science ba1212361f Add aac, map, sandbox standards; catalog the standards family
Commit the previously-untracked standard directories and catalog them in the
root README alongside proof:

- aac/    — communication cargo class: portable boards + a ten-level
            offline-first cascade (Apache-2.0 code / CC-BY-4.0 spec).
- map/    — geospatial cargo class: range-requestable signed tilesets +
            an F0–F4 fidelity cascade (Apache-2.0 code / CC-BY-4.0 spec).
- sandbox/— isolated, metered, attested execution across the heterogeneous
            compute fabric (Apache-2.0 code / CC-BY-4.0 spec).
- jouleclaw-otel-authz, jouleclaw-trust — new jouleclaw reference crates.

Root README now lists aac, map, sandbox, and proof in the catalog, the tree,
and the contribution guide.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-07 17:04:36 -04:00

102 lines
9.6 KiB
Turtle

@prefix aac: <https://aac.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://aac.transaction.science/vocab/v1> a owl:Ontology ;
dc:title "AAC vocabulary (v1)" ;
dc:description "Stable IRIs for the AAC open standard — the communication cargo class of the Transaction Science substrate. Defines the portable communication board and its cells, the immutable position (motor stability), symbol references, the access-method model (touch, switch scanning, dwell/eye-gaze, head, joystick, BCI, partial voice), the L0-L9 communication cascade with its offline and free invariants, the interchange format, and the never-billed energy receipt (measured + estimated microjoules with honest provenance)." ;
dc:license <https://creativecommons.org/licenses/by/4.0/> ;
owl:versionInfo "1" .
# ─── Classes ────────────────────────────────────────────────────────
aac:Board a owl:Class ; rdfs:label "Board" ; rdfs:subClassOf prov:Entity ;
rdfs:comment "A communication surface holding cells; the portable unit a voice travels as." .
aac:Cell a owl:Class ; rdfs:label "Cell" ;
rdfs:comment "A single selectable target at a fixed grid position, with content and an action." .
aac:Symbol a owl:Class ; rdfs:label "Symbol" ;
rdfs:comment "A pictographic word referenced by source and id, not embedded pixels." .
aac:Utterance a owl:Class ; rdfs:label "Utterance" ; rdfs:subClassOf prov:Entity ;
rdfs:comment "What a non-speaking person means to say, composed by selecting cells." .
aac:MotorProfile a owl:Class ; rdfs:label "Motor profile" ;
rdfs:comment "The user's physical capabilities, used to adapt target size and timing." .
aac:Receipt a owl:Class ; rdfs:label "Receipt" ;
rdfs:comment "Per-operation energy record: measured + estimated microjoules with a provenance tag. Transparency only; never billed." .
aac:Cascade a owl:Class ; rdfs:label "Communication cascade" .
aac:Steward a owl:Class ; rdfs:label "Steward" ; rdfs:subClassOf prov:Agent .
# ─── Board types (SPEC §2) ──────────────────────────────────────────
aac:BoardType a owl:Class ; rdfs:label "Board type" .
aac:Grid a aac:BoardType ; rdfs:label "Grid" ; rdfs:comment "Traditional symbol grid." .
aac:VisualScene a aac:BoardType ; rdfs:label "VisualScene" ; rdfs:comment "Photo-based with hotspots, for emerging communicators." .
aac:Keyboard a aac:BoardType ; rdfs:label "Keyboard" ; rdfs:comment "Text input, for literate users." .
aac:Hybrid a aac:BoardType ; rdfs:label "Hybrid" ; rdfs:comment "Mixed symbol + text." .
aac:QuickAccess a aac:BoardType ; rdfs:label "QuickAccess" ; rdfs:comment "High-frequency phrases; the home board." .
# ─── Access methods (SPEC §5) ───────────────────────────────────────
aac:AccessMethod a owl:Class ; rdfs:label "Access method" .
aac:DirectTouch a aac:AccessMethod ; rdfs:label "DirectTouch" ; rdfs:comment "Finger or stylus on the screen. The default." .
aac:EyeGaze a aac:AccessMethod ; rdfs:label "EyeGaze" ; rdfs:comment "Eye-tracking; selection by dwell." .
aac:HeadTracking a aac:AccessMethod ; rdfs:label "HeadTracking" ; rdfs:comment "Head-movement pointer." .
aac:SwitchScan a aac:AccessMethod ; rdfs:label "SwitchScan" ; rdfs:comment "One or more physical switches with scanning." .
aac:Joystick a aac:AccessMethod ; rdfs:label "Joystick" .
aac:Bci a aac:AccessMethod ; rdfs:label "Bci" ; rdfs:comment "Brain-computer interface (emerging)." .
aac:PartialVoice a aac:AccessMethod ; rdfs:label "PartialVoice" ; rdfs:comment "Partial voice input, for users with some speech." .
aac:Pointer a aac:AccessMethod ; rdfs:label "Pointer" ; rdfs:comment "Mouse or trackpad." .
# ─── Cascade levels (SPEC §6) ───────────────────────────────────────
aac:CascadeLevel a owl:Class ; rdfs:label "Cascade level" .
aac:L0_CacheHit a aac:CascadeLevel ; rdfs:label "L0 CacheHit" ; aac:energyUj 1 ; aac:offline true .
aac:L1_SymbolLookup a aac:CascadeLevel ; rdfs:label "L1 SymbolLookup" ; aac:energyUj 10 ; aac:offline true .
aac:L2_LocalPredict a aac:CascadeLevel ; rdfs:label "L2 LocalPredict" ; aac:energyUj 100 ; aac:offline true .
aac:L3_ContextPredict a aac:CascadeLevel ; rdfs:label "L3 ContextPredict" ; aac:energyUj 1000 ; aac:offline false .
aac:L4_SemanticExpand a aac:CascadeLevel ; rdfs:label "L4 SemanticExpand" ; aac:energyUj 10000 ; aac:offline false .
aac:L5_ConversationAi a aac:CascadeLevel ; rdfs:label "L5 ConversationAi" ; aac:energyUj 100000 ; aac:offline false .
aac:L6_GenerativeComm a aac:CascadeLevel ; rdfs:label "L6 GenerativeComm" ; aac:energyUj 1000000 ; aac:offline false .
aac:L7_VoiceClone a aac:CascadeLevel ; rdfs:label "L7 VoiceClone" ; aac:energyUj 5000000 ; aac:offline false .
aac:L8_MultimodalGen a aac:CascadeLevel ; rdfs:label "L8 MultimodalGen" ; aac:energyUj 10000000 ; aac:offline false .
aac:L9_AdaptiveModel a aac:CascadeLevel ; rdfs:label "L9 AdaptiveModel" ; aac:energyUj 15000000 ; aac:offline false .
# ─── Vocabulary level (SPEC §6.2) ───────────────────────────────────
aac:VocabularyLevel a owl:Class ; rdfs:label "Vocabulary level" .
aac:Emergent a aac:VocabularyLevel ; rdfs:label "Emergent" ; rdfs:comment "<50 symbols; visual scenes, single words." .
aac:Transitional a aac:VocabularyLevel ; rdfs:label "Transitional" ; rdfs:comment "50-400 symbols; core word focus." .
aac:Conventional a aac:VocabularyLevel ; rdfs:label "Conventional" ; rdfs:comment "400-5000 symbols; full grammar." .
aac:Literate a aac:VocabularyLevel ; rdfs:label "Literate" ; rdfs:comment "Text-based; keyboard + prediction." .
# ─── Provenance (SPEC §9) ───────────────────────────────────────────
aac:Provenance a owl:Class ; rdfs:label "Energy provenance" .
aac:HwShunt a aac:Provenance ; rdfs:label "HwShunt" ; rdfs:comment "Read from a hardware energy interface; requires a measured figure." .
aac:ModelBased a aac:Provenance ; rdfs:label "ModelBased" ; rdfs:comment "Computed from a calibrated per-operation model." .
aac:Estimator a aac:Provenance ; rdfs:label "Estimator" ; rdfs:comment "Coarse constant estimator; must not carry a measured figure." .
# ─── Properties ─────────────────────────────────────────────────────
aac:boardType a owl:ObjectProperty ; rdfs:domain aac:Board ; rdfs:range aac:BoardType ; rdfs:label "board type" .
aac:rows a owl:DatatypeProperty ; rdfs:domain aac:Board ; rdfs:range xsd:unsignedShort ; rdfs:label "grid rows" .
aac:cols a owl:DatatypeProperty ; rdfs:domain aac:Board ; rdfs:range xsd:unsignedShort ; rdfs:label "grid columns" .
aac:hasCell a owl:ObjectProperty ; rdfs:domain aac:Board ; rdfs:range aac:Cell ; rdfs:label "has cell" .
aac:row a owl:DatatypeProperty ; rdfs:domain aac:Cell ; rdfs:range xsd:unsignedShort ; rdfs:label "cell row (0-indexed, immutable)" .
aac:col a owl:DatatypeProperty ; rdfs:domain aac:Cell ; rdfs:range xsd:unsignedShort ; rdfs:label "cell column (0-indexed, immutable)" .
aac:label a owl:DatatypeProperty ; rdfs:domain aac:Cell ; rdfs:range xsd:string ; rdfs:label "cell text label (survives round-trip)" .
aac:locked a owl:DatatypeProperty ; rdfs:domain aac:Cell ; rdfs:range xsd:boolean ; rdfs:label "cell locked against structural edits" .
aac:frequency a owl:DatatypeProperty ; rdfs:domain aac:Cell ; rdfs:range xsd:unsignedLong ; rdfs:label "usage frequency (weights ranking, never placement)" .
aac:navigatesTo a owl:ObjectProperty ; rdfs:domain aac:Cell ; rdfs:range aac:Board ; rdfs:label "navigation edge (board graph)" .
aac:symbolId a owl:DatatypeProperty ; rdfs:domain aac:Symbol ; rdfs:range xsd:string ; rdfs:label "symbol registry id" .
aac:accessMethod a owl:ObjectProperty ; rdfs:range aac:AccessMethod ; rdfs:label "user access method" .
aac:minTargetMm a owl:DatatypeProperty ; rdfs:domain aac:MotorProfile ; rdfs:range xsd:float ; rdfs:label "minimum comfortable target size (mm)" .
aac:energyUj a owl:DatatypeProperty ; rdfs:domain aac:CascadeLevel ; rdfs:range xsd:unsignedLong ; rdfs:label "estimated energy floor (microjoules)" .
aac:offline a owl:DatatypeProperty ; rdfs:domain aac:CascadeLevel ; rdfs:range xsd:boolean ; rdfs:label "offline-capable (true for exactly L0-L2)" .
aac:level a owl:ObjectProperty ; rdfs:range aac:CascadeLevel ; rdfs:label "resolved cascade level" .
aac:measuredUj a owl:DatatypeProperty ; rdfs:domain aac:Receipt ; rdfs:range xsd:unsignedLong ; rdfs:label "hardware-measured energy (microjoules)" .
aac:estimatedUj a owl:DatatypeProperty ; rdfs:domain aac:Receipt ; rdfs:range xsd:unsignedLong ; rdfs:label "estimated energy (microjoules)" .
aac:provenance a owl:ObjectProperty ; rdfs:domain aac:Receipt ; rdfs:range aac:Provenance ; rdfs:label "energy provenance tag" .