@agenticprimitives/ontology 1.0.0-alpha.4 → 1.0.0-alpha.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -21
- package/cbox/agent-facet-shapes.shacl.ttl +130 -0
- package/cbox/capability-catalog-shapes.shacl.ttl +284 -0
- package/cbox/card-projection-shapes.shacl.ttl +216 -0
- package/cbox/consultation-shapes.shacl.ttl +85 -0
- package/cbox/content-vocabulary.ttl +52 -0
- package/cbox/controlled-vocabularies.ttl +224 -4
- package/cbox/discovery-graph-shapes.shacl.ttl +284 -0
- package/cbox/familyoffice-shapes.shacl.ttl +92 -0
- package/cbox/familyoffice-vocabulary.ttl +48 -0
- package/cbox/geo-vocabulary.ttl +36 -0
- package/cbox/guidance-vocabulary.ttl +22 -0
- package/cbox/interaction-shapes.shacl.ttl +218 -0
- package/cbox/interaction-vocabulary.ttl +159 -0
- package/cbox/judgment-shapes.shacl.ttl +83 -0
- package/cbox/naming-registry-shapes.shacl.ttl +272 -0
- package/cbox/org-team-shapes.shacl.ttl +184 -0
- package/cbox/privacy-credential-shapes.shacl.ttl +187 -0
- package/cbox/profile-facet-vocabulary.ttl +50 -0
- package/cbox/registry-vocabulary.ttl +86 -0
- package/cbox/run-measures-shapes.shacl.ttl +59 -0
- package/cbox/run-provenance-shapes.shacl.ttl +264 -0
- package/cbox/scope-vocabulary.ttl +112 -0
- package/cbox/skill-grounding-vocabulary.ttl +18 -0
- package/cbox/skill-vocabulary.ttl +50 -0
- package/context.jsonld +37 -1
- package/dist/arg-types.d.ts +60 -0
- package/dist/arg-types.d.ts.map +1 -0
- package/dist/arg-types.js +143 -0
- package/dist/arg-types.js.map +1 -0
- package/dist/artifacts.d.ts +9 -2
- package/dist/artifacts.d.ts.map +1 -1
- package/dist/artifacts.js +153 -2
- package/dist/artifacts.js.map +1 -1
- package/dist/contact-fields.d.ts +28 -0
- package/dist/contact-fields.d.ts.map +1 -0
- package/dist/contact-fields.js +38 -0
- package/dist/contact-fields.js.map +1 -0
- package/dist/decisions.d.ts +69 -0
- package/dist/decisions.d.ts.map +1 -0
- package/dist/decisions.js +98 -0
- package/dist/decisions.js.map +1 -0
- package/dist/evaluation-context.d.ts +134 -0
- package/dist/evaluation-context.d.ts.map +1 -0
- package/dist/evaluation-context.js +136 -0
- package/dist/evaluation-context.js.map +1 -0
- package/dist/governance.d.ts +84 -0
- package/dist/governance.d.ts.map +1 -0
- package/dist/governance.js +88 -0
- package/dist/governance.js.map +1 -0
- package/dist/grounded-vocabulary.d.ts +29 -0
- package/dist/grounded-vocabulary.d.ts.map +1 -0
- package/dist/grounded-vocabulary.js +110 -0
- package/dist/grounded-vocabulary.js.map +1 -0
- package/dist/household.d.ts +19 -0
- package/dist/household.d.ts.map +1 -0
- package/dist/household.js +41 -0
- package/dist/household.js.map +1 -0
- package/dist/index.d.ts +1091 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1323 -5
- package/dist/index.js.map +1 -1
- package/dist/outcomes.d.ts +47 -0
- package/dist/outcomes.d.ts.map +1 -0
- package/dist/outcomes.js +40 -0
- package/dist/outcomes.js.map +1 -0
- package/dist/participant-vocabulary.d.ts +57 -0
- package/dist/participant-vocabulary.d.ts.map +1 -0
- package/dist/participant-vocabulary.js +66 -0
- package/dist/participant-vocabulary.js.map +1 -0
- package/dist/party-roles.d.ts +115 -0
- package/dist/party-roles.d.ts.map +1 -0
- package/dist/party-roles.js +343 -0
- package/dist/party-roles.js.map +1 -0
- package/dist/payload-classes.d.ts +22 -0
- package/dist/payload-classes.d.ts.map +1 -0
- package/dist/payload-classes.js +30 -0
- package/dist/payload-classes.js.map +1 -0
- package/dist/plan-shapes.d.ts +18 -0
- package/dist/plan-shapes.d.ts.map +1 -0
- package/dist/plan-shapes.js +38 -0
- package/dist/plan-shapes.js.map +1 -0
- package/dist/principles.generated.d.ts +11 -0
- package/dist/principles.generated.d.ts.map +1 -0
- package/dist/principles.generated.js +293 -0
- package/dist/principles.generated.js.map +1 -0
- package/dist/published-works.d.ts +13 -0
- package/dist/published-works.d.ts.map +1 -0
- package/dist/published-works.js +18 -0
- package/dist/published-works.js.map +1 -0
- package/dist/relations.d.ts +44 -0
- package/dist/relations.d.ts.map +1 -0
- package/dist/relations.js +104 -0
- package/dist/relations.js.map +1 -0
- package/dist/run-measures-context.d.ts +74 -0
- package/dist/run-measures-context.d.ts.map +1 -0
- package/dist/run-measures-context.js +77 -0
- package/dist/run-measures-context.js.map +1 -0
- package/dist/run-provenance-context.d.ts +315 -0
- package/dist/run-provenance-context.d.ts.map +1 -0
- package/dist/run-provenance-context.js +323 -0
- package/dist/run-provenance-context.js.map +1 -0
- package/dist/transitions.d.ts +42 -0
- package/dist/transitions.d.ts.map +1 -0
- package/dist/transitions.js +100 -0
- package/dist/transitions.js.map +1 -0
- package/dist/vault-records.d.ts +74 -0
- package/dist/vault-records.d.ts.map +1 -0
- package/dist/vault-records.js +777 -0
- package/dist/vault-records.js.map +1 -0
- package/dist/versions.generated.d.ts +262 -0
- package/dist/versions.generated.d.ts.map +1 -0
- package/dist/versions.generated.js +318 -0
- package/dist/versions.generated.js.map +1 -0
- package/evaluation.jsonld +133 -0
- package/mappings/actor-context-standards.ttl +89 -0
- package/mappings/agent-discovery-standards.ttl +127 -0
- package/mappings/collaboration-crosswalk-actors.ttl +30 -0
- package/mappings/collaboration-crosswalk-authority.ttl +31 -0
- package/mappings/collaboration-crosswalk-guidance.ttl +29 -0
- package/mappings/collaboration-crosswalk-intent.ttl +29 -0
- package/mappings/collaboration-crosswalk-messaging.ttl +37 -0
- package/mappings/collaboration-crosswalk-organization.ttl +66 -0
- package/mappings/collaboration-crosswalk-protocols.ttl +49 -0
- package/mappings/collaboration-crosswalk-skills.ttl +50 -0
- package/mappings/collaboration-profile.ttl +82 -0
- package/mappings/commerce-engagement-crosswalk.ttl +83 -0
- package/mappings/spine-standards.ttl +83 -0
- package/package.json +31 -9
- package/run-measures.jsonld +34 -0
- package/run-provenance.jsonld +314 -0
- package/tbox/actor-context.ttl +145 -0
- package/tbox/agent-resolution.ttl +308 -0
- package/tbox/agreement.ttl +77 -0
- package/tbox/attestation.ttl +156 -0
- package/tbox/card-projection.ttl +350 -0
- package/tbox/constraints.ttl +150 -0
- package/tbox/contact.ttl +61 -0
- package/tbox/content.ttl +76 -0
- package/tbox/context.ttl +508 -0
- package/tbox/coordination.ttl +263 -0
- package/tbox/core.ttl +325 -7
- package/tbox/dcat-imports.ttl +19 -0
- package/tbox/discovery.ttl +273 -0
- package/tbox/dqv-imports.ttl +29 -0
- package/tbox/earl-imports.ttl +32 -0
- package/tbox/engagement.ttl +349 -0
- package/tbox/entitlement.ttl +41 -0
- package/tbox/estate.ttl +78 -0
- package/tbox/evaluation.ttl +330 -0
- package/tbox/execution.ttl +720 -0
- package/tbox/familyoffice.ttl +87 -0
- package/tbox/fulfillment.ttl +140 -0
- package/tbox/geo.ttl +28 -0
- package/tbox/governance.ttl +67 -0
- package/tbox/guidance.ttl +40 -0
- package/tbox/household.ttl +142 -0
- package/tbox/identity.ttl +133 -6
- package/tbox/inference.ttl +177 -0
- package/tbox/intents.ttl +241 -0
- package/tbox/interaction.ttl +297 -0
- package/tbox/messaging.ttl +244 -0
- package/tbox/naming.ttl +114 -0
- package/tbox/org.ttl +410 -0
- package/tbox/payload.ttl +94 -0
- package/tbox/payment.ttl +124 -0
- package/tbox/plan.ttl +169 -0
- package/tbox/principles.ttl +212 -0
- package/tbox/privacy-credential.ttl +436 -0
- package/tbox/profile.ttl +107 -0
- package/tbox/prov-imports.ttl +73 -0
- package/tbox/registry.ttl +382 -0
- package/tbox/resolution.ttl +108 -0
- package/tbox/scope.ttl +59 -0
- package/tbox/security-exposure.ttl +102 -0
- package/tbox/situation.ttl +56 -0
- package/tbox/skills.ttl +316 -0
- package/tbox/skos-imports.ttl +54 -0
- package/tbox/transition.ttl +63 -0
- package/tbox/trust.ttl +210 -0
- package/tbox/values.ttl +81 -0
- package/tbox/verification-receipt.ttl +134 -0
- package/versions.adoption.json +173 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# T-box — FamilyOffice (apfo:): the family-office organization + its member
|
|
2
|
+
# RELATIONSHIPS modeled as Situations (DnS, apsit:Situation). The codelists (the
|
|
3
|
+
# concept values) live in cbox/familyoffice-vocabulary.ttl; this file declares what
|
|
4
|
+
# a FAMILY OFFICE and each RELATIONSHIP are. New City AI domain ontology over the
|
|
5
|
+
# neutral substrate — a family office is an OrganizationAgent whose members hold
|
|
6
|
+
# typed, hashed, ontology-referenced relationships (never bare enums or edges).
|
|
7
|
+
|
|
8
|
+
@prefix apfo: <https://agenticprimitives.dev/ns/familyoffice#> .
|
|
9
|
+
@prefix apsit: <https://agenticprimitives.dev/ns/situation#> .
|
|
10
|
+
@prefix ap: <https://agenticprimitives.dev/ns/core#> .
|
|
11
|
+
@prefix aps: <https://agenticprimitives.dev/ns/skill#> .
|
|
12
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
13
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
14
|
+
|
|
15
|
+
apfo: a owl:Ontology ;
|
|
16
|
+
rdfs:label "Agentic Primitives — FamilyOffice vocabulary" ;
|
|
17
|
+
owl:versionInfo "0.1.0" ;
|
|
18
|
+
rdfs:comment "The family-office organization + its member relationships as Situations: kinship, guardianship, ownership, trusteeship. A family office is an OrganizationAgent; each relationship is an apsit:Situation with agent role bindings + a typed body naming apfo: codelist concepts." .
|
|
19
|
+
|
|
20
|
+
# ─── The organization ─────────────────────────────────────────────────────
|
|
21
|
+
apfo:FamilyOffice a owl:Class ;
|
|
22
|
+
rdfs:subClassOf ap:OrganizationAgent ;
|
|
23
|
+
rdfs:label "Family Office" ;
|
|
24
|
+
rdfs:comment "The organization that stewards a family's wealth, entities, and relationships; its members are family members, advisors, and service providers. An OrganizationAgent (steward + member roster ride the aporg: membership Situations)." .
|
|
25
|
+
|
|
26
|
+
# ─── Relationship situations (each ⊑ apsit:Situation) ─────────────────────
|
|
27
|
+
apfo:FamilyOfficeRelation a owl:Class ;
|
|
28
|
+
rdfs:subClassOf apsit:Situation ;
|
|
29
|
+
rdfs:label "Family-office relationship" ;
|
|
30
|
+
rdfs:comment "Abstract base for a typed relationship between family-office members: a Situation with agent role bindings + a typed body. NOT a delegation and NOT a directory listing." .
|
|
31
|
+
|
|
32
|
+
apfo:Kinship a owl:Class ;
|
|
33
|
+
rdfs:subClassOf apfo:FamilyOfficeRelation ;
|
|
34
|
+
rdfs:label "Kinship" ;
|
|
35
|
+
rdfs:comment "A family tie between two persons. Its kind (spouse/parent/child/sibling/…) is an apfo:kinshipKind concept in the body." .
|
|
36
|
+
apfo:SpouseRelation a owl:Class ; rdfs:subClassOf apfo:Kinship ; rdfs:label "Spouse relation" ;
|
|
37
|
+
rdfs:comment "Symmetric — role slots apfo:spouseA and apfo:spouseB (canonical ordering for a stable hash)." .
|
|
38
|
+
apfo:ParentChildRelation a owl:Class ; rdfs:subClassOf apfo:Kinship ; rdfs:label "Parent-child relation" ;
|
|
39
|
+
rdfs:comment "Directed — apfo:parent to apfo:child." .
|
|
40
|
+
apfo:SiblingRelation a owl:Class ; rdfs:subClassOf apfo:Kinship ; rdfs:label "Sibling relation" ;
|
|
41
|
+
rdfs:comment "Symmetric — apfo:siblingA and apfo:siblingB." .
|
|
42
|
+
|
|
43
|
+
apfo:Guardianship a owl:Class ;
|
|
44
|
+
rdfs:subClassOf apfo:FamilyOfficeRelation ;
|
|
45
|
+
rdfs:label "Guardianship" ;
|
|
46
|
+
rdfs:comment "A directed guardian→ward relationship (a legal guardian's oversight of a minor or dependent). The CANONICAL guardianship record — replaces the fragmented encoding (a kinship link in each person's vault plus a 0-bps custodial ownership edge). Role kind (e.g. LegalGuardian) is an apfo:roleKind concept in the body." .
|
|
47
|
+
|
|
48
|
+
apfo:Ownership a owl:Class ;
|
|
49
|
+
rdfs:subClassOf apfo:FamilyOfficeRelation ;
|
|
50
|
+
rdfs:label "Ownership" ;
|
|
51
|
+
rdfs:comment "An owner's interest in an asset or entity — apfo:owner (agent) over apfo:ownedAsset (resource). Kind (sole/joint/beneficial/…) is an apfo:ownershipKind concept." .
|
|
52
|
+
|
|
53
|
+
apfo:Trusteeship a owl:Class ;
|
|
54
|
+
rdfs:subClassOf apfo:FamilyOfficeRelation ;
|
|
55
|
+
rdfs:label "Trusteeship" ;
|
|
56
|
+
rdfs:comment "A trustee's fiduciary role over a trust entity — apfo:trustee (agent) over apfo:trust (resource). Role kind (trustee/successor-trustee) is an apfo:roleKind concept." .
|
|
57
|
+
|
|
58
|
+
# ─── Role properties (the SituationRole slots; ranges are ap:Agent or resources) ──
|
|
59
|
+
apfo:spouseA a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "spouse A" .
|
|
60
|
+
apfo:spouseB a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "spouse B" .
|
|
61
|
+
apfo:parent a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "parent" .
|
|
62
|
+
apfo:child a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "child" .
|
|
63
|
+
apfo:siblingA a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "sibling A" .
|
|
64
|
+
apfo:siblingB a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "sibling B" .
|
|
65
|
+
apfo:guardian a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "guardian" ;
|
|
66
|
+
rdfs:comment "The guardian in an apfo:Guardianship." .
|
|
67
|
+
apfo:ward a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "ward" ;
|
|
68
|
+
rdfs:comment "The person under guardianship in an apfo:Guardianship." .
|
|
69
|
+
apfo:owner a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "owner" .
|
|
70
|
+
apfo:ownedAsset a owl:ObjectProperty ; rdfs:label "owned asset" .
|
|
71
|
+
apfo:trustee a owl:ObjectProperty ; rdfs:range ap:Agent ; rdfs:label "trustee" .
|
|
72
|
+
apfo:trust a owl:ObjectProperty ; rdfs:label "trust" .
|
|
73
|
+
|
|
74
|
+
# ─── Body annotation properties (ranges are the cbox concept schemes) ──────
|
|
75
|
+
apfo:hasKinshipKind a owl:ObjectProperty ; rdfs:label "has kinship kind" ;
|
|
76
|
+
rdfs:comment "The apfo:kinshipKind concept a Kinship situation names in its body." .
|
|
77
|
+
apfo:hasRoleKind a owl:ObjectProperty ; rdfs:label "has role kind" ;
|
|
78
|
+
rdfs:comment "The apfo:roleKind concept a Guardianship or Trusteeship names (e.g. apfo:LegalGuardian)." .
|
|
79
|
+
apfo:hasOwnershipKind a owl:ObjectProperty ; rdfs:label "has ownership kind" ;
|
|
80
|
+
rdfs:comment "The apfo:ownershipKind concept an Ownership situation names in its body." .
|
|
81
|
+
|
|
82
|
+
# ─── Bridge to the generic capability substrate (apfo ↔ aps) ───────────────
|
|
83
|
+
apfo:advisoryCatalog a owl:ObjectProperty ;
|
|
84
|
+
rdfs:domain apfo:FamilyOffice ;
|
|
85
|
+
rdfs:range aps:CapabilityCatalog ;
|
|
86
|
+
rdfs:label "advisory catalog" ;
|
|
87
|
+
rdfs:comment "A family office's advisory catalog IS an aps:CapabilityCatalog — no new catalog type. Its advisors are aporg:OrganizationMembership members that aps:declaresCapability FROM it, so 'who advises on what' rides the generic capability plumbing (declared/claimed/demonstrated) rather than a bespoke advisor table." .
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# T-box — fulfillment vocabulary (spine Layers 10–12).
|
|
2
|
+
# A2A Task + Message + Artifact aligned; spec 244 + spec 245.
|
|
3
|
+
# Spec 225 §11.5.
|
|
4
|
+
# Owning runtime SHACL: packages/fulfillment/src/shapes/fulfillment.shacl.ttl.
|
|
5
|
+
|
|
6
|
+
@prefix apful: <https://agenticprimitives.dev/ns/fulfillment#> .
|
|
7
|
+
@prefix apagr: <https://agenticprimitives.dev/ns/agreement#> .
|
|
8
|
+
@prefix appay: <https://agenticprimitives.dev/ns/payment#> .
|
|
9
|
+
@prefix apvc: <https://agenticprimitives.dev/ns/verifiable-credential#> .
|
|
10
|
+
@prefix ap: <https://agenticprimitives.dev/ns/core#> .
|
|
11
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
12
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
13
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
14
|
+
@prefix prov: <http://www.w3.org/ns/prov#> .
|
|
15
|
+
|
|
16
|
+
apful: a owl:Ontology ;
|
|
17
|
+
rdfs:label "Agentic Primitives — fulfillment ontology" ;
|
|
18
|
+
owl:versionInfo "0.1.0" ;
|
|
19
|
+
rdfs:comment "Layers 10–12 of the spine. FulfillmentCase + Task + Message + Artifact + HandoffPolicy + IntentTraceSpan." .
|
|
20
|
+
|
|
21
|
+
# ─── Operational containers (Layer 10) ────────────────────────────────
|
|
22
|
+
|
|
23
|
+
apful:FulfillmentCase a owl:Class ;
|
|
24
|
+
rdfs:subClassOf prov:Activity ;
|
|
25
|
+
rdfs:label "FulfillmentCase" ;
|
|
26
|
+
rdfs:comment "Operational container per-Agreement. Lifecycle: drafted → clarified → expressed → acknowledged → proposed → accepted → committed → in_progress → fulfilled → validated → archived. FLF-INV-01: lifecycle synced with AgreementRegistry status." .
|
|
27
|
+
|
|
28
|
+
apful:FulfillmentTopology a owl:Class ;
|
|
29
|
+
rdfs:label "FulfillmentTopology" ;
|
|
30
|
+
rdfs:comment "Task composition discriminator: 'linear' | 'parallel' | 'dag'." .
|
|
31
|
+
|
|
32
|
+
# ─── Tasks (Layer 11; A2A-canonical) ──────────────────────────────────
|
|
33
|
+
|
|
34
|
+
apful:Task a owl:Class ;
|
|
35
|
+
rdfs:subClassOf prov:Activity ;
|
|
36
|
+
rdfs:label "Task" ;
|
|
37
|
+
rdfs:comment "Executable unit of work inside a FulfillmentCase. A2A state machine: submitted | working | completed | failed | canceled | input-required | rejected | auth-required. Spec 245 + spec 244 §5." .
|
|
38
|
+
|
|
39
|
+
apful:HandoffPolicy a owl:Class ;
|
|
40
|
+
rdfs:label "HandoffPolicy" ;
|
|
41
|
+
rdfs:comment "First-class authority binding for cross-agent handoffs. allowedTargets + allowedClasses + requiresUserApproval + preservePrivacyTier + allowedScopes + maxHopCount. FLF-6." .
|
|
42
|
+
|
|
43
|
+
# ─── Communication vs deliverables (Layer 12 separation) ─────────────
|
|
44
|
+
|
|
45
|
+
apful:Message a owl:Class ;
|
|
46
|
+
rdfs:label "Message" ;
|
|
47
|
+
rdfs:comment "A2A-style communication artifact. Bodies in JV per D-46.1. A2A-INV-04 + FLF-INV-04: NEVER in public registry." .
|
|
48
|
+
|
|
49
|
+
apful:Artifact a owl:Class ;
|
|
50
|
+
rdfs:subClassOf prov:Entity ;
|
|
51
|
+
rdfs:label "Artifact" ;
|
|
52
|
+
rdfs:comment "A2A-style deliverable. Hash-anchored; body in vault. FLF-INV-05: bodies vault-resident; only hashes in registry. Promotable to EvidenceCredential." .
|
|
53
|
+
|
|
54
|
+
apful:ArtifactKind a owl:Class ;
|
|
55
|
+
rdfs:label "ArtifactKind" ;
|
|
56
|
+
rdfs:comment "Kind discriminator: document | signed-tx | validation-report | receipt | summary | proof | generated-file | attestation | custom." .
|
|
57
|
+
|
|
58
|
+
# ─── Provenance tree (cross-cutting, Decision 7 of ADR-0024) ─────────
|
|
59
|
+
|
|
60
|
+
apful:IntentTraceSpan a owl:Class ;
|
|
61
|
+
rdfs:subClassOf prov:Activity ;
|
|
62
|
+
rdfs:label "IntentTraceSpan" ;
|
|
63
|
+
rdfs:comment "Typed trace span emitted on layer-cross transitions. Parent/child tree forms case audit (FLF-INV-15). spanType: parse | clarify | resolve | match | handoff | tool_call | wallet_simulation | user_approval | execution | validation | task_state_change | lifecycle_transition." .
|
|
64
|
+
|
|
65
|
+
# ─── Properties ───────────────────────────────────────────────────────
|
|
66
|
+
|
|
67
|
+
apful:hasParentAgreement a owl:ObjectProperty ;
|
|
68
|
+
rdfs:domain apful:FulfillmentCase ;
|
|
69
|
+
rdfs:range apagr:AgreementCommitment ;
|
|
70
|
+
rdfs:label "hasParentAgreement" .
|
|
71
|
+
|
|
72
|
+
apful:topology a owl:DatatypeProperty ;
|
|
73
|
+
rdfs:domain apful:FulfillmentCase ;
|
|
74
|
+
rdfs:range xsd:string ;
|
|
75
|
+
rdfs:label "topology" .
|
|
76
|
+
|
|
77
|
+
apful:taskState a owl:DatatypeProperty ;
|
|
78
|
+
rdfs:domain apful:Task ;
|
|
79
|
+
rdfs:range xsd:string ;
|
|
80
|
+
rdfs:label "taskState" ;
|
|
81
|
+
rdfs:comment "A2A canonical states. FLF-INV-13: no backward transitions except input-required→working and auth-required→submitted." .
|
|
82
|
+
|
|
83
|
+
apful:assignee a owl:ObjectProperty ;
|
|
84
|
+
rdfs:domain apful:Task ;
|
|
85
|
+
rdfs:range ap:Agent ;
|
|
86
|
+
rdfs:label "assignee" .
|
|
87
|
+
|
|
88
|
+
apful:assigneeKind a owl:DatatypeProperty ;
|
|
89
|
+
rdfs:domain apful:Task ;
|
|
90
|
+
rdfs:range xsd:string ;
|
|
91
|
+
rdfs:label "assigneeKind" ;
|
|
92
|
+
rdfs:comment "'person' | 'org' | 'agent' | 'oracle' | 'hybrid'." .
|
|
93
|
+
|
|
94
|
+
apful:permissionGrantRef a owl:DatatypeProperty ;
|
|
95
|
+
rdfs:domain apful:Task ;
|
|
96
|
+
rdfs:range xsd:string ;
|
|
97
|
+
rdfs:label "permissionGrantRef" ;
|
|
98
|
+
rdfs:comment "FLF-INV-02: every Task has an authorizing delegation reference." .
|
|
99
|
+
|
|
100
|
+
apful:paymentMandateRef a owl:ObjectProperty ;
|
|
101
|
+
rdfs:domain apful:Task ;
|
|
102
|
+
rdfs:range appay:PaymentMandate ;
|
|
103
|
+
rdfs:label "paymentMandateRef" ;
|
|
104
|
+
rdfs:comment "FLF-INV-11: payment mandate bound to this task via PMT-3 context binding (taskId)." .
|
|
105
|
+
|
|
106
|
+
apful:sender a owl:ObjectProperty ;
|
|
107
|
+
rdfs:domain apful:Message ;
|
|
108
|
+
rdfs:range ap:Agent ;
|
|
109
|
+
rdfs:label "sender" .
|
|
110
|
+
|
|
111
|
+
apful:bodyRef a owl:DatatypeProperty ;
|
|
112
|
+
rdfs:domain apful:Message ;
|
|
113
|
+
rdfs:range xsd:anyURI ;
|
|
114
|
+
rdfs:label "bodyRef" .
|
|
115
|
+
|
|
116
|
+
apful:bodyHash a owl:DatatypeProperty ;
|
|
117
|
+
rdfs:domain apful:Artifact ;
|
|
118
|
+
rdfs:range xsd:hexBinary ;
|
|
119
|
+
rdfs:label "bodyHash" .
|
|
120
|
+
|
|
121
|
+
apful:artifactKind a owl:DatatypeProperty ;
|
|
122
|
+
rdfs:domain apful:Artifact ;
|
|
123
|
+
rdfs:range xsd:string ;
|
|
124
|
+
rdfs:label "artifactKind" .
|
|
125
|
+
|
|
126
|
+
apful:disclosurePolicy a owl:DatatypeProperty ;
|
|
127
|
+
rdfs:domain apful:Artifact ;
|
|
128
|
+
rdfs:range xsd:string ;
|
|
129
|
+
rdfs:label "disclosurePolicy" ;
|
|
130
|
+
rdfs:comment "Per-field DisclosurePolicy (D-42). JSON-encoded." .
|
|
131
|
+
|
|
132
|
+
apful:spanType a owl:DatatypeProperty ;
|
|
133
|
+
rdfs:domain apful:IntentTraceSpan ;
|
|
134
|
+
rdfs:range xsd:string ;
|
|
135
|
+
rdfs:label "spanType" .
|
|
136
|
+
|
|
137
|
+
apful:parentSpan a owl:ObjectProperty ;
|
|
138
|
+
rdfs:domain apful:IntentTraceSpan ;
|
|
139
|
+
rdfs:range apful:IntentTraceSpan ;
|
|
140
|
+
rdfs:label "parentSpan" .
|
package/tbox/geo.ttl
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# T-box — generic geo substrate (spec 251). The geo FEATURE is a public on-chain
|
|
2
|
+
# definition (GeoFeatureRegistry; geometry hash + roots + coarse bbox, exact GeoJSON off
|
|
3
|
+
# chain). The geo CLAIM (agent↔feature association) is an off-chain vault credential.
|
|
4
|
+
# NEUTRAL public geography only — never operational/sensitivity data on chain; no on-chain
|
|
5
|
+
# skill↔geo mapping.
|
|
6
|
+
|
|
7
|
+
@prefix apg: <https://agenticprimitives.dev/ns/geo#> .
|
|
8
|
+
@prefix ap: <https://agenticprimitives.dev/ns/core#> .
|
|
9
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
10
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
11
|
+
|
|
12
|
+
apg:GeoFeature a rdfs:Class ;
|
|
13
|
+
rdfs:label "GeoFeature" ;
|
|
14
|
+
rdfs:comment "A versioned, PUBLIC, generic geographic feature. Anchored on chain by GeoFeatureRegistry (geometryHash + coverage/source roots + coarse bbox; exact geometry off chain via metadataURI). Neutral public geography only." .
|
|
15
|
+
|
|
16
|
+
apg:GeoClaim a rdfs:Class ;
|
|
17
|
+
rdfs:label "GeoClaim" ;
|
|
18
|
+
rdfs:comment "An OFF-CHAIN verifiable credential asserting a subject Smart Agent's relation to an apg:GeoFeature (pinned featureId+version). Private vault credential; the association is NEVER on chain (it would leak operational data)." .
|
|
19
|
+
|
|
20
|
+
apg:featureId a rdf:Property ; rdfs:domain apg:GeoClaim ; rdfs:range apg:GeoFeature ;
|
|
21
|
+
rdfs:comment "The on-chain (featureId, version) this claim credential references." .
|
|
22
|
+
apg:hasGeoKind a rdf:Property ; rdfs:domain apg:GeoFeature ;
|
|
23
|
+
rdfs:comment "An apg:geoKind value (C-box codelist; on-chain-bound)." .
|
|
24
|
+
apg:geometryHash a rdf:Property ; rdfs:domain apg:GeoFeature ;
|
|
25
|
+
rdfs:comment "keccak256 of the canonical GeoJSON (which lives off chain)." .
|
|
26
|
+
apg:claimSubject a rdf:Property ; rdfs:domain apg:GeoClaim ; rdfs:range ap:CanonicalAgentId .
|
|
27
|
+
apg:claimRelation a rdf:Property ; rdfs:domain apg:GeoClaim ;
|
|
28
|
+
rdfs:comment "An apg:geoRelation value (C-box codelist)." .
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
@prefix apgov: <https://agenticprimitives.dev/ns/governance#> .
|
|
2
|
+
@prefix ap: <https://agenticprimitives.dev/ns/core#> .
|
|
3
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
4
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
5
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
6
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
7
|
+
@prefix prov: <http://www.w3.org/ns/prov#> .
|
|
8
|
+
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
|
|
9
|
+
|
|
10
|
+
<https://agenticprimitives.dev/ns/governance> a owl:Ontology ;
|
|
11
|
+
owl:versionInfo "0.1.0" ;
|
|
12
|
+
rdfs:label "Agentic Primitives — governance of the common model and of an estate (spec 410 §10)" ;
|
|
13
|
+
rdfs:comment "The twelfth principle's vocabulary: a shared term has a steward, a version and an adoption process; a participant may hold a LOCAL MEANING of a common term and both are recorded with their names; disputes have a path that does not run through the operator; who stewards what is public. Nothing here is authority — a steward record grants nothing, an adopted version is what a verifier binds, not who may act." .
|
|
14
|
+
|
|
15
|
+
# ─── Versions and adoption ─────────────────────────────────────────────────────────────────────────
|
|
16
|
+
|
|
17
|
+
apgov:AdoptedVersion a owl:Class ;
|
|
18
|
+
rdfs:subClassOf prov:Entity ;
|
|
19
|
+
rdfs:label "AdoptedVersion" ;
|
|
20
|
+
rdfs:comment "An ESTATE's adoption of one ontology manifest (spec 410 §5's `ONTOLOGY_MANIFEST_DIGEST`): which T-box set its verifiers bind into every mandate, adopted by a governance proposal (spec 410 §9) and anchored in the estate's public projection. A verifier redeeming a mandate reads the ESTATE's adopted manifest, never the package's latest — a T-box change is a proposal, not a deploy." .
|
|
21
|
+
apgov:manifestDigest a owl:DatatypeProperty ;
|
|
22
|
+
rdfs:domain apgov:AdoptedVersion ; rdfs:range xsd:string ;
|
|
23
|
+
rdfs:label "manifestDigest" .
|
|
24
|
+
apgov:adoptedAt a owl:DatatypeProperty ;
|
|
25
|
+
rdfs:domain apgov:AdoptedVersion ; rdfs:range xsd:dateTime ;
|
|
26
|
+
rdfs:label "adoptedAt" .
|
|
27
|
+
apgov:proposalRef a owl:DatatypeProperty ;
|
|
28
|
+
rdfs:domain apgov:AdoptedVersion ; rdfs:range xsd:string ;
|
|
29
|
+
rdfs:label "proposalRef" ;
|
|
30
|
+
rdfs:comment "The governance proposal that adopted it (the timelock's operation id, spec 410 §9)." .
|
|
31
|
+
|
|
32
|
+
# ─── Local meanings — two organizations, both right ───────────────────────────────────────────────
|
|
33
|
+
|
|
34
|
+
apgov:LocalMeaning a owl:Class ;
|
|
35
|
+
rdfs:subClassOf skos:Concept ;
|
|
36
|
+
rdfs:label "LocalMeaning" ;
|
|
37
|
+
rdfs:comment "An organization's OWN meaning of a COMMON term, recorded as a SKOS mapping onto it — never a second class in the common T-box (ADR-0054: never a different semantic model per door). 'Member' may be a baptized adult to one organization and a household to another; both publish a LocalMeaning with skos:narrowMatch / skos:broadMatch / skos:relatedMatch to aporg:member and a scope note saying what differs; both are right; a grant issued by either names its own (the intent preimage's meaningRefs), so a third party reading the receipt sees which meaning the grant used. An organization with no LocalMeaning falls to the common term." .
|
|
38
|
+
apgov:ofTerm a owl:ObjectProperty ;
|
|
39
|
+
rdfs:domain apgov:LocalMeaning ; rdfs:range rdfs:Resource ;
|
|
40
|
+
rdfs:label "ofTerm" ;
|
|
41
|
+
rdfs:comment "The COMMON term this is a local meaning of (an IRI of the shared T-box)." .
|
|
42
|
+
apgov:heldBy a owl:ObjectProperty ;
|
|
43
|
+
rdfs:domain apgov:LocalMeaning ; rdfs:range ap:Agent ;
|
|
44
|
+
rdfs:label "heldBy" ;
|
|
45
|
+
rdfs:comment "The organization whose meaning it is — the record lives on ITS Smart Agent." .
|
|
46
|
+
apgov:mappingRelation a owl:DatatypeProperty ;
|
|
47
|
+
rdfs:domain apgov:LocalMeaning ; rdfs:range xsd:string ;
|
|
48
|
+
rdfs:label "mappingRelation" ;
|
|
49
|
+
rdfs:comment "Which SKOS mapping predicate relates the local meaning to the common term: narrowMatch | broadMatch | relatedMatch. Never exactMatch (that would be no local meaning) and never a new class." .
|
|
50
|
+
|
|
51
|
+
# ─── Stewardship of the model ─────────────────────────────────────────────────────────────────────
|
|
52
|
+
|
|
53
|
+
apgov:Steward a owl:Class ;
|
|
54
|
+
rdfs:subClassOf prov:Entity ;
|
|
55
|
+
rdfs:label "Steward" ;
|
|
56
|
+
rdfs:comment "WHO STEWARDS WHAT, publicly: the Smart Agent named to resolve disagreements, manage versions and name exceptions for one term or module of the common model, registered through the term registry under the estate's governance and readable from the registry without a session (a steward's identity is public by construction, ADR-0040). A steward record grants nothing: a determination in a dispute (the dispute interaction profile) is evidence the run's provenance links, never a reversal." .
|
|
57
|
+
apgov:stewards a owl:ObjectProperty ;
|
|
58
|
+
rdfs:domain apgov:Steward ; rdfs:range rdfs:Resource ;
|
|
59
|
+
rdfs:label "stewards" ;
|
|
60
|
+
rdfs:comment "The term or module IRI stewarded." .
|
|
61
|
+
apgov:stewardAgent a owl:ObjectProperty ;
|
|
62
|
+
rdfs:domain apgov:Steward ; rdfs:range ap:Agent ;
|
|
63
|
+
rdfs:label "stewardAgent" .
|
|
64
|
+
apgov:charterRef a owl:DatatypeProperty ;
|
|
65
|
+
rdfs:domain apgov:Steward ; rdfs:range xsd:string ;
|
|
66
|
+
rdfs:label "charterRef" ;
|
|
67
|
+
rdfs:comment "The estate charter (spec 410 §9) under which the steward was named — its hash as anchored." .
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# T-box — Agent Skill packages + repo guidance (spec 325 §2.1–2.2; ADR-0050, ADR-0051).
|
|
2
|
+
# Agent Skills standard (SKILL.md) — NOT aps:CapabilityDefinition or A2A AgentSkill.
|
|
3
|
+
|
|
4
|
+
@prefix apguide: <https://agenticprimitives.dev/ns/guidance#> .
|
|
5
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
6
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
7
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
8
|
+
|
|
9
|
+
apguide: a owl:Ontology ;
|
|
10
|
+
rdfs:label "Agentic Primitives — agent guidance ontology" ;
|
|
11
|
+
owl:versionInfo "0.2.0" ;
|
|
12
|
+
rdfs:comment "Agent Skill packages (SKILL.md) and repository guidance. Distinct from aps:CapabilityDefinition (ADR-0051)." .
|
|
13
|
+
|
|
14
|
+
apguide:AgentGuidanceArtifact a owl:Class ;
|
|
15
|
+
rdfs:label "AgentGuidanceArtifact" ;
|
|
16
|
+
rdfs:comment "Markdown/file artifact steering a coding agent in IDE/CLI — not a signed runtime capability." .
|
|
17
|
+
|
|
18
|
+
apguide:AgentSkillPackage a owl:Class ;
|
|
19
|
+
rdfs:subClassOf apguide:AgentGuidanceArtifact ;
|
|
20
|
+
rdfs:label "AgentSkillPackage" ;
|
|
21
|
+
rdfs:comment "Portable procedural package per Agent Skills standard (directory + SKILL.md). Runtime playbook — NOT A2A advertisement or OASF taxon." .
|
|
22
|
+
|
|
23
|
+
apguide:AgentGuidanceSkill a owl:Class ;
|
|
24
|
+
owl:deprecated true ;
|
|
25
|
+
rdfs:subClassOf apguide:AgentSkillPackage ;
|
|
26
|
+
rdfs:label "AgentGuidanceSkill (deprecated)" ;
|
|
27
|
+
rdfs:comment "Deprecated alias for apguide:AgentSkillPackage (ADR-0051)." .
|
|
28
|
+
|
|
29
|
+
apguide:RepositoryGuidanceDoc a owl:Class ;
|
|
30
|
+
rdfs:subClassOf apguide:AgentGuidanceArtifact ;
|
|
31
|
+
rdfs:label "RepositoryGuidanceDoc" ;
|
|
32
|
+
rdfs:comment "Repo-local agent context (CLAUDE.md, AGENTS.md). Not executable capability." .
|
|
33
|
+
|
|
34
|
+
apguide:guidanceTarget a owl:ObjectProperty ;
|
|
35
|
+
rdfs:domain apguide:AgentGuidanceArtifact ;
|
|
36
|
+
rdfs:label "guidanceTarget" .
|
|
37
|
+
|
|
38
|
+
apguide:hostedInRepository a owl:DatatypeProperty ;
|
|
39
|
+
rdfs:domain apguide:AgentGuidanceArtifact ;
|
|
40
|
+
rdfs:label "hostedInRepository" .
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# T-box — THE HOUSEHOLD (spec 363 W4).
|
|
2
|
+
#
|
|
3
|
+
# The smallest real domain that exercises every layer at once: classes (what a household IS), relation
|
|
4
|
+
# axioms (how "my daughter's account" composes out of two links), and decisions (what a first name means
|
|
5
|
+
# when it could be a person you live with or a stranger in a directory).
|
|
6
|
+
#
|
|
7
|
+
# WHY A HOUSEHOLD IS NOT AN AGENT. Every Smart Agent is a Person, an Organization or a Service
|
|
8
|
+
# (ADR-0046), and a household is a body of people — so it is an Organization in the PROV sense, and it
|
|
9
|
+
# MAY have an agent (a `.circle` or `.org` SA) exactly as any organization may. It need not: requiring
|
|
10
|
+
# somebody to charter an agent, pay for its genesis and custody its keys before they can say who they
|
|
11
|
+
# live with would be a tax on having a family. The household is a RECORD its members keep; an agent is
|
|
12
|
+
# something a household may acquire when it starts acting as one.
|
|
13
|
+
#
|
|
14
|
+
# PRIVATE BY CONSTRUCTION. Who lives with whom is not on chain, is not derivable from chain state, and
|
|
15
|
+
# therefore may never enter the discovery knowledge base (ADR-0040) — not hashed, not "temporarily", not
|
|
16
|
+
# to make a lookup faster. It lives in each member's own vault (ADR-0025), which is also why this
|
|
17
|
+
# ontology describes what a member RECORDS rather than a global fact: two people's households can
|
|
18
|
+
# disagree, and the honest model says whose record you are reading.
|
|
19
|
+
#
|
|
20
|
+
# A FAMILY GRAPH IS EXACTLY THE DATA A PLATFORM SHOULD NOT HOLD. That is the reason for the tier, and it
|
|
21
|
+
# is not a compliance posture: an estate that centralised this would not be worth using.
|
|
22
|
+
|
|
23
|
+
@prefix aphh: <https://agenticprimitives.dev/ns/household#> .
|
|
24
|
+
@prefix ap: <https://agenticprimitives.dev/ns/core#> .
|
|
25
|
+
@prefix aporg: <https://agenticprimitives.dev/ns/org#> .
|
|
26
|
+
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
|
|
27
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
28
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
29
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
30
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
31
|
+
@prefix prov: <http://www.w3.org/ns/prov#> .
|
|
32
|
+
|
|
33
|
+
aphh: a owl:Ontology ;
|
|
34
|
+
rdfs:label "Agentic Primitives — Household" ;
|
|
35
|
+
rdfs:comment "The people someone lives with, as they record it: a private-tier body whose members may be agents, with roles and family relations that let a resolver understand 'my daughter' without a directory search (spec 363 W4)." .
|
|
36
|
+
|
|
37
|
+
# ─── The body ─────────────────────────────────────────────────────────
|
|
38
|
+
|
|
39
|
+
aphh:Household a owl:Class ;
|
|
40
|
+
rdfs:subClassOf prov:Organization ;
|
|
41
|
+
rdfs:label "Household" ;
|
|
42
|
+
rdfs:comment """A body of people who live as one — a family, a shared home, a house.
|
|
43
|
+
|
|
44
|
+
An ORGANIZATION in the PROV sense (a social entity with members), NOT a new agent class and not a
|
|
45
|
+
new kind of Smart Agent: the trichotomy stands (ADR-0046). It may be coordinated by an agent — a
|
|
46
|
+
`.circle` for a family that wants a shared inbox, an `.org` if it starts holding money — and it may
|
|
47
|
+
have none at all, which is the ordinary case and must stay free.
|
|
48
|
+
|
|
49
|
+
It is a RECORD ITS MEMBERS KEEP, not a global fact. Each member's vault holds their own household
|
|
50
|
+
record; two records may disagree, and the resolver always says whose it read.""" .
|
|
51
|
+
|
|
52
|
+
aphh:HouseholdMembership a owl:Class ;
|
|
53
|
+
rdfs:subClassOf aporg:OrganizationMembership ;
|
|
54
|
+
rdfs:label "HouseholdMembership" ;
|
|
55
|
+
rdfs:comment """One person's place in one household, over a period, with a role.
|
|
56
|
+
|
|
57
|
+
A NODE, not an edge, for the same reason organization membership is one (ADR-0048): a role and a
|
|
58
|
+
period belong to the membership, not to the person. "Guardian" is not a property of somebody — it
|
|
59
|
+
is what they are IN this household, from a date, and possibly no longer.""" .
|
|
60
|
+
|
|
61
|
+
aphh:memberOfHousehold a owl:ObjectProperty ;
|
|
62
|
+
rdfs:domain ap:Agent ; rdfs:range aphh:Household ;
|
|
63
|
+
rdfs:label "memberOfHousehold" ;
|
|
64
|
+
rdfs:comment """The households this agent belongs to — PLURAL, and meant so. A child between two
|
|
65
|
+
homes belongs to both; a carer's week is spent in one and their own life in another; a second home
|
|
66
|
+
is a household with people in it. A model that allowed only one would make somebody's second home
|
|
67
|
+
overwrite their first, which is a worse answer than not modelling it at all.
|
|
68
|
+
|
|
69
|
+
Private tier: never published, never indexed.""" .
|
|
70
|
+
|
|
71
|
+
aphh:householdMember a owl:ObjectProperty ;
|
|
72
|
+
owl:inverseOf aphh:memberOfHousehold ;
|
|
73
|
+
rdfs:domain aphh:Household ; rdfs:range ap:Agent ;
|
|
74
|
+
rdfs:label "householdMember" ;
|
|
75
|
+
rdfs:comment "The agents in this household. The direction a resolver traverses to answer 'who do I live with'." .
|
|
76
|
+
|
|
77
|
+
# ─── Roles and relations ──────────────────────────────────────────────
|
|
78
|
+
#
|
|
79
|
+
# A ROLE says what someone DOES in the household (who may decide for whom). A RELATION says how they are
|
|
80
|
+
# KIN. They are different questions and conflating them is how a system decides that a spouse may act for
|
|
81
|
+
# a spouse because the word sounded close enough. Neither is authority: a guardian's ability to act for a
|
|
82
|
+
# dependent is a DELEGATION the dependent's custodian issued, and this vocabulary never substitutes for it.
|
|
83
|
+
|
|
84
|
+
aphh:HouseholdRole a owl:Class ;
|
|
85
|
+
rdfs:subClassOf skos:Concept ;
|
|
86
|
+
rdfs:label "HouseholdRole" ;
|
|
87
|
+
rdfs:comment "What someone does in a household. NEVER authority — a guardian acts for a dependent only under a delegation, and this term is not one." .
|
|
88
|
+
|
|
89
|
+
aphh:Guardian a aphh:HouseholdRole ;
|
|
90
|
+
skos:prefLabel "guardian" ;
|
|
91
|
+
rdfs:comment "Responsible for a dependent in this household. It does not grant the ability to act for them; it says who would be asked to." .
|
|
92
|
+
|
|
93
|
+
aphh:Dependent a aphh:HouseholdRole ;
|
|
94
|
+
skos:prefLabel "dependent" ;
|
|
95
|
+
rdfs:comment "Cared for by a guardian of this household — a child, or an adult who has asked someone to hold that responsibility." .
|
|
96
|
+
|
|
97
|
+
aphh:Member a aphh:HouseholdRole ;
|
|
98
|
+
skos:prefLabel "member" ;
|
|
99
|
+
rdfs:comment "An adult member with no dependency in either direction. The ordinary case, and the default." .
|
|
100
|
+
|
|
101
|
+
aphh:householdRole a owl:ObjectProperty ;
|
|
102
|
+
rdfs:domain aphh:HouseholdMembership ; rdfs:range aphh:HouseholdRole ;
|
|
103
|
+
rdfs:label "householdRole" .
|
|
104
|
+
|
|
105
|
+
aphh:KinRelation a owl:Class ;
|
|
106
|
+
rdfs:subClassOf skos:Concept ;
|
|
107
|
+
rdfs:label "KinRelation" ;
|
|
108
|
+
rdfs:comment """How one member is KIN to the person whose record this is.
|
|
109
|
+
|
|
110
|
+
DELIBERATELY SMALL. Kinship vocabularies are a well-known bottomless pit — step-, half-, in-law,
|
|
111
|
+
fostered, chosen, culture-specific — and a resolver needs exactly one thing from this: enough to
|
|
112
|
+
understand "my daughter" when somebody says it. So: the handful of words people actually use to
|
|
113
|
+
address a transfer, and `aphh:otherKin` with a free label for everything else, which is honest
|
|
114
|
+
about being a label rather than pretending to a taxonomy nobody agreed to.""" .
|
|
115
|
+
|
|
116
|
+
aphh:spouse a aphh:KinRelation ; skos:prefLabel "spouse" .
|
|
117
|
+
aphh:child a aphh:KinRelation ; skos:prefLabel "child" ; skos:altLabel "daughter", "son" .
|
|
118
|
+
aphh:parent a aphh:KinRelation ; skos:prefLabel "parent" ; skos:altLabel "mother", "father" .
|
|
119
|
+
aphh:sibling a aphh:KinRelation ; skos:prefLabel "sibling" ; skos:altLabel "sister", "brother" .
|
|
120
|
+
aphh:otherKin a aphh:KinRelation ; skos:prefLabel "relative" ;
|
|
121
|
+
rdfs:comment "Kin this vocabulary does not name. Carries the household's own label for the person, used verbatim and never re-interpreted." .
|
|
122
|
+
|
|
123
|
+
aphh:kinRelation a owl:ObjectProperty ;
|
|
124
|
+
rdfs:domain aphh:HouseholdMembership ; rdfs:range aphh:KinRelation ;
|
|
125
|
+
rdfs:label "kinRelation" ;
|
|
126
|
+
rdfs:comment "How this member is kin to the record's owner. Absent for a housemate who is not kin, which is an ordinary household and not a gap." .
|
|
127
|
+
|
|
128
|
+
# ─── The R-box: what composes out of the above ────────────────────────
|
|
129
|
+
|
|
130
|
+
aphh:householdPayee a owl:ObjectProperty ;
|
|
131
|
+
owl:propertyChainAxiom ( aphh:householdMember ap:primaryPayee ) ;
|
|
132
|
+
rdfs:domain aphh:Household ; rdfs:range ap:Agent ;
|
|
133
|
+
rdfs:label "householdPayee" ;
|
|
134
|
+
rdfs:comment """The accounts a household's members want paid — a member, then the account that member
|
|
135
|
+
marked (ap:primaryPayee).
|
|
136
|
+
|
|
137
|
+
THIS IS WHY THE R-BOX EARNS ITS PLACE. "Send my daughter her allowance" is two links: the household
|
|
138
|
+
says who she is, her own mark says where her money goes. Written as an axiom, one traversal answers
|
|
139
|
+
it; written in code, every capability that ever needs it grows its own table and they drift.
|
|
140
|
+
|
|
141
|
+
IT COMPOSES TWO PREFERENCES AND NO PERMISSION. The chain says where money would LAND, never that
|
|
142
|
+
anyone may send it: the payment still needs a mandate the payer signs for that request.""" .
|