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]>
102 lines
9.6 KiB
Turtle
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" .
|