Context reference
A place and why it matters, with explicit guest-profile or trip scope.
Source reference details
The source snapshot pins the input files; the schema profile identifies their reading context.
- Schema profile
- zendo@0.5.0
p-f00751fd5cb933c54668c32e99fa66a3dce99f6f08b38a992dbc1f0e955565c2 - Source snapshot
s-be6ad60eee907ae2864ca8fddf0a8713fad1eb380b06ae299ccaec241238e6d2
- Revision
d-1c73ef62b86c63c7d2025d2428a429626671f1b3a06ed24b7f677cd488f990c9- Occurrence
o-10596161da8132e37d3d11cbd5f058d5c1cb3f497726478184f7c9a0a4a51f25- Producer state
- Prototype
- Website state
- viewer-source-not-published
- Attribution
- Unknown. Source association is not authorship or approval.
- Identity
- context.referencePoints[].id
- Owner
- Concierge confirms; Hermes may propose.
Fields 18
| Field | Contract |
|---|---|
idRequired | stringStable record ID; on Guest Profile, the legacy guest-ID alias. Schema constraints{
"type": "string",
"maxLength": 120
} |
guestIdRequired | stringThe Guest this record concerns. Schema constraints{
"type": "string",
"maxLength": 120
} |
scopeRequired | guest | briefGuest-profile or active-trip ownership of a place reference. Schema constraints{
"enum": [
"guest",
"brief"
]
} |
briefIdRequired | string | nullActive trip reference for trip scope; null for reusable guest scope. Schema constraints{
"type": [
"string",
"null"
]
} |
labelRequired | stringSchema constraints{
"type": "string",
"minLength": 1,
"maxLength": 120
} |
categoryRequired | Work | Lifestyle | Transport | OtherSchema constraints{
"enum": [
"Work",
"Lifestyle",
"Transport",
"Other"
]
} |
latRequired | numberSchema constraints{
"type": "number",
"minimum": 49.15,
"maximum": 49.4
} |
lngRequired | numberSchema constraints{
"type": "number",
"minimum": -123.35,
"maximum": -122.9
} |
notesRequired | stringOrdinary freeform notes in the owning record. Schema constraints{
"type": "string",
"maxLength": 2000
} |
statusRequired | suggested | confirmedSchema constraints{
"enum": [
"suggested",
"confirmed"
]
} |
placeIdOptional | string | nullSchema constraints{
"type": [
"string",
"null"
]
} |
sourceRequired | objectSchema constraints{
"type": "object"
} |
createdByRequired | objectSchema constraints{
"type": "object"
} |
updatedByRequired | objectSchema constraints{
"type": "object"
} |
confirmedByRequired | object | nullSchema constraints{
"type": [
"object",
"null"
]
} |
relationshipOptional | pinned | relevant | profile-context | itinerary-optionPinned guest preference, relevant trip place, or unclassified older profile context. Schema constraints{
"enum": [
"pinned",
"relevant",
"profile-context",
"itinerary-option"
],
"description": "Reference role. itinerary-option is a brief-scoped candidate place, not a reservation, scheduled visit or durable guest favourite."
} |
preferenceEvidenceOptional | object | nullThe guest’s expressed interest as recorded by the concierge; not authenticated guest approval. Schema constraints{
"type": [
"object",
"null"
],
"description": "Guest-stated interest, recordedBy/recordedAt and guestConfirmation null. Required by service for new profile pins."
} |
planningOriginOptional | object | nullServer-verified source session, point and dataset lineage. Schema constraints{
"type": [
"object",
"null"
],
"description": "Planning session/point IDs, dataset hash, original source/evidence and generating actor, assigned by service."
} |
Scope & rules
- Guest scope is reusable and has no brief ID. Trip scope binds to the active brief.
- Suggested context is not treated as a confirmed fact.
- Creator, source and confirming concierge are separate attributions.
- New profile pins require a concierge-recorded statement of the guest’s expressed interest. Hermes cannot pin profile favourites.
- Earlier guest references remain profile-context until explicitly reviewed; no liking is inferred by migration.
- Explicit promotion from a planning point carries its source session and dataset lineage.
- Trip-scoped itinerary-option references are candidates, not scheduled visits, reservations or profile favourites.
Relationships
Pinned source artifacts
catalog.json ↗fc80ccf855bd99b377839827180548c8377ea0e0719447f9f132529a913af102
zendo.schema.json ↗82ba5825bccaa5c7d3b7bde8fb47597e41e88edda4dec18cded8063952219278
devgraph.ontology.json ↗afd935f58e1a0ec2af090cf4d09f5e14a83c62e1280d96390d2ec2a75d648c95
Exact source node
{
"id": "context-reference",
"label": "Context reference",
"kind": "Record",
"group": "Homes & places",
"description": "A place and why it matters, with explicit guest-profile or trip scope.",
"fields": [
{
"name": "id",
"type": "string",
"required": true,
"description": "Stable record ID; on Guest Profile, the legacy guest-ID alias.",
"schema": {
"type": "string",
"maxLength": 120
}
},
{
"name": "guestId",
"type": "string",
"required": true,
"description": "The Guest this record concerns.",
"schema": {
"type": "string",
"maxLength": 120
}
},
{
"name": "scope",
"type": "guest | brief",
"required": true,
"description": "Guest-profile or active-trip ownership of a place reference.",
"schema": {
"enum": [
"guest",
"brief"
]
}
},
{
"name": "briefId",
"type": "string | null",
"required": true,
"description": "Active trip reference for trip scope; null for reusable guest scope.",
"schema": {
"type": [
"string",
"null"
]
}
},
{
"name": "label",
"type": "string",
"required": true,
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
{
"name": "category",
"type": "Work | Lifestyle | Transport | Other",
"required": true,
"schema": {
"enum": [
"Work",
"Lifestyle",
"Transport",
"Other"
]
}
},
{
"name": "lat",
"type": "number",
"required": true,
"schema": {
"type": "number",
"minimum": 49.15,
"maximum": 49.4
}
},
{
"name": "lng",
"type": "number",
"required": true,
"schema": {
"type": "number",
"minimum": -123.35,
"maximum": -122.9
}
},
{
"name": "notes",
"type": "string",
"required": true,
"description": "Ordinary freeform notes in the owning record.",
"schema": {
"type": "string",
"maxLength": 2000
}
},
{
"name": "status",
"type": "suggested | confirmed",
"required": true,
"schema": {
"enum": [
"suggested",
"confirmed"
]
}
},
{
"name": "placeId",
"type": "string | null",
"required": false,
"schema": {
"type": [
"string",
"null"
]
}
},
{
"name": "source",
"type": "object",
"required": true,
"schema": {
"type": "object"
}
},
{
"name": "createdBy",
"type": "object",
"required": true,
"schema": {
"type": "object"
}
},
{
"name": "updatedBy",
"type": "object",
"required": true,
"schema": {
"type": "object"
}
},
{
"name": "confirmedBy",
"type": "object | null",
"required": true,
"schema": {
"type": [
"object",
"null"
]
}
},
{
"name": "relationship",
"type": "pinned | relevant | profile-context | itinerary-option",
"required": false,
"description": "Pinned guest preference, relevant trip place, or unclassified older profile context.",
"schema": {
"enum": [
"pinned",
"relevant",
"profile-context",
"itinerary-option"
],
"description": "Reference role. itinerary-option is a brief-scoped candidate place, not a reservation, scheduled visit or durable guest favourite."
}
},
{
"name": "preferenceEvidence",
"type": "object | null",
"required": false,
"description": "The guest’s expressed interest as recorded by the concierge; not authenticated guest approval.",
"schema": {
"type": [
"object",
"null"
],
"description": "Guest-stated interest, recordedBy/recordedAt and guestConfirmation null. Required by service for new profile pins."
}
},
{
"name": "planningOrigin",
"type": "object | null",
"required": false,
"description": "Server-verified source session, point and dataset lineage.",
"schema": {
"type": [
"object",
"null"
],
"description": "Planning session/point IDs, dataset hash, original source/evidence and generating actor, assigned by service."
}
}
],
"rules": [
"Guest scope is reusable and has no brief ID. Trip scope binds to the active brief.",
"Suggested context is not treated as a confirmed fact.",
"Creator, source and confirming concierge are separate attributions.",
"New profile pins require a concierge-recorded statement of the guest’s expressed interest. Hermes cannot pin profile favourites.",
"Earlier guest references remain profile-context until explicitly reviewed; no liking is inferred by migration.",
"Explicit promotion from a planning point carries its source session and dataset lineage.",
"Trip-scoped itinerary-option references are candidates, not scheduled visits, reservations or profile favourites."
],
"facts": [
{
"label": "Identity",
"value": "context.referencePoints[].id"
},
{
"label": "Owner",
"value": "Concierge confirms; Hermes may propose."
}
],
"links": [
{
"label": "can reference",
"target": "place-document",
"note": "0..* → 0..1"
},
{
"label": "may be promoted from",
"target": "planning-point",
"note": "0..* → 0..1"
}
]
}