@agenticprimitives/ontology 1.0.0-alpha.18 → 1.0.0-alpha.20
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/cbox/agent-facet-shapes.shacl.ttl +130 -0
- package/cbox/capability-catalog-shapes.shacl.ttl +284 -0
- package/cbox/consultation-shapes.shacl.ttl +85 -0
- package/cbox/discovery-graph-shapes.shacl.ttl +50 -0
- package/cbox/familyoffice-shapes.shacl.ttl +92 -0
- package/cbox/familyoffice-vocabulary.ttl +48 -0
- package/cbox/interaction-vocabulary.ttl +17 -0
- package/cbox/profile-facet-vocabulary.ttl +50 -0
- package/context.jsonld +1 -0
- package/dist/artifacts.d.ts +2 -2
- package/dist/artifacts.d.ts.map +1 -1
- package/dist/artifacts.js +29 -0
- package/dist/artifacts.js.map +1 -1
- package/dist/index.d.ts +221 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +292 -0
- package/dist/index.js.map +1 -1
- package/mappings/collaboration-crosswalk-skills.ttl +1 -1
- package/mappings/collaboration-profile.ttl +17 -9
- package/package.json +4 -2
- package/tbox/context.ttl +124 -0
- package/tbox/coordination.ttl +216 -0
- package/tbox/discovery.ttl +125 -1
- package/tbox/execution.ttl +131 -0
- package/tbox/familyoffice.ttl +87 -0
- package/tbox/identity.ttl +6 -0
- package/tbox/intents.ttl +10 -0
- package/tbox/messaging.ttl +54 -0
- package/tbox/plan.ttl +169 -0
- package/tbox/profile.ttl +100 -0
- package/tbox/skills.ttl +132 -0
- package/tbox/trust.ttl +120 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# C-box — SHACL for the FamilyOffice (apfo:) RELATIONSHIP archetypes. One NodeShape
|
|
2
|
+
# per apfo relationship class, validating the WELL-FORMEDNESS of that relationship's
|
|
3
|
+
# Situation: its agent role bindings (the who) plus its typed body (the what kind),
|
|
4
|
+
# where the kind is pinned to a CLOSED cbox SKOS scheme via sh:in ( … ). Mirrors
|
|
5
|
+
# cbox/capability-catalog-shapes.shacl.ttl (a shape per class, an sh:message per
|
|
6
|
+
# constraint, the concept IRIs inlined) — the codelists these shapes constrain live
|
|
7
|
+
# in cbox/familyoffice-vocabulary.ttl and the classes + role/body predicates in
|
|
8
|
+
# tbox/familyoffice.ttl.
|
|
9
|
+
#
|
|
10
|
+
# These are STRUCTURE shapes, not authority: a conforming Guardianship is a
|
|
11
|
+
# well-formed guardianship RECORD, never a grant of legal control (control rides
|
|
12
|
+
# the delegation/entitlement layer, never an apfo: Situation). The New City portal
|
|
13
|
+
# derives a flat ShapeDef from each of these NodeShapes and validates a relationship
|
|
14
|
+
# record with it BEFORE a vault-first write — so a malformed relationship (a missing
|
|
15
|
+
# ward, an ownership kind outside the scheme) fails at the app boundary, not after it
|
|
16
|
+
# has already been persisted to a vault.
|
|
17
|
+
|
|
18
|
+
@prefix sh: <http://www.w3.org/ns/shacl#> .
|
|
19
|
+
@prefix apfo: <https://agenticprimitives.dev/ns/familyoffice#> .
|
|
20
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
21
|
+
|
|
22
|
+
# ─── Guardianship — a directed guardian→ward oversight ─────────────────────
|
|
23
|
+
apfo:GuardianshipShape a sh:NodeShape ;
|
|
24
|
+
sh:targetClass apfo:Guardianship ;
|
|
25
|
+
rdfs:label "GuardianshipShape" ;
|
|
26
|
+
sh:property [ sh:path apfo:guardian ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
27
|
+
sh:message "A guardianship binds exactly one apfo:guardian (an agent IRI — the address IS the identity, never a name literal)." ] ;
|
|
28
|
+
sh:property [ sh:path apfo:ward ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
29
|
+
sh:message "A guardianship binds exactly one apfo:ward. A guardian with no ward is not a guardianship — the fragmented old encoding (a kinship link + a 0-bps custodial edge) is exactly what this canonical record replaces." ] ;
|
|
30
|
+
sh:property [ sh:path apfo:hasRoleKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
31
|
+
sh:in ( apfo:LegalGuardian apfo:Custodian apfo:PowerOfAttorney ) ;
|
|
32
|
+
sh:message "The body must name exactly one guardianship roleKind from the closed cbox scheme: apfo:LegalGuardian (the default), apfo:Custodian, or apfo:PowerOfAttorney. A bare enum or a concept outside the scheme is rejected." ] .
|
|
33
|
+
|
|
34
|
+
# ─── Trusteeship — a trustee's fiduciary role over a trust entity ──────────
|
|
35
|
+
apfo:TrusteeshipShape a sh:NodeShape ;
|
|
36
|
+
sh:targetClass apfo:Trusteeship ;
|
|
37
|
+
rdfs:label "TrusteeshipShape" ;
|
|
38
|
+
sh:property [ sh:path apfo:trustee ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
39
|
+
sh:message "A trusteeship binds exactly one apfo:trustee (an agent IRI)." ] ;
|
|
40
|
+
sh:property [ sh:path apfo:trust ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
41
|
+
sh:message "A trusteeship binds exactly one apfo:trust — the trust entity the trustee is fiduciary over." ] ;
|
|
42
|
+
sh:property [ sh:path apfo:hasRoleKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
43
|
+
sh:in ( apfo:Trustee apfo:SuccessorTrustee ) ;
|
|
44
|
+
sh:message "The body must name exactly one trusteeship roleKind from the closed cbox scheme: apfo:Trustee or apfo:SuccessorTrustee." ] .
|
|
45
|
+
|
|
46
|
+
# ─── Ownership — an owner's interest in an asset or entity ─────────────────
|
|
47
|
+
apfo:OwnershipShape a sh:NodeShape ;
|
|
48
|
+
sh:targetClass apfo:Ownership ;
|
|
49
|
+
rdfs:label "OwnershipShape" ;
|
|
50
|
+
sh:property [ sh:path apfo:owner ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
51
|
+
sh:message "An ownership binds exactly one apfo:owner (an agent IRI)." ] ;
|
|
52
|
+
sh:property [ sh:path apfo:ownedAsset ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
53
|
+
sh:message "An ownership binds exactly one apfo:ownedAsset — the asset or entity the interest is in." ] ;
|
|
54
|
+
sh:property [ sh:path apfo:hasOwnershipKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
55
|
+
sh:in ( apfo:SoleOwnership apfo:JointOwnership apfo:CommunityProperty apfo:BeneficialInterest apfo:TrustOwnership ) ;
|
|
56
|
+
sh:message "The body must name exactly one ownershipKind from the closed cbox scheme: apfo:SoleOwnership, apfo:JointOwnership, apfo:CommunityProperty, apfo:BeneficialInterest, or apfo:TrustOwnership." ] .
|
|
57
|
+
|
|
58
|
+
# ─── SpouseRelation — a symmetric spousal kinship ─────────────────────────
|
|
59
|
+
apfo:SpouseRelationShape a sh:NodeShape ;
|
|
60
|
+
sh:targetClass apfo:SpouseRelation ;
|
|
61
|
+
rdfs:label "SpouseRelationShape" ;
|
|
62
|
+
sh:property [ sh:path apfo:spouseA ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
63
|
+
sh:message "A spouse relation binds exactly one apfo:spouseA (an agent IRI). The A/B slots are a canonical ordering for a stable hash, not a rank." ] ;
|
|
64
|
+
sh:property [ sh:path apfo:spouseB ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
65
|
+
sh:message "A spouse relation binds exactly one apfo:spouseB (an agent IRI)." ] ;
|
|
66
|
+
sh:property [ sh:path apfo:hasKinshipKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
67
|
+
sh:in ( apfo:Spouse ) ;
|
|
68
|
+
sh:message "The body of a spouse relation must name the apfo:Spouse kinshipKind concept, and only it." ] .
|
|
69
|
+
|
|
70
|
+
# ─── ParentChildRelation — a directed parent→child kinship ────────────────
|
|
71
|
+
apfo:ParentChildRelationShape a sh:NodeShape ;
|
|
72
|
+
sh:targetClass apfo:ParentChildRelation ;
|
|
73
|
+
rdfs:label "ParentChildRelationShape" ;
|
|
74
|
+
sh:property [ sh:path apfo:parent ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
75
|
+
sh:message "A parent-child relation binds exactly one apfo:parent (an agent IRI)." ] ;
|
|
76
|
+
sh:property [ sh:path apfo:child ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
77
|
+
sh:message "A parent-child relation binds exactly one apfo:child (an agent IRI)." ] ;
|
|
78
|
+
sh:property [ sh:path apfo:hasKinshipKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
79
|
+
sh:in ( apfo:Parent apfo:Child apfo:Grandparent apfo:StepParent apfo:Adoptive ) ;
|
|
80
|
+
sh:message "The body must name exactly one directed-kinship concept from the closed cbox scheme: apfo:Parent, apfo:Child, apfo:Grandparent, apfo:StepParent, or apfo:Adoptive." ] .
|
|
81
|
+
|
|
82
|
+
# ─── SiblingRelation — a symmetric sibling kinship ────────────────────────
|
|
83
|
+
apfo:SiblingRelationShape a sh:NodeShape ;
|
|
84
|
+
sh:targetClass apfo:SiblingRelation ;
|
|
85
|
+
rdfs:label "SiblingRelationShape" ;
|
|
86
|
+
sh:property [ sh:path apfo:siblingA ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
87
|
+
sh:message "A sibling relation binds exactly one apfo:siblingA (an agent IRI). The A/B slots are a canonical ordering for a stable hash, not a rank." ] ;
|
|
88
|
+
sh:property [ sh:path apfo:siblingB ; sh:nodeKind sh:IRI ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
89
|
+
sh:message "A sibling relation binds exactly one apfo:siblingB (an agent IRI)." ] ;
|
|
90
|
+
sh:property [ sh:path apfo:hasKinshipKind ; sh:minCount 1 ; sh:maxCount 1 ;
|
|
91
|
+
sh:in ( apfo:Sibling ) ;
|
|
92
|
+
sh:message "The body of a sibling relation must name the apfo:Sibling kinshipKind concept, and only it." ] .
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# C-box — FamilyOffice controlled vocabularies (apfo:). Closed SKOS codelists for
|
|
2
|
+
# kinship kinds, fiduciary/oversight role kinds, and ownership kinds — the concept
|
|
3
|
+
# values an apfo: relationship Situation names in its body (the A-box→C-box link).
|
|
4
|
+
# Mirrors cbox/scope-vocabulary.ttl. Deliberately coarse, cross-party classes.
|
|
5
|
+
|
|
6
|
+
@prefix apfo: <https://agenticprimitives.dev/ns/familyoffice#> .
|
|
7
|
+
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
|
|
8
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
9
|
+
|
|
10
|
+
# ─── kinshipKind — the kind of family tie ─────────────────────────────────
|
|
11
|
+
apfo:kinshipKind a skos:ConceptScheme ;
|
|
12
|
+
rdfs:label "kinshipKind" ;
|
|
13
|
+
rdfs:comment "The kind of kinship a Kinship situation asserts. Symmetric kinds (spouse/sibling) vs directed (parent/child) — see the class hierarchy in tbox/familyoffice.ttl." ;
|
|
14
|
+
skos:hasTopConcept apfo:Spouse, apfo:Parent, apfo:Child, apfo:Sibling,
|
|
15
|
+
apfo:Grandparent, apfo:StepParent, apfo:Adoptive .
|
|
16
|
+
apfo:Spouse a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "spouse" .
|
|
17
|
+
apfo:Parent a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "parent" .
|
|
18
|
+
apfo:Child a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "child" .
|
|
19
|
+
apfo:Sibling a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "sibling" .
|
|
20
|
+
apfo:Grandparent a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "grandparent" .
|
|
21
|
+
apfo:StepParent a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "step-parent" .
|
|
22
|
+
apfo:Adoptive a skos:Concept ; skos:inScheme apfo:kinshipKind ; skos:prefLabel "adoptive parent" .
|
|
23
|
+
|
|
24
|
+
# ─── roleKind — fiduciary / oversight roles (guardianship, trusteeship, estate) ──
|
|
25
|
+
apfo:roleKind a skos:ConceptScheme ;
|
|
26
|
+
rdfs:label "roleKind" ;
|
|
27
|
+
rdfs:comment "The fiduciary/oversight role a Guardianship or Trusteeship asserts. LegalGuardian is the guardianship default." ;
|
|
28
|
+
skos:hasTopConcept apfo:LegalGuardian, apfo:Trustee, apfo:SuccessorTrustee,
|
|
29
|
+
apfo:Beneficiary, apfo:PowerOfAttorney, apfo:Custodian, apfo:Executor .
|
|
30
|
+
apfo:LegalGuardian a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "legal guardian" .
|
|
31
|
+
apfo:Trustee a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "trustee" .
|
|
32
|
+
apfo:SuccessorTrustee a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "successor trustee" .
|
|
33
|
+
apfo:Beneficiary a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "beneficiary" .
|
|
34
|
+
apfo:PowerOfAttorney a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "power of attorney" .
|
|
35
|
+
apfo:Custodian a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "custodian" .
|
|
36
|
+
apfo:Executor a skos:Concept ; skos:inScheme apfo:roleKind ; skos:prefLabel "executor" .
|
|
37
|
+
|
|
38
|
+
# ─── ownershipKind — the kind of ownership interest ───────────────────────
|
|
39
|
+
apfo:ownershipKind a skos:ConceptScheme ;
|
|
40
|
+
rdfs:label "ownershipKind" ;
|
|
41
|
+
rdfs:comment "The kind of ownership interest an Ownership situation asserts." ;
|
|
42
|
+
skos:hasTopConcept apfo:SoleOwnership, apfo:JointOwnership, apfo:CommunityProperty,
|
|
43
|
+
apfo:BeneficialInterest, apfo:TrustOwnership .
|
|
44
|
+
apfo:SoleOwnership a skos:Concept ; skos:inScheme apfo:ownershipKind ; skos:prefLabel "sole" .
|
|
45
|
+
apfo:JointOwnership a skos:Concept ; skos:inScheme apfo:ownershipKind ; skos:prefLabel "joint" .
|
|
46
|
+
apfo:CommunityProperty a skos:Concept ; skos:inScheme apfo:ownershipKind ; skos:prefLabel "community property" .
|
|
47
|
+
apfo:BeneficialInterest a skos:Concept ; skos:inScheme apfo:ownershipKind ; skos:prefLabel "beneficial" .
|
|
48
|
+
apfo:TrustOwnership a skos:Concept ; skos:inScheme apfo:ownershipKind ; skos:prefLabel "trust-held" .
|
|
@@ -137,3 +137,20 @@ apmsg:invitationInvited a skos:Concept ; skos:inScheme apmsg:discussionInvitati
|
|
|
137
137
|
apmsg:invitationAccepted a skos:Concept ; skos:inScheme apmsg:discussionInvitationStatusScheme ; skos:prefLabel "accepted" .
|
|
138
138
|
apmsg:invitationDeclined a skos:Concept ; skos:inScheme apmsg:discussionInvitationStatusScheme ; skos:prefLabel "declined" .
|
|
139
139
|
apmsg:invitationRevoked a skos:Concept ; skos:inScheme apmsg:discussionInvitationStatusScheme ; skos:prefLabel "revoked" .
|
|
140
|
+
|
|
141
|
+
# ─── contextRef kinds (platform-known; the wire field stays app-open) ────
|
|
142
|
+
# ContextRefV1.kind is deliberately app-defined on the wire (ADR-0021); this codelist names only
|
|
143
|
+
# the PLATFORM-defined kinds UIs chip on. spec 329: `routed-consultation` rides the turn-1 status
|
|
144
|
+
# post and the turn-2 synthesis; its ref id is `<orgSA>/<topicId>/<questionId>`.
|
|
145
|
+
|
|
146
|
+
apmsg:contextRefKindScheme a skos:ConceptScheme ;
|
|
147
|
+
rdfs:label "contextRefKind" ;
|
|
148
|
+
skos:hasTopConcept apmsg:routedConsultation, apmsg:endeavorRef .
|
|
149
|
+
|
|
150
|
+
apmsg:routedConsultation a skos:Concept ; skos:inScheme apmsg:contextRefKindScheme ;
|
|
151
|
+
skos:prefLabel "routed-consultation" ;
|
|
152
|
+
skos:definition "A board post produced by the spec-329 routing pipeline (turn-1 status post or turn-2 synthesized reply). Ref id = <orgSA>/<topicId>/<questionId>; UIs render it as a consultation chip with member attribution." .
|
|
153
|
+
|
|
154
|
+
apmsg:endeavorRef a skos:Concept ; skos:inScheme apmsg:contextRefKindScheme ;
|
|
155
|
+
skos:prefLabel "endeavor" ;
|
|
156
|
+
skos:definition "A message about a coordination Endeavor (spec 334 §9). Ref id = <managingPrincipalSA>/<endeavorId>; UIs render it as an endeavor chip deep-linking to the Endeavor detail. A pointer only — never authority, never a coordination record." .
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# C-box — value spaces for the three public profile facets (spec 331; facet-registries G2/G3/G4).
|
|
2
|
+
#
|
|
3
|
+
# These are VALUE SPACES, not codelists: `atl:languages` and `atl:regions` draw from external,
|
|
4
|
+
# maintained registries (IANA BCP-47, ISO 3166 / GeoFeatureRegistry) that must NOT be term-copied
|
|
5
|
+
# into this repo (architecture invariant 11 — external schemes are ALIGNED, never copied; and a
|
|
6
|
+
# copied ISO list is stale the day it is written). What is declared here is the SHAPE of a legal
|
|
7
|
+
# value, the AUTHORITY it must be drawn from, and the MATCHING RULE — which is the part a matcher
|
|
8
|
+
# has to agree on and the part nobody had written down.
|
|
9
|
+
#
|
|
10
|
+
# `atl:focusAreas` is deliberately OPEN. A focus area is an emphasis in a subject domain; closing
|
|
11
|
+
# it would force advisors to file real specialisms under a nearest-fit code, which is precisely
|
|
12
|
+
# the encoding hack spec 331 removes.
|
|
13
|
+
|
|
14
|
+
@prefix approf: <https://agenticprimitives.dev/ns/profile#> .
|
|
15
|
+
@prefix apctx: <https://agenticprimitives.dev/ns/context#> .
|
|
16
|
+
@prefix apg: <https://agenticprimitives.dev/ns/geo#> .
|
|
17
|
+
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
|
|
18
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
19
|
+
@prefix dcterms: <http://purl.org/dc/terms/> .
|
|
20
|
+
|
|
21
|
+
# ─── Languages — BCP-47, subtag-prefix matching ─────────────────────────────
|
|
22
|
+
|
|
23
|
+
approf:LanguageValueSpace a skos:ConceptScheme ;
|
|
24
|
+
rdfs:label "atl:languages value space" ;
|
|
25
|
+
dcterms:source <https://www.rfc-editor.org/rfc/rfc5646> ;
|
|
26
|
+
skos:note "OPEN value space: any well-formed BCP-47 language tag, normalized LOWERCASE, comma-separated. 'es', 'en', 'pt-br', 'zh-hant'." ;
|
|
27
|
+
skos:scopeNote "MATCHING RULE (normative, and the reason this file exists): a query tag matches a published tag iff one is equal to the other OR is a SUBTAG PREFIX of it at a hyphen boundary. 'es' matches 'es-ES'; 'es-ES' does NOT match 'es' (the advisor declared a broader competence than was asked for, which is a match; the reverse is not). Substring comparison is FORBIDDEN — it makes 'en' match 'zh-Hant' via no meaningful relation, and lexical accident is the class of bug this migration exists to remove." ;
|
|
28
|
+
skos:historyNote "Registered on-chain as atl:languages in governor tx 0x53acec54d850b8a790da4feda055abf81a0c2f203c1a69d0644d1a1138a18789." .
|
|
29
|
+
|
|
30
|
+
# ─── Regions — drawn from the GeoFeatureRegistry controlled vocabulary ──────
|
|
31
|
+
|
|
32
|
+
approf:RegionValueSpace a skos:ConceptScheme ;
|
|
33
|
+
rdfs:label "atl:regions value space" ;
|
|
34
|
+
dcterms:source <https://www.iso.org/iso-3166-country-codes.html> ;
|
|
35
|
+
skos:related apg:geoKind ;
|
|
36
|
+
skos:note "SEMI-OPEN value space: comma-separated UPPERCASE codes, each of which MUST be either (a) an ISO 3166-1 alpha-2 country code, (b) an ISO 3166-2 subdivision code, or (c) the code of a feature registered in GeoFeatureRegistry (spec 251) — which is how supranational spaces such as EU enter the space at all. 'EU,ES,ES-CT'." ;
|
|
37
|
+
skos:scopeNote "WHY THE GEOFEATUREREGISTRY CONSTRAINT IS LOAD-BEARING: it is what makes a later upgrade to explicit (featureId, version) references a VALUE-SPACE migration inside one predicate, rather than a new predicate plus a new projector plus a new UI (facet-registries G3, 'forward compatibility'). A code that resolves to no registered feature and no ISO entry is a conformance FAILURE, not a free-text fallback." ;
|
|
38
|
+
skos:scopeNote "MATCHING RULE: exact, case-normalized SET MEMBERSHIP over the parsed code list. No containment, no substring, no hierarchy walk — 'ES' does NOT match 'ES-CT' and vice versa in v1, because GeoFeatureRegistry's coverageRoot (the structure that would justify containment) is not projected into the knowledge graph. Deriving EU ⊃ ES from the string is exactly the kind of inference the substring hack made by accident; it must be earned from projected coverage data, not guessed." ;
|
|
39
|
+
skos:scopeNote "RELATION COLLAPSE: the five apg:geoRelation values (servesWithin, operatesIn, licensedIn, residentOf, originIn) collapse into one flat list here. Publishers SHOULD derive the published set from their servesWithin and licensedIn claims only — operatesIn, residentOf and originIn are about the advisor's own location, not about who they can serve, and publishing them here misrepresents coverage." ;
|
|
40
|
+
skos:historyNote "Registered on-chain as atl:regions in the same governor tx as atl:languages." .
|
|
41
|
+
|
|
42
|
+
# ─── Focus areas — deliberately open ────────────────────────────────────────
|
|
43
|
+
|
|
44
|
+
approf:FocusAreaValueSpace a skos:ConceptScheme ;
|
|
45
|
+
rdfs:label "atl:focusAreas value space" ;
|
|
46
|
+
skos:related apctx:KnowledgeDomain ;
|
|
47
|
+
skos:note "OPEN value space: comma-separated lowercase-hyphenated subject labels. 'modelo-720', 'forced-heirship', 'farmland'." ;
|
|
48
|
+
skos:scopeNote "MATCHING RULE: token-level containment in EITHER direction between a query term and a published label, contributing a CAPPED fitScore boost. This is deliberately the one lexical rule spec 331 keeps, and it is safe precisely because of the next constraint." ;
|
|
49
|
+
skos:scopeNote "NEVER A HARD FILTER (normative, facet-registries G4). A focus area is an emphasis, not a boundary. An agent that has not published one is UNKNOWN, not absent — and eliminating an unknown is the failure mode that made mandates.geo worse than having no geo filter at all. Any mandate that filters on focusAreas is a defect." ;
|
|
50
|
+
skos:scopeNote "A focus area is a subject domain (apctx:KnowledgeDomain), never a declared capability. Publishing 'farmland' here rather than in atl:skills is the concrete form of ADR-0051 in this substrate: an asset class is a thing you know ABOUT, not an outcome you can achieve." .
|
package/context.jsonld
CHANGED
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"apscope": "https://agenticprimitives.dev/ns/scope#",
|
|
32
32
|
"apmsg": "https://agenticprimitives.dev/ns/messaging#",
|
|
33
33
|
"apsit": "https://agenticprimitives.dev/ns/situation#",
|
|
34
|
+
"apfo": "https://agenticprimitives.dev/ns/familyoffice#",
|
|
34
35
|
"apent": "https://agenticprimitives.dev/ns/entitlement#",
|
|
35
36
|
"apfab": "https://agenticprimitives.dev/ns/fabric#",
|
|
36
37
|
|
package/dist/artifacts.d.ts
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export declare const ARTIFACTS: {
|
|
7
7
|
readonly context: "context.jsonld";
|
|
8
|
-
readonly tbox: readonly ["tbox/core.ttl", "tbox/identity.ttl", "tbox/intents.ttl", "tbox/constraints.ttl", "tbox/resolution.ttl", "tbox/agreement.ttl", "tbox/payment.ttl", "tbox/fulfillment.ttl", "tbox/attestation.ttl", "tbox/skills.ttl", "tbox/geo.ttl", "tbox/content.ttl", "tbox/registry.ttl", "tbox/discovery.ttl", "tbox/trust.ttl", "tbox/security-exposure.ttl", "tbox/verification-receipt.ttl", "tbox/scope.ttl", "tbox/situation.ttl", "tbox/org.ttl", "tbox/entitlement.ttl", "tbox/fabric.ttl", "tbox/messaging.ttl", "tbox/guidance.ttl", "tbox/actor-context.ttl"];
|
|
9
|
-
readonly cbox: readonly ["cbox/canonical-agent-id-shape.shacl.ttl", "cbox/controlled-vocabularies.ttl", "cbox/skill-vocabulary.ttl", "cbox/geo-vocabulary.ttl", "cbox/scope-vocabulary.ttl", "cbox/content-vocabulary.ttl", "cbox/discovery-graph-shapes.shacl.ttl", "cbox/interaction-vocabulary.ttl", "cbox/skill-grounding-vocabulary.ttl", "cbox/guidance-vocabulary.ttl"];
|
|
8
|
+
readonly tbox: readonly ["tbox/core.ttl", "tbox/identity.ttl", "tbox/intents.ttl", "tbox/constraints.ttl", "tbox/resolution.ttl", "tbox/agreement.ttl", "tbox/payment.ttl", "tbox/fulfillment.ttl", "tbox/attestation.ttl", "tbox/skills.ttl", "tbox/geo.ttl", "tbox/content.ttl", "tbox/registry.ttl", "tbox/discovery.ttl", "tbox/trust.ttl", "tbox/security-exposure.ttl", "tbox/verification-receipt.ttl", "tbox/scope.ttl", "tbox/situation.ttl", "tbox/org.ttl", "tbox/familyoffice.ttl", "tbox/entitlement.ttl", "tbox/fabric.ttl", "tbox/messaging.ttl", "tbox/guidance.ttl", "tbox/actor-context.ttl", "tbox/context.ttl", "tbox/profile.ttl", "tbox/execution.ttl", "tbox/plan.ttl", "tbox/coordination.ttl"];
|
|
9
|
+
readonly cbox: readonly ["cbox/canonical-agent-id-shape.shacl.ttl", "cbox/controlled-vocabularies.ttl", "cbox/skill-vocabulary.ttl", "cbox/geo-vocabulary.ttl", "cbox/scope-vocabulary.ttl", "cbox/content-vocabulary.ttl", "cbox/discovery-graph-shapes.shacl.ttl", "cbox/interaction-vocabulary.ttl", "cbox/familyoffice-vocabulary.ttl", "cbox/familyoffice-shapes.shacl.ttl", "cbox/consultation-shapes.shacl.ttl", "cbox/skill-grounding-vocabulary.ttl", "cbox/guidance-vocabulary.ttl", "cbox/profile-facet-vocabulary.ttl", "cbox/agent-facet-shapes.shacl.ttl", "cbox/capability-catalog-shapes.shacl.ttl"];
|
|
10
10
|
readonly mappings: readonly ["mappings/spine-standards.ttl", "mappings/agent-discovery-standards.ttl", "mappings/collaboration-profile.ttl", "mappings/collaboration-crosswalk-actors.ttl", "mappings/collaboration-crosswalk-organization.ttl", "mappings/collaboration-crosswalk-messaging.ttl", "mappings/collaboration-crosswalk-intent.ttl", "mappings/collaboration-crosswalk-skills.ttl", "mappings/collaboration-crosswalk-authority.ttl", "mappings/collaboration-crosswalk-protocols.ttl", "mappings/collaboration-crosswalk-guidance.ttl", "mappings/actor-context-standards.ttl"];
|
|
11
11
|
};
|
|
12
12
|
/**
|
package/dist/artifacts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;
|
|
1
|
+
{"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,SAAS;;;;;CAsGZ,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|
package/dist/artifacts.js
CHANGED
|
@@ -41,6 +41,9 @@ export const ARTIFACTS = {
|
|
|
41
41
|
// Unified interaction ontology (spec 324; ADR-0048)
|
|
42
42
|
'tbox/situation.ttl',
|
|
43
43
|
'tbox/org.ttl',
|
|
44
|
+
// FamilyOffice domain ontology (New City AI) — the family-office org + member
|
|
45
|
+
// relationships (kinship/guardianship/ownership/trusteeship) as Situations.
|
|
46
|
+
'tbox/familyoffice.ttl',
|
|
44
47
|
'tbox/entitlement.ttl',
|
|
45
48
|
'tbox/fabric.ttl',
|
|
46
49
|
'tbox/messaging.ttl',
|
|
@@ -48,6 +51,19 @@ export const ARTIFACTS = {
|
|
|
48
51
|
'tbox/guidance.ttl',
|
|
49
52
|
// Actor context + portable authority chain (spec 326; ADR-0052)
|
|
50
53
|
'tbox/actor-context.ttl',
|
|
54
|
+
// Orthogonal context facets + capability-map views (spec 330 W0, unparked by spec 331)
|
|
55
|
+
'tbox/context.ttl',
|
|
56
|
+
// The public agent profile facet (spec 217/282; facet-registries G2/G3/G4) — approf: was a
|
|
57
|
+
// declared namespace with NO T-box module until spec 331, while the indexer wrote it live.
|
|
58
|
+
'tbox/profile.ttl',
|
|
59
|
+
// Execution plane (spec 330 §8 W0 subset) — the apexec:/aprole: classes the shipped
|
|
60
|
+
// realization contracts target. Declared so a contract's sh:targetClass names something real
|
|
61
|
+
// instead of validating an empty set by vacuity.
|
|
62
|
+
'tbox/execution.ttl',
|
|
63
|
+
// P-Plan grounding (spec 332 §4; closes spec-316 W5) — the plan trichotomy
|
|
64
|
+
'tbox/plan.ttl',
|
|
65
|
+
// Coordination plane (spec 332 core subset; ADR-0054) — Endeavor / shared plan / participation
|
|
66
|
+
'tbox/coordination.ttl',
|
|
51
67
|
],
|
|
52
68
|
cbox: [
|
|
53
69
|
'cbox/canonical-agent-id-shape.shacl.ttl',
|
|
@@ -63,9 +79,22 @@ export const ARTIFACTS = {
|
|
|
63
79
|
'cbox/discovery-graph-shapes.shacl.ttl',
|
|
64
80
|
// Interaction / organization codelists (spec 324)
|
|
65
81
|
'cbox/interaction-vocabulary.ttl',
|
|
82
|
+
// FamilyOffice codelists (New City AI) — kinshipKind / roleKind / ownershipKind
|
|
83
|
+
'cbox/familyoffice-vocabulary.ttl',
|
|
84
|
+
// FamilyOffice relationship-archetype shapes (New City AI) — a NodeShape per apfo relationship,
|
|
85
|
+
// validating role bindings + typed body before a portal vault-first write.
|
|
86
|
+
'cbox/familyoffice-shapes.shacl.ttl',
|
|
87
|
+
// Routed-consultation artifact shapes (spec 329 §6)
|
|
88
|
+
'cbox/consultation-shapes.shacl.ttl',
|
|
66
89
|
// Skill grounding protocols (spec 325)
|
|
67
90
|
'cbox/skill-grounding-vocabulary.ttl',
|
|
68
91
|
'cbox/guidance-vocabulary.ttl',
|
|
92
|
+
// Value spaces for the three public profile facets (BCP-47 / GeoFeatureRegistry / open)
|
|
93
|
+
'cbox/profile-facet-vocabulary.ttl',
|
|
94
|
+
// Profile-facet + trust-fabric shapes (spec 331)
|
|
95
|
+
'cbox/agent-facet-shapes.shacl.ttl',
|
|
96
|
+
// Capability catalog well-formedness, the anti-pattern axioms, and realization contracts
|
|
97
|
+
'cbox/capability-catalog-shapes.shacl.ttl',
|
|
69
98
|
],
|
|
70
99
|
mappings: [
|
|
71
100
|
'mappings/spine-standards.ttl',
|
package/dist/artifacts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,6EAA6E;AAC7E,yCAAyC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE;QACJ,4BAA4B;QAC5B,eAAe;QACf,mBAAmB;QACnB,8DAA8D;QAC9D,kBAAkB;QAClB,sBAAsB;QACtB,qBAAqB;QACrB,oBAAoB;QACpB,kBAAkB;QAClB,sBAAsB;QACtB,sBAAsB;QACtB,4CAA4C;QAC5C,iBAAiB;QACjB,cAAc;QACd,kDAAkD;QAClD,kBAAkB;QAClB,oEAAoE;QACpE,mBAAmB;QACnB,oBAAoB;QACpB,gBAAgB;QAChB,4BAA4B;QAC5B,8DAA8D;QAC9D,+BAA+B;QAC/B,yBAAyB;QACzB,gBAAgB;QAChB,oDAAoD;QACpD,oBAAoB;QACpB,cAAc;QACd,sBAAsB;QACtB,iBAAiB;QACjB,oBAAoB;QACpB,oFAAoF;QACpF,mBAAmB;QACnB,gEAAgE;QAChE,wBAAwB;
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,6EAA6E;AAC7E,yCAAyC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE;QACJ,4BAA4B;QAC5B,eAAe;QACf,mBAAmB;QACnB,8DAA8D;QAC9D,kBAAkB;QAClB,sBAAsB;QACtB,qBAAqB;QACrB,oBAAoB;QACpB,kBAAkB;QAClB,sBAAsB;QACtB,sBAAsB;QACtB,4CAA4C;QAC5C,iBAAiB;QACjB,cAAc;QACd,kDAAkD;QAClD,kBAAkB;QAClB,oEAAoE;QACpE,mBAAmB;QACnB,oBAAoB;QACpB,gBAAgB;QAChB,4BAA4B;QAC5B,8DAA8D;QAC9D,+BAA+B;QAC/B,yBAAyB;QACzB,gBAAgB;QAChB,oDAAoD;QACpD,oBAAoB;QACpB,cAAc;QACd,8EAA8E;QAC9E,4EAA4E;QAC5E,uBAAuB;QACvB,sBAAsB;QACtB,iBAAiB;QACjB,oBAAoB;QACpB,oFAAoF;QACpF,mBAAmB;QACnB,gEAAgE;QAChE,wBAAwB;QACxB,uFAAuF;QACvF,kBAAkB;QAClB,2FAA2F;QAC3F,2FAA2F;QAC3F,kBAAkB;QAClB,oFAAoF;QACpF,6FAA6F;QAC7F,iDAAiD;QACjD,oBAAoB;QACpB,2EAA2E;QAC3E,eAAe;QACf,+FAA+F;QAC/F,uBAAuB;KACxB;IACD,IAAI,EAAE;QACJ,yCAAyC;QACzC,kCAAkC;QAClC,6EAA6E;QAC7E,2BAA2B;QAC3B,yBAAyB;QACzB,0DAA0D;QAC1D,2BAA2B;QAC3B,oEAAoE;QACpE,6BAA6B;QAC7B,kEAAkE;QAClE,uCAAuC;QACvC,kDAAkD;QAClD,iCAAiC;QACjC,gFAAgF;QAChF,kCAAkC;QAClC,gGAAgG;QAChG,2EAA2E;QAC3E,oCAAoC;QACpC,oDAAoD;QACpD,oCAAoC;QACpC,uCAAuC;QACvC,qCAAqC;QACrC,8BAA8B;QAC9B,wFAAwF;QACxF,mCAAmC;QACnC,iDAAiD;QACjD,mCAAmC;QACnC,yFAAyF;QACzF,0CAA0C;KAC3C;IACD,QAAQ,EAAE;QACR,8BAA8B;QAC9B,wCAAwC;QACxC,wDAAwD;QACxD,oCAAoC;QACpC,6CAA6C;QAC7C,mDAAmD;QACnD,gDAAgD;QAChD,6CAA6C;QAC7C,6CAA6C;QAC7C,gDAAgD;QAChD,gDAAgD;QAChD,+CAA+C;QAC/C,yFAAyF;QACzF,sCAAsC;KACvC;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,YAAoB;IAC/C,OAAO,aAAa,CAAC,IAAI,GAAG,CAAC,MAAM,YAAY,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC"}
|