# Vercy AI instruction - YAML 1.2 (JSON-compatible) { "vercy": "1.0-draft", "publication": { "status": "published", "adjudicationStatus": "reviewable-draft", "publishableCanonical": false, "generatedAt": "2026-10-06T22:56:55Z", "synthesisSha256": "fba99102cb177505a6f4a8b68cfe8a0fbd1abfd2eb75b6e43b39d65582488f48", "providerMode": "single-provider-waiver", "providers": [ "Codex" ], "waivedProviders": [ "Claude", "Grok" ] }, "metaModel": { "id": "WM-PLC-006", "registryId": "vr.wm-plc-006", "name": "Point of Interest", "version": "1.0.0-draft.1", "previousVersions": [], "entryKind": "entity", "family": "World Models", "category": "Physical world and living systems", "industry": [ "Cross-industry" ], "domain": [ "PHY.PLC.POI" ], "tags": [ "point", "interest", "phy.plc.poi" ], "status": "published" }, "canonicalUrl": "https://ver.cy/models/wm-plc-006-point-of-interest/", "sourceUrl": "https://github.com/ver-cy/world-models/tree/feat/mega-model-registry/research/runs/wm-plc-006", "model": { "registry_id": "vr.wm-plc-006", "model_id": "WM-PLC-006", "name": "Point of Interest", "entry_kind": "entity", "purpose": "Describe one identifiable POI for discovery and orientation through qualified assertions about a place or represented feature.", "scope_statement": "A persistent POI subject with its own identifier, source-qualified synopsis and references to independently mastered features. It is not a whole catalogue, an address register or the physical asset itself. A POI can describe an area, line or indoor location; the word point does not require point-only geometry. Multiple listings may describe the same feature without sharing record identity.", "in_scope": [ "POI identity, localized labels, category assertions and represented-feature references", "Location roles, geometry quality, entry context, observed recognition and qualified visitor information", "Listing lifecycle, provenance, stewardship, rights, selective disclosure and proposed local projection operations" ], "out_of_scope": [ "Address assignment, street naming, postal formatting, coordinate reference system definition and geocoding service execution", "Building, parcel, indoor-space, organization, event and gazetteer master lifecycles", "Route planning, real-time navigation, physical entry control, booking, payments, access certification and continuous tracking of moving persons or assets" ], "boundary_notes": [ { "neighbor": "WM-XCT-010 Location Referencing / Address", "distinction": "Reference an address or location designation when available. No mandatory civic address and no address assignment or retirement powers are inherited from legacy U7.", "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] }, { "neighbor": "WM-XCT-033 Geometry / Coordinate Reference", "distinction": "Keep POI-specific location role and observations; reference geometry and CRS definitions rather than owning transformation engines or reference-system registries.", "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] }, { "neighbor": "WM-PLC-010 Gazetteer Place", "distinction": "A gazetteer entry is an external place/name authority. POI labels can be descriptive or unofficial; record disputed name assertions without adjudicating sovereignty.", "source_refs": [ "SRC-001", "SRC-007", "SRC-008" ] }, { "neighbor": "WM-BLT-001, WM-BLT-002, WM-PLC-002 and WM-PLC-009", "distinction": "Building, premises, parcel and indoor-space references are optional candidate bindings. A POI synopsis and a represented feature have distinct identities and revision histories.", "source_refs": [ "SRC-001", "SRC-002" ] }, { "neighbor": "Legacy U7 Address and Location Referencing", "distinction": "Legacy material is reconciled as broad predecessor input. Only its POI identity, category, language, lifecycle and qualified geocode concerns survive locally. Address registrar authority and old conformance assertions are not inherited.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-007" ] } ] }, "sources": [ { "id": "SRC-001", "title": "OGC Points of Interest Conceptual Model Standard 1.0", "organization": "Open Geospatial Consortium", "url": "https://docs.ogc.org/is/21-049/21-049.html", "version_or_date": "1.0; OGC 21-049; published 2025-04-02", "source_type": "standard", "primary_source": true, "authority_tier": 1, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Sections 2, 5.3 and 6: independently identified POI and represented feature, lifespan, contact, rights and payload schema concepts. Annex A targets implementation standards. Conceptual alignment only, not an implemented encoding or certification." }, { "id": "SRC-002", "title": "Place", "organization": "Schema.org community", "url": "https://schema.org/Place", "version_or_date": "Development vocabulary page accessed 2026-10-07; release pin unresolved", "source_type": "schema", "primary_source": true, "authority_tier": 2, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Place properties support names, classification, geometry, containment, amenity and public-access descriptions. A vocabulary property does not establish truth, entry permission or ownership." }, { "id": "SRC-003", "title": "The GeoJSON Format", "organization": "Internet Engineering Task Force", "url": "https://www.rfc-editor.org/rfc/rfc7946.html", "version_or_date": "RFC 7946; August 2016", "source_type": "standard", "primary_source": true, "authority_tier": 1, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Sections 3.1, 3.2, 4, 5 and 10 support geometry projection, longitude-latitude order, explicit uncertainty limits, unlocated features and sensitive-location safeguards. Geometry alone carries no POI identity or access entitlement." }, { "id": "SRC-004", "title": "PROV-O: The PROV Ontology", "organization": "World Wide Web Consortium", "url": "https://www.w3.org/TR/prov-o/", "version_or_date": "W3C Recommendation 2013-04-30", "source_type": "ontology", "primary_source": true, "authority_tier": 1, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Entity, activity, agent, attribution and derivation provide a conceptual basis for assertion provenance. Attribution is not truth or permission." }, { "id": "SRC-005", "title": "Date and Time on the Internet: Timestamps", "organization": "Internet Engineering Task Force", "url": "https://www.rfc-editor.org/rfc/rfc3339.html", "version_or_date": "RFC 3339; July 2002; section 5.6", "source_type": "standard", "primary_source": true, "authority_tier": 1, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Instants use seconds and explicit offsets. Recurring local opening hours and uncertain historical dates require separate semantics; timestamp syntax is not a scheduling engine." }, { "id": "SRC-006", "title": "OpeningHoursSpecification", "organization": "Schema.org community", "url": "https://schema.org/OpeningHoursSpecification", "version_or_date": "Development vocabulary page accessed 2026-10-07; release pin unresolved", "source_type": "schema", "primary_source": true, "authority_tier": 2, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Opens, closes, dayOfWeek and validity fields describe schedules and overnight periods. An absent schedule is unknown in this authored model, not evidence that the place is closed." }, { "id": "SRC-007", "title": "Tags for Identifying Languages", "organization": "Internet Engineering Task Force", "url": "https://www.rfc-editor.org/rfc/rfc5646.html", "version_or_date": "RFC 5646; BCP 47; September 2009", "source_type": "standard", "primary_source": true, "authority_tier": 1, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Sections 2 and 4 support language tagging and language/script distinctions. Tags do not establish official naming authority or translation equivalence." }, { "id": "SRC-008", "title": "Spatial Data on the Web Best Practices", "organization": "World Wide Web Consortium and Open Geospatial Consortium", "url": "https://www.w3.org/TR/sdw-bp/", "version_or_date": "2023-09-19 Group Draft Note heading; OGC 15-107; non-normative guidance", "source_type": "first-party-doc", "primary_source": true, "authority_tier": 2, "accessed_at": "2026-10-06T22:55:42Z", "relevance": "Best practices 1, 3, 5-11 and sections 4.5-4.6 support persistent spatial references, geometry qualification, change and responsible disclosure. Page status wording differs between heading and prose; no Recommendation claim is made." } ], "structure": { "bundles": [ { "id": "bundle-identity", "name": "Identity and naming", "description": "Persistent POI identity and culturally qualified naming remain distinct.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-007", "SRC-008" ], "layers": [ { "id": "layer-identity", "name": "Identity and represented feature", "description": "Keep POI identity, source listing ID and represented-feature identity separate. Similar names, shared coordinates and common addresses only suggest matches.", "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ], "findings": [ { "id": "finding-identity", "name": "Persistent POI identity and reconciliation", "description": "Keep POI identity, source listing ID and represented-feature identity separate. Similar names, shared coordinates and common addresses only suggest matches.", "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ], "questions": [ { "id": "q-identity-1", "kind": "identity", "text": "Which master identifier and namespace identify this POI independently of the feature and source listings it describes?", "answer_data": [ "identity: poiId, namespace, masterRef, sourceListingRefs, representedFeatureRefs", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-identity-2", "kind": "definition", "text": "What makes this a single POI subject rather than a catalogue, event, organization or moving asset?", "answer_data": [ "boundary: subjectKind, discoveryPurpose, spatialAnchor, boundaryRationale, unresolvedScope", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-identity-3", "kind": "validation", "text": "Which evidence supports or rejects an asserted duplicate, split or successor relationship?", "answer_data": [ "reconciliation: candidateRef, matchType, evidenceRefs, reviewerRole, decision, effectiveInterval", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-identity-1", "name": "identity", "description": "Candidate nested field group: identity: poiId, namespace, masterRef, sourceListingRefs, representedFeatureRefs. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] }, { "id": "data-identity-2", "name": "boundary", "description": "Candidate nested field group: boundary: subjectKind, discoveryPurpose, spatialAnchor, boundaryRationale, unresolvedScope. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] }, { "id": "data-identity-3", "name": "reconciliation", "description": "Candidate nested field group: reconciliation: candidateRef, matchType, evidenceRefs, reviewerRole, decision, effectiveInterval. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-identity", "name": "Identity and represented feature register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-names", "name": "Names and language", "description": "Keep names, aliases, historic forms and display labels as attributed values. Display preference is not official status; language tags do not prove equivalence.", "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ], "findings": [ { "id": "finding-names", "name": "Localized labels and naming claims", "description": "Keep names, aliases, historic forms and display labels as attributed values. Display preference is not official status; language tags do not prove equivalence.", "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ], "questions": [ { "id": "q-names-1", "kind": "classification", "text": "Which labels, languages and scripts describe the POI, including an explicit unnamed or unknown case?", "answer_data": [ "labels: text, languageTag, script, labelRole, missingReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-names-2", "kind": "authority", "text": "What evidence and jurisdiction qualify any official-name claim?", "answer_data": [ "authority: nameRef, authorityRef, jurisdiction, evidenceRef, claimStatus, validInterval", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-names-3", "kind": "temporal", "text": "How are former names, transliterations and disputed alternatives retained and selected for a requested language?", "answer_data": [ "selection: labelRefs, selectionPolicy, validInterval, transliterationMethod, disputeStatus", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-names-1", "name": "labels", "description": "Candidate nested field group: labels: text, languageTag, script, labelRole, missingReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ] }, { "id": "data-names-2", "name": "authority", "description": "Candidate nested field group: authority: nameRef, authorityRef, jurisdiction, evidenceRef, claimStatus, validInterval. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ] }, { "id": "data-names-3", "name": "selection", "description": "Candidate nested field group: selection: labelRefs, selectionPolicy, validInterval, transliterationMethod, disputeStatus. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ] } ], "artifacts": [ { "id": "artifact-names", "name": "Names and language register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002", "SRC-007" ] } ], "inline_only_rationale": null } ] } ] }, { "id": "bundle-location", "name": "Location and place context", "description": "Spatial representations and approach references require explicit meaning and quality.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ], "layers": [ { "id": "layer-geometry", "name": "Spatial representation", "description": "Distinguish display point, entrance, extent and relative indoor anchor. Coordinate corrections need not create a new POI. Unknown geometry cannot silently become a fabricated coordinate.", "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ], "findings": [ { "id": "finding-geometry", "name": "Geometry roles and uncertainty", "description": "Distinguish display point, entrance, extent and relative indoor anchor. Coordinate corrections need not create a new POI. Unknown geometry cannot silently become a fabricated coordinate.", "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ], "questions": [ { "id": "q-geometry-1", "kind": "spatial", "text": "Which location representation is used for display, extent or arrival, and what CRS, axis order and level qualify it?", "answer_data": [ "location: geometryRef, geometryRole, crsRef, axisOrder, units, verticalDatum, indoorLevel, unresolvedReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-geometry-2", "kind": "measurement", "text": "How was each position observed or transformed, with what uncertainty and conditions?", "answer_data": [ "quality: method, sourceGeometryRef, transformRef, uncertaintyValue, uncertaintyUnit, confidenceBasis, observationTime, conditions", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-geometry-3", "kind": "constraint", "text": "When must a geometry projection be refused because its role, coordinate system or accuracy is unsuitable?", "answer_data": [ "projectionGate: targetProfile, requiredAccuracy, knownLosses, geometryValidity, refusalReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-geometry-1", "name": "location", "description": "Candidate nested field group: location: geometryRef, geometryRole, crsRef, axisOrder, units, verticalDatum, indoorLevel, unresolvedReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] }, { "id": "data-geometry-2", "name": "quality", "description": "Candidate nested field group: quality: method, sourceGeometryRef, transformRef, uncertaintyValue, uncertaintyUnit, confidenceBasis, observationTime, conditions. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] }, { "id": "data-geometry-3", "name": "projectionGate", "description": "Candidate nested field group: projectionGate: targetProfile, requiredAccuracy, knownLosses, geometryValidity, refusalReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-geometry", "name": "Spatial representation register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-context", "name": "Place context and approach", "description": "Record typed containment, adjacency and address references without inferring legal occupancy, parcel rights or a traversable route. An entrance may have a distinct access profile from the POI.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ], "findings": [ { "id": "finding-context", "name": "Qualified spatial links and entrances", "description": "Record typed containment, adjacency and address references without inferring legal occupancy, parcel rights or a traversable route. An entrance may have a distinct access profile from the POI.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ], "questions": [ { "id": "q-context-1", "kind": "relationship", "text": "Which places, buildings, parcels or indoor spaces contain or adjoin this POI, according to which evidence?", "answer_data": [ "relations: targetRef, relationType, assertedOrComputed, geometryRevision, evidenceRef, validInterval", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-context-2", "kind": "composition", "text": "Which address, entrance or approach references serve each intended arrival context?", "answer_data": [ "approach: addressRef, entranceRef, role, levelRef, travelModeContext, observationRef", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-context-3", "kind": "access", "text": "Which physical access restrictions or unknown conditions apply at each entrance independently of map visibility?", "answer_data": [ "entry: entranceRef, accessConditionRef, authorityRef, effectiveInterval, uncertainty, verificationDate", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-context-1", "name": "relations", "description": "Candidate nested field group: relations: targetRef, relationType, assertedOrComputed, geometryRevision, evidenceRef, validInterval. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ] }, { "id": "data-context-2", "name": "approach", "description": "Candidate nested field group: approach: addressRef, entranceRef, role, levelRef, travelModeContext, observationRef. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ] }, { "id": "data-context-3", "name": "entry", "description": "Candidate nested field group: entry: entranceRef, accessConditionRef, authorityRef, effectiveInterval, uncertainty, verificationDate. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-context", "name": "Place context and approach register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-008" ] } ], "inline_only_rationale": null } ] } ] }, { "id": "bundle-description", "name": "Description and recognition", "description": "Capabilities, categories and recognition evidence support discovery without guaranteeing use.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004", "SRC-008" ], "layers": [ { "id": "layer-capability", "name": "Categories and amenities", "description": "Use versioned category assertions and conditional amenities. A facility description does not execute a service, guarantee availability or confer permission.", "source_refs": [ "SRC-001", "SRC-002" ], "findings": [ { "id": "finding-capability", "name": "Classification and possible visitor uses", "description": "Use versioned category assertions and conditional amenities. A facility description does not execute a service, guarantee availability or confer permission.", "source_refs": [ "SRC-001", "SRC-002" ], "questions": [ { "id": "q-capability-1", "kind": "classification", "text": "Which category scheme, version and terms classify this POI and what competing assignments remain?", "answer_data": [ "category: schemeRef, version, term, evidenceRef, competingTerms, reviewStatus", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-capability-2", "kind": "requirement", "text": "What amenities or visitor activities are described, with which conditions, restrictions and applicability?", "answer_data": [ "capability: amenityOrActivityRef, conditions, availabilityBasis, applicability, sourceRef", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-capability-3", "kind": "exception", "text": "Which unsupported accessibility, safety or service claims must remain unknown or be delegated to a qualified profile?", "answer_data": [ "limits: claimRef, assessedCriteria, assessmentRef, missingEvidence, delegatedProfile, refusalReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-capability-1", "name": "category", "description": "Candidate nested field group: category: schemeRef, version, term, evidenceRef, competingTerms, reviewStatus. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] }, { "id": "data-capability-2", "name": "capability", "description": "Candidate nested field group: capability: amenityOrActivityRef, conditions, availabilityBasis, applicability, sourceRef. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] }, { "id": "data-capability-3", "name": "limits", "description": "Candidate nested field group: limits: claimRef, assessedCriteria, assessmentRef, missingEvidence, delegatedProfile, refusalReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] } ], "artifacts": [ { "id": "artifact-capability", "name": "Categories and amenities register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-recognition", "name": "Recognition and observations", "description": "Identify signs, imagery and observation references without treating a matching label or image as proof of identity. Observations are time-bound and may be stale or conflicting.", "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ], "findings": [ { "id": "finding-recognition", "name": "Evidence for on-site recognition", "description": "Identify signs, imagery and observation references without treating a matching label or image as proof of identity. Observations are time-bound and may be stale or conflicting.", "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ], "questions": [ { "id": "q-recognition-1", "kind": "evidence", "text": "Which signs, images or landmarks help distinguish this POI from nearby or similarly named places?", "answer_data": [ "recognition: signText, imageRef, landmarkRef, distinguishingFeature, evidenceRights", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-recognition-2", "kind": "provenance", "text": "Who observed each recognition cue, when and by what method under which conditions?", "answer_data": [ "observation: observerRole, evidenceRef, observationTime, method, conditions, uncertainty", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-recognition-3", "kind": "quality", "text": "What changes or contradictory observations make the recognition evidence stale or unsafe to rely on?", "answer_data": [ "assessment: evidenceRefs, contradiction, freshnessPolicy, reviewTime, assessmentStatus", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-recognition-1", "name": "recognition", "description": "Candidate nested field group: recognition: signText, imageRef, landmarkRef, distinguishingFeature, evidenceRights. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ] }, { "id": "data-recognition-2", "name": "observation", "description": "Candidate nested field group: observation: observerRole, evidenceRef, observationTime, method, conditions, uncertainty. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ] }, { "id": "data-recognition-3", "name": "assessment", "description": "Candidate nested field group: assessment: evidenceRefs, contradiction, freshnessPolicy, reviewTime, assessmentStatus. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-recognition", "name": "Recognition and observations register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-002", "SRC-004", "SRC-008" ] } ], "inline_only_rationale": null } ] } ] }, { "id": "bundle-time", "name": "Availability and change", "description": "Schedules, observed availability and lifecycle changes have separate semantics.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004", "SRC-005", "SRC-006", "SRC-008" ], "layers": [ { "id": "layer-hours", "name": "Schedules and visitor availability", "description": "Separate recurring local hours from instants, exceptional closures and real-time availability. Missing schedules mean unknown. Natural landmarks need not have operator opening hours.", "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ], "findings": [ { "id": "finding-hours", "name": "Qualified opening schedules and exceptions", "description": "Separate recurring local hours from instants, exceptional closures and real-time availability. Missing schedules mean unknown. Natural landmarks need not have operator opening hours.", "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ], "questions": [ { "id": "q-hours-1", "kind": "temporal", "text": "What regular hours, local time zone and validity interval apply to the place or specific service?", "answer_data": [ "schedule: subjectRef, weekdays, localOpenTime, localCloseTime, timeZoneRef, validFrom, validThrough, applicability", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-hours-2", "kind": "exception", "text": "Which holiday, seasonal, overnight or temporary exceptions override a schedule, and with what precedence?", "answer_data": [ "exceptions: scheduleRef, exceptionInterval, localCalendarRef, precedenceRule, overnightRule, unresolvedConflict", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-hours-3", "kind": "state", "text": "How does the evidence distinguish scheduled opening from observed availability, appointment-only use or unknown status?", "answer_data": [ "availability: state, appointmentConditionRef, sourceRef, observationTime, freshnessLimit, unknownReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-hours-1", "name": "schedule", "description": "Candidate nested field group: schedule: subjectRef, weekdays, localOpenTime, localCloseTime, timeZoneRef, validFrom, validThrough, applicability. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ] }, { "id": "data-hours-2", "name": "exceptions", "description": "Candidate nested field group: exceptions: scheduleRef, exceptionInterval, localCalendarRef, precedenceRule, overnightRule, unresolvedConflict. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ] }, { "id": "data-hours-3", "name": "availability", "description": "Candidate nested field group: availability: state, appointmentConditionRef, sourceRef, observationTime, freshnessLimit, unknownReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ] } ], "artifacts": [ { "id": "artifact-hours", "name": "Schedules and visitor availability register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-002", "SRC-005", "SRC-006" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-lifecycle", "name": "Lifecycle and temporal continuity", "description": "Separate feature existence, operational status and listing publication state. Closure does not erase a landmark; relocation or operator replacement needs an explicit identity decision.", "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ], "findings": [ { "id": "finding-lifecycle", "name": "POI existence, listing status and changes", "description": "Separate feature existence, operational status and listing publication state. Closure does not erase a landmark; relocation or operator replacement needs an explicit identity decision.", "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ], "questions": [ { "id": "q-lifecycle-1", "kind": "lifecycle", "text": "Which evidence distinguishes proposed, active, temporarily closed, ceased, historical and retired listing states?", "answer_data": [ "states: featureState, operationalState, listingState, evidenceRef, uncertainty", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-lifecycle-2", "kind": "event", "text": "Which rename, relocation, closure or operator-change event affects the POI and what identity decision follows?", "answer_data": [ "changes: eventType, effectiveTime, evidenceRef, priorRevision, successorRef, identityDecision", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-lifecycle-3", "kind": "temporal", "text": "What are the separate validity, observation and ingestion times for a changed assertion?", "answer_data": [ "time: validFrom, validTo, observedAt, ingestedAt, precision, uncertainBounds", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-lifecycle-1", "name": "states", "description": "Candidate nested field group: states: featureState, operationalState, listingState, evidenceRef, uncertainty. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ] }, { "id": "data-lifecycle-2", "name": "changes", "description": "Candidate nested field group: changes: eventType, effectiveTime, evidenceRef, priorRevision, successorRef, identityDecision. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ] }, { "id": "data-lifecycle-3", "name": "time", "description": "Candidate nested field group: time: validFrom, validTo, observedAt, ingestedAt, precision, uncertainBounds. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-lifecycle", "name": "Lifecycle and temporal continuity register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-004", "SRC-005", "SRC-008" ] } ], "inline_only_rationale": null } ] } ] }, { "id": "bundle-stewardship", "name": "Stewardship and evidence", "description": "Accountable roles and assertion lineage support controlled review.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004", "SRC-008" ], "layers": [ { "id": "layer-stewardship", "name": "Stewardship and contacts", "description": "Keep catalogue custodian, contributor, place operator, property holder and naming authority separate. A contact channel or source attribution grants no update rights.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ], "findings": [ { "id": "finding-stewardship", "name": "Role-qualified responsibility and update authority", "description": "Keep catalogue custodian, contributor, place operator, property holder and naming authority separate. A contact channel or source attribution grants no update rights.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ], "questions": [ { "id": "q-stewardship-1", "kind": "ownership", "text": "Which role stewards the POI record and which separately referenced roles operate or hold rights in the place?", "answer_data": [ "responsibility: custodianRole, operatorRef, propertyRightsRef, contactRef, roleEvidence", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-stewardship-2", "kind": "authority", "text": "What mandate permits each contributor to propose, review or approve a POI change?", "answer_data": [ "permissions: contributorRole, actionScope, mandateRef, validInterval, approvalRule", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-stewardship-3", "kind": "privacy", "text": "Which contact details can be exposed for the stated purpose without exposing private resident or contributor data?", "answer_data": [ "contacts: channelRef, purpose, disclosureScope, reviewRole, sensitivity, retentionRule", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-stewardship-1", "name": "responsibility", "description": "Candidate nested field group: responsibility: custodianRole, operatorRef, propertyRightsRef, contactRef, roleEvidence. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ] }, { "id": "data-stewardship-2", "name": "permissions", "description": "Candidate nested field group: permissions: contributorRole, actionScope, mandateRef, validInterval, approvalRule. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ] }, { "id": "data-stewardship-3", "name": "contacts", "description": "Candidate nested field group: contacts: channelRef, purpose, disclosureScope, reviewRole, sensitivity, retentionRule. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ] } ], "artifacts": [ { "id": "artifact-stewardship", "name": "Stewardship and contacts register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002", "SRC-004" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-evidence", "name": "Assertion provenance and review", "description": "Link assertions to sources, revisions and review decisions. A source identifier, digest or contributor role cannot establish factual accuracy.", "source_refs": [ "SRC-004", "SRC-008" ], "findings": [ { "id": "finding-evidence", "name": "Evidence lineage and competing assertions", "description": "Link assertions to sources, revisions and review decisions. A source identifier, digest or contributor role cannot establish factual accuracy.", "source_refs": [ "SRC-004", "SRC-008" ], "questions": [ { "id": "q-evidence-1", "kind": "provenance", "text": "Which source entity and derivation activity support each POI assertion?", "answer_data": [ "lineage: assertionId, sourceRef, sourceRevision, activityRef, contributorRole, digest", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-evidence-2", "kind": "decision", "text": "How are incompatible source values retained and a preferred projection selected without deleting the dispute?", "answer_data": [ "resolution: assertionRefs, conflictType, selectionPolicy, reviewerRole, decision, unresolvedReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-evidence-3", "kind": "quality", "text": "What evidence age, completeness or verification threshold makes a POI assertion fit for its intended use?", "answer_data": [ "fitness: intendedUse, qualityCriteria, assessmentMethod, evaluationTime, result, residualLimits", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-evidence-1", "name": "lineage", "description": "Candidate nested field group: lineage: assertionId, sourceRef, sourceRevision, activityRef, contributorRole, digest. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-004", "SRC-008" ] }, { "id": "data-evidence-2", "name": "resolution", "description": "Candidate nested field group: resolution: assertionRefs, conflictType, selectionPolicy, reviewerRole, decision, unresolvedReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-004", "SRC-008" ] }, { "id": "data-evidence-3", "name": "fitness", "description": "Candidate nested field group: fitness: intendedUse, qualityCriteria, assessmentMethod, evaluationTime, result, residualLimits. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-004", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-evidence", "name": "Assertion provenance and review register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-004", "SRC-008" ] } ], "inline_only_rationale": null } ] } ] }, { "id": "bundle-distribution", "name": "Rights and exchange", "description": "Rights-aware projections preserve limitations and external model boundaries.", "rationale": "Authored research grouping of source-supported concerns; no cited standard mandates this hierarchy.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ], "layers": [ { "id": "layer-rights", "name": "Rights and controlled disclosure", "description": "Apply source-specific reuse rights and purpose-specific release decisions. Public discovery is a controlled projection; sensitivity can require suppression. Historical continuity does not require perpetual personal-data storage.", "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ], "findings": [ { "id": "finding-rights", "name": "Licensing, sensitive locations and disposal", "description": "Apply source-specific reuse rights and purpose-specific release decisions. Public discovery is a controlled projection; sensitivity can require suppression. Historical continuity does not require perpetual personal-data storage.", "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ], "questions": [ { "id": "q-rights-1", "kind": "security", "text": "Which location or attachment details require restricted, generalized or suppressed views for each audience?", "answer_data": [ "disclosure: fieldScope, sensitivityClass, audience, policyRef, allowedPrecision, suppressionReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-rights-2", "kind": "requirement", "text": "Which licenses, attribution duties and source restrictions govern each reused description, geometry or image?", "answer_data": [ "rights: artifactRef, rightsHolderRole, licenseRef, attributionText, restriction, reviewStatus", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-rights-3", "kind": "retention", "text": "What retention, correction and disposal rules govern POI assertions, evidence and generated views?", "answer_data": [ "disposal: recordClass, retentionTrigger, holdRef, permittedAction, tombstoneScope, downstreamNoticePolicy", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-rights-1", "name": "disclosure", "description": "Candidate nested field group: disclosure: fieldScope, sensitivityClass, audience, policyRef, allowedPrecision, suppressionReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ] }, { "id": "data-rights-2", "name": "rights", "description": "Candidate nested field group: rights: artifactRef, rightsHolderRole, licenseRef, attributionText, restriction, reviewStatus. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ] }, { "id": "data-rights-3", "name": "disposal", "description": "Candidate nested field group: disposal: recordClass, retentionTrigger, holdRef, permittedAction, tombstoneScope, downstreamNoticePolicy. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-rights", "name": "Rights and controlled disclosure register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ] } ], "inline_only_rationale": null } ] }, { "id": "layer-exchange", "name": "Profiles and interoperability", "description": "Bind a local profile before exporting. OGC conceptual alignment, vocabulary use and GeoJSON serialization require separate implementation checks. Missing mandatory target fields cause refusal, not invented values.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ], "findings": [ { "id": "finding-exchange", "name": "Loss-aware projections and acceptance", "description": "Bind a local profile before exporting. OGC conceptual alignment, vocabulary use and GeoJSON serialization require separate implementation checks. Missing mandatory target fields cause refusal, not invented values.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ], "questions": [ { "id": "q-exchange-1", "kind": "interoperability", "text": "Which pinned target profile maps POI identity, geometry, payloads and provenance without conflating the represented feature?", "answer_data": [ "mapping: targetProfile, version, fieldMap, featureRefMap, payloadSchemaRef, payloadDefinitionRef, losses", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-exchange-2", "kind": "validation", "text": "Which acceptance fixtures test duplicate locations, unnamed places, uncertain geometry, overnight hours and restricted entrances?", "answer_data": [ "fixtures: caseId, inputRevision, expectedOutcome, testResult, unresolvedGap", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] }, { "id": "q-exchange-3", "kind": "process", "text": "What authority, current revision and validation evidence are required before preparing a recipient-scoped local export?", "answer_data": [ "export: requestId, recipientScope, expectedRevision, authorizationRef, validationRef, refusalReason", "Preserve explicit unknown or not-applicable reasons and assertion evidence." ] } ], "data_elements": [ { "id": "data-exchange-1", "name": "mapping", "description": "Candidate nested field group: mapping: targetProfile, version, fieldMap, featureRefMap, payloadSchemaRef, payloadDefinitionRef, losses. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ] }, { "id": "data-exchange-2", "name": "fixtures", "description": "Candidate nested field group: fixtures: caseId, inputRevision, expectedOutcome, testResult, unresolvedGap. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ] }, { "id": "data-exchange-3", "name": "export", "description": "Candidate nested field group: export: requestId, recipientScope, expectedRevision, authorizationRef, validationRef, refusalReason. A profile must define field types and constraints before instance validation.", "value_kind": "object", "cardinality": "0..n", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ] } ], "artifacts": [ { "id": "artifact-exchange", "name": "Profiles and interoperability register", "description": "Versioned POI-local assertions or evidence references for this concern; referenced masters retain their own lifecycle.", "media_or_form": [ "structured register", "authorized human-readable projection" ], "serial": true, "identity_strategy": "Authoritative master-system identifier with namespace and revision first; governed IRI next; otherwise local UUID. Entry sequence is scoped by POI identity. Dates and personal names are not identifiers.", "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-006", "SRC-008" ] } ], "inline_only_rationale": null } ] } ] } ] }, "functions": [ { "id": "resolve-poi", "name": "Resolve a qualified POI reference", "description": "Proposed operation, not implemented. Resolve an exact namespace and identifier; similarity may return candidates but never automatically merge identities.", "inputs": [ "namespace", "identifier", "read purpose" ], "outputs": [ "resolved reference or ambiguity report" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "Read-only resolution; no master modification" ], "source_refs": [ "SRC-001", "SRC-004", "SRC-008" ] }, { "id": "record-location", "name": "Record a location assertion", "description": "Proposed operation, not implemented. Append qualified geometry or an unresolved location reason, preserving role, source and uncertainty.", "inputs": [ "poiRef", "location role and evidence", "CRS and quality metadata" ], "outputs": [ "assertion revision or refusal" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "Append local assertion; do not survey, transform or route" ], "source_refs": [ "SRC-001", "SRC-003", "SRC-004", "SRC-008" ] }, { "id": "record-availability", "name": "Record availability evidence", "description": "Proposed operation, not implemented. Append schedule or observed availability evidence and distinguish recurring local time from actual observation.", "inputs": [ "poiRef", "schedule or observation evidence", "time zone and validity context" ], "outputs": [ "availability revision or unresolved conflict" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "No promise of admission, service or current opening" ], "source_refs": [ "SRC-002", "SRC-004", "SRC-005", "SRC-006" ] }, { "id": "review-identity-change", "name": "Record an identity review", "description": "Proposed operation, not implemented. Record an authorized duplicate, relocation or successor decision with evidence and retained aliases.", "inputs": [ "candidate references", "review evidence", "identity continuity decision" ], "outputs": [ "reconciliation record or refusal" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "No automatic cross-master merge or destructive rewrite" ], "source_refs": [ "SRC-001", "SRC-004", "SRC-008" ] }, { "id": "record-poi-state", "name": "Record a POI state assertion", "description": "Proposed operation, not implemented. Append closure, proposed, historical or retirement evidence with separate listing and represented-feature states.", "inputs": [ "poiRef", "event and authority evidence", "effective and observation time" ], "outputs": [ "state revision or refusal" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "No physical closure, operator change or external deletion" ], "source_refs": [ "SRC-001", "SRC-004", "SRC-005" ] }, { "id": "prepare-poi-projection", "name": "Prepare a scoped POI projection", "description": "Proposed operation, not implemented. Create a local export under a pinned mapping and license/access decision, reporting every omitted or generalized field.", "inputs": [ "poi revision", "recipient scope and rights decision", "target profile and mapping version" ], "outputs": [ "local projection and loss report or refusal" ], "preconditions": [ "Verified role and purpose with access to every input", "Mutations require expected current revision, idempotency key and review authority", "Missing required source evidence or profile semantics causes refusal or explicit unresolved result" ], "effects": [ "Create local artifact only; no transmission, public release or permission expansion" ], "source_refs": [ "SRC-001", "SRC-002", "SRC-003", "SRC-004", "SRC-008" ] } ], "composition": [ { "target": "WM-XCT-010", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional address/location designation reference; assignment and postal operations remain external.", "required": false, "source_refs": [ "SRC-001", "SRC-002", "SRC-008" ] }, { "target": "WM-XCT-033", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional geometry/CRS binding; geometry role and observed quality remain POI assertions.", "required": false, "source_refs": [ "SRC-001", "SRC-003", "SRC-008" ] }, { "target": "WM-PLC-010", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional gazetteer and name authority reference, not identity equivalence.", "required": false, "source_refs": [ "SRC-001", "SRC-007", "SRC-008" ] }, { "target": "WM-BLT-001", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional represented building feature with independent master identity.", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] }, { "target": "WM-BLT-002", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional represented premises feature with independent lifecycle.", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] }, { "target": "WM-PLC-002", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional parcel context; location does not prove land rights.", "required": false, "source_refs": [ "SRC-001", "SRC-002" ] }, { "target": "WM-PLC-009", "relation": "REFERENCE", "purpose": "Candidate binding requiring neighbor/version review. Optional indoor-space and level context; no indoor routing ownership.", "required": false, "source_refs": [ "SRC-001", "SRC-008" ] }, { "target": "OGC POI 1.0", "relation": "ALIGN", "purpose": "Selected conceptual alignment. Required geometry/contact fields and payload tests need an implementation profile; incomplete local records are not conformant instances.", "required": false, "source_refs": [ "SRC-001" ] }, { "target": "Schema.org Place and OpeningHoursSpecification", "relation": "ALIGN", "purpose": "Descriptive projection only; no equivalence between missing schedule and confirmed closure.", "required": false, "source_refs": [ "SRC-002", "SRC-006" ] }, { "target": "GeoJSON RFC 7946", "relation": "ALIGN", "purpose": "Geometry exchange only; explicit longitude-latitude order and mapped uncertainty metadata.", "required": false, "source_refs": [ "SRC-003" ] }, { "target": "PROV-O", "relation": "ALIGN", "purpose": "Attribution and derivation mapping, not certification of source truth.", "required": false, "source_refs": [ "SRC-004" ] } ], "serviceLayers": { "dimension": { "owner_package_requirements": [ "Name the accountable catalogue custodian role, namespace and authorized purpose", "Declare POI identity continuity, source licensing, retention and sensitive-location policies", "Bind exact instance profiles, neighbor references and permitted geometry/schedule projections" ], "namespace_guidance": "Use a governed POI namespace; retain source namespace and revision on every foreign identifier. Do not use a date, name or coordinate as identity.", "registry_links": [ "vr.wm-plc-006", "WM-XCT-010", "WM-XCT-033", "WM-PLC-010" ] }, "canon_and_patch": { "canonicalization_rules": [ "Preserve master identifiers and original values with evidence; normalization is a reversible projection", "Never collapse POIs because they share an address, feature reference, label or geometry", "Retain language-tagged names, geometry roles and distinct unknown, absent, false and not-applicable states" ], "patch_rules": [ "Authorize scope and verify expected revision plus idempotency key before an append", "Record author role, reason, source evidence, effective time and ingestion time; contradictory assertions stay visible to authorized reviewers" ], "compatibility_rules": [ "Version category schemes, payload schemas and mappings independently", "Changing identity criteria, geometry meaning, null semantics or schedule precedence requires explicit migration and revalidation" ] }, "artifact_rules": { "identity_priority": [ "Authoritative master-system identifier plus namespace and revision", "Governed global identifier or IRI", "Dimension-assigned UUID or ULID" ], "timestamp_rule": "Instants use RFC 3339 with seconds and an explicit offset or Z. Keep effective, observation and ingestion times separate. Recurring local hours require a time-zone reference; date-only or uncertain history stays typed without invented midnight.", "serial_naming_rule": "Use POI identifier plus opaque sequence and revision, without coordinates, personal names or dates as identity.", "integrity_rule": "Record digest, source revision and authorized lineage for evidence artifacts; integrity does not establish accuracy, authority or public reuse rights." }, "policies": [ "Policy proposals are local governance choices informed by sources, not universal legal duties. Select applicable privacy, naming, accessibility and licensing profiles before operation.", "Public POI discovery does not authorize entry, navigation, surveillance or unrestricted distribution of precise sensitive locations.", "Restricted or dangerous facilities remain at policy-level description; refuse operational details that enable harm.", "Prefer role-based contact references and minimize person-linked data; review source rights before reproducing imagery or descriptions." ], "crud": { "read": [ "Return only a purpose-authorized projection with freshness and uncertainty qualifiers" ], "create": [ "Require custodian scope, a stable POI identifier, source evidence and explicit unresolved fields; do not require a civic address" ], "update": [ "Append reviewed assertions under revision control; propagate correction or supersession notices only through separately authorized workflows" ], "delete": [ "Retire listing identifiers with minimal authorized tombstones when justified; retention schedules, holds and lawful disposal apply to local assertions and attachments", "Erase personal or sensitive payloads when the applicable policy requires; history is not perpetual retention. Local deletion neither deletes external masters nor destroys the physical feature." ] }, "roles": [ { "name": "Catalogue custodian", "responsibilities": [ "Own local namespace, purpose and retention decisions" ] }, { "name": "Contributor", "responsibilities": [ "Submit attributed evidence within delegated scope" ] }, { "name": "Semantic reviewer", "responsibilities": [ "Review identity continuity, conflicting assertions and profile mappings" ] }, { "name": "Access and rights reviewer", "responsibilities": [ "Approve recipient scope, licensing and sensitive-location treatment" ] }, { "name": "Consumer", "responsibilities": [ "Respect limitations and report stale or ambiguous POI assertions" ] } ], "access": { "default_rule": "Deny undisclosed access by default. Public discovery uses an explicitly approved field-level view and does not expose private evidence automatically.", "scopes": [ "bundle", "layer", "finding", "artifact" ], "exceptions": [ "Generalize or suppress sensitive geometry when approved; generalization is not a guarantee against re-identification", "Any emergency or research exception requires a recorded authority, purpose, duration and minimum scope" ], "audit_requirements": [ "Record actor role, purpose, scope, input revision, policy decision and resulting projection or refusal", "Audit access expansion and disposal under the applicable retention policy without retaining unnecessary sensitive payloads" ] }, "agents_bootstrap": { "filename": "AGENTS.md", "required_fields": [ "Name", "Type", "Specification URL", "Storage type URL", "Interface URL", "Processes URL" ], "read_order": [ "AGENTS.md", "spec.yaml and publication holds", "Owner Dimension and access/retention policies", "Pinned neighboring models and target profiles", "Evidence and current authorized instance revision" ] } }, "coverage": { "claim": "Source-grounded proposed POI entity structure with 12 bounded concerns, reconciled against the broader U7 predecessor. A separate frozen local Codex no-tools self-audit found no critical contradictions. Independent review, source/version verification, adopting profiles and executable conformance remain holds; no universal completeness or runtime certification is claimed.", "confidence": "medium", "checklist": [ { "dimension": "identity", "status": "covered", "notes": "Separate POI, represented feature and source listing identifiers." }, { "dimension": "lifecycle", "status": "covered", "notes": "Separate listing retirement, operating state and feature existence." }, { "dimension": "relationships", "status": "covered", "notes": "Typed external references preserve foreign master ownership." }, { "dimension": "temporal", "status": "covered", "notes": "Validity, observation, ingestion and recurring local hours remain distinct." }, { "dimension": "provenance", "status": "covered", "notes": "Each assertion has attributed source and derivation evidence." }, { "dimension": "ownership", "status": "covered", "notes": "Custodian, operator, property holder and authority roles remain separate." }, { "dimension": "validation", "status": "gap", "notes": "Research structure validated; instance profiles and executable conformance remain a gap." }, { "dimension": "access", "status": "covered", "notes": "Record physical entry conditions separately from record disclosure rights." }, { "dimension": "retention and deletion", "status": "covered", "notes": "Local disposal and scoped tombstones require applicable policy, not perpetual retention." }, { "dimension": "interoperability", "status": "gap", "notes": "Conceptual mappings only; executable target mappings remain a gap." }, { "dimension": "direct properties", "status": "covered", "notes": "Qualified geometry, category, labels and availability are descriptive POI properties." }, { "dimension": "recognition and observation", "status": "covered", "notes": "Time-bound signs, images and landmark evidence can be stale." }, { "dimension": "capabilities and possible actions", "status": "covered", "notes": "Conditional amenities and visitor uses never grant permission or execute services." } ], "known_omissions": [ "Independent external review is absent under the owner-authorized waiver.", "Direct HTTP and current-version checks are pending outside the sandbox; browser retrieval is not a measured HTTP result.", "Executable nested schemas, OGC implementation/payload conformance, neighbor-version bindings and mapping fixtures are not implemented.", "Jurisdiction-specific naming, language selection, privacy, accessibility and source-license applicability need profile review.", "Mobile-object tracking, route accessibility certification, live occupancy, booking and pricing are outside this POI boundary." ], "conflicts": [], "regional_assumptions": [ "No universal civic-address, official-name, opening-hours or public-entry requirement.", "Disputed names and territorial context remain source-qualified; English research prose does not restrict instance label languages.", "Coordinate and time conventions are profile-bound; no local CRS or time zone is silently assumed." ], "adversarial_checks": [ "Two businesses at one coordinate or one business after relocation must not be automatically merged.", "A POI without an address or known opening hours remains representable with explicit unknowns.", "A centroid is not an entrance and a geometry display is not evidence of a traversable path.", "A closed venue can remain a historical POI; listing retirement does not destroy its represented feature.", "A suppressed entrance or personal contact must not leak through export, derived names or history.", "GeoJSON-valid geometry is not OGC POI conformance; incomplete contact or geometry blocks that target profile." ] }, "researchAdjudication": { "providerMode": "single-provider-waiver", "activeProviders": [ "codex" ], "waivedProviders": [ "claude", "grok" ], "providerPolicy": { "contract_version": "1.0.0", "mode": "single-provider-waiver", "effective_at": "2026-09-06T00:00:00Z", "scope": "Canonical single-stream subject-model research after the six-workstream consolidation", "active_providers": [ "codex" ], "waived_providers": [ { "provider": "claude", "authorized_by": "repository owner", "authorized_at": "2026-09-06T00:00:00Z", "reason": "Claude produced no result on prior 1800-second and 900-second attempts and again timed out on bounded 600-second Sonnet and 300-second Haiku passes. The owner prioritized completion over provider availability." }, { "provider": "grok", "authorized_by": "repository owner", "authorized_at": "2026-09-06T00:00:00Z", "reason": "The repository owner authorized completion without Grok when Grok is unavailable, slow or schema-invalid. Grok may still be attempted as a bounded supplemental reviewer, but its failure never blocks a valid Claude plus no-tools result." } ], "review_rule": "Codex may complete source-grounded fallback research after bounded Claude and Grok attempts fail. It requires a separate no-tools adversarial audit and remains reviewable-draft with a visible absence-of-external-review hold.", "supplemental_provider_attempts": [ { "provider": "claude", "required": false, "maximum_attempts": 1, "failure_policy": "record-and-continue", "admission_rule": "Use only a locally schema-valid result whose sources and boundaries survive adjudication." }, { "provider": "grok", "required": false, "maximum_attempts": 1, "failure_policy": "record-and-continue", "admission_rule": "Use only a locally schema-valid result whose sources and boundaries survive adjudication." } ] }, "boundaryDecision": { "entry_kind": "entity", "status": "accepted", "rationale": "The root is one persistently identifiable POI, distinct from its source listings, represented feature and catalogue. The registry standalone-mm value describes the record plane, not the subject-kind enum. The broad legacy U7 address fabric is reconciled through external references rather than inherited wholesale." }, "decisions": [ { "concept": "POI root and represented feature", "disposition": "accepted", "rationale": "The identity finding and reference functions distinguish POI, listing and represented-feature identifiers. The root remains an entity even when it links several independently mastered features." }, { "concept": "Legacy address and registrar scope", "disposition": "rejected as local ownership", "rationale": "Address assignment, postal formatting, thoroughfare naming and registrar mandates belong outside this subject. The draft explicitly declines to inherit legacy conformance labels or the unreviewed supplement's operational powers." }, { "concept": "Duplicate and relocation identity", "disposition": "accepted with review", "rationale": "Shared coordinates, labels and addresses yield candidates rather than automatic equality. Relocation, split and successor assertions require evidence and review without destructive cross-master merging." }, { "concept": "Names and cultural authority", "disposition": "accepted with qualification", "rationale": "Language and script tags are separate from official-name status, transliteration and display preference. Disputed assertions remain attributed, and the draft does not decide naming authority or sovereignty." }, { "concept": "Geometry and physical access", "disposition": "separated", "rationale": "Display point, extent, entrance and indoor context have different roles. CRS, uncertainty and method are preserved; a centroid or visible map feature cannot establish entry permission or a traversable route." }, { "concept": "Neighbor references and relationships", "disposition": "candidate only", "rationale": "No frozen ledger edges require ratification. Address, geometry, gazetteer, building, premises, parcel and indoor-space bindings stay optional candidates pending neighbor-version review; no foreign lifecycle is copied." }, { "concept": "Amenities and visitor capabilities", "disposition": "accepted as conditional description", "rationale": "Classification and possible uses are evidence-backed assertions with applicability and restrictions. Accessibility, safety and service claims need qualified profiles; local functions do not execute a service or grant permission." }, { "concept": "Recognition and observation", "disposition": "accepted", "rationale": "Signs, images and landmarks provide time-bound recognition cues. Source rights, method, conditions and contradictory evidence are retained rather than treating a matching image or label as conclusive identity." }, { "concept": "Opening hours and missing information", "disposition": "qualified", "rationale": "The authored model distinguishes missing schedules from an actual opening-hours specification and from real-time availability. Local hours, overnight periods, time zones and exceptions are profile data rather than an implemented schedule evaluator." }, { "concept": "Lifecycle and temporal continuity", "disposition": "accepted", "rationale": "Feature existence, operational state and listing publication state are distinct. Closure may coexist with a historical POI, and effective, observation and ingestion times are not interchangeable." }, { "concept": "Stewardship, provenance and operation authority", "disposition": "accepted as proposed local rules", "rationale": "Custodian, contributor, operator, rights holder and authority roles are separate. Provenance does not certify truth or authority. All six functions are unimplemented local proposals with role, evidence and revision preconditions." }, { "concept": "Disclosure, licensing and retention", "disposition": "accepted with policy dependency", "rationale": "Recipient-scoped views, source rights and sensitive-location controls apply across artifact and assertion scopes. Historical continuity is bounded by disposal policies and minimal tombstones, without deleting external masters or retaining personal data indefinitely." }, { "concept": "Source status and version assurance", "disposition": "limited", "rationale": "Eight browser-readable source documents support selected concepts. Development vocabulary pages, guidance status and unreviewed dependencies remain visible limits. Zero direct requests and zero measured HTTP 200 responses cannot be promoted to HTTP or current-version verification." }, { "concept": "Instance and standards conformance", "disposition": "deferred", "rationale": "The research's optional candidate object groups are not executable nested schemas. OGC mandatory target fields and payload validation, GeoJSON projection and vocabulary mappings require separate acceptance fixtures; target refusal prevents fabricated compliance." }, { "concept": "Independent external review", "disposition": "waived and held", "rationale": "Claude and Grok are skipped with zero attempts under the owner override. This separate semantic phase is a local Codex self-audit of frozen evidence and cannot be represented as independent provider agreement." } ], "publicationHolds": [ "Independent external review is absent under the owner-authorized single-provider waiver. Claude and Grok were skipped with zero attempts; the separate local Codex no-tools self-audit is not an independent second-provider review.", "Direct HTTP and current source/version verification remain incomplete. No direct requests were attempted under the owner-reported sandbox restriction, giving zero measured HTTP 200 responses. Eight documents were browser-readable, with selected sections reviewed. Vocabulary release pins, source status, dependencies and errata require verification; check_sources.py is supplied for the coordinator.", "Adopting profiles must review source licensing, privacy, retention, sensitive locations, naming authority, multilingual selection, accessibility and local calendar/access conditions. This draft provides no universal legal, entry or safety assurance.", "Nested instance schemas, pinned neighbor bindings, OGC POI implementation and payload conformance, vocabulary/GeoJSON mappings and adversarial acceptance fixtures remain incomplete. All proposed functions are unimplemented and no runtime certification is claimed.", "Independent external review was explicitly waived by the repository owner; this codex-only result remains a reviewable draft." ], "deferredResearch": [ "Run direct source checks outside the sandbox, pin vocabulary versions and review dependencies, errata, source status and exact claim support before promotion.", "Build adopter profiles and executable fixtures covering duplicate co-located POIs, relocation, missing names/addresses, uncertain geometry, overnight/DST schedules, restricted entrances and disposal of sensitive payloads.", "Restore an independent external provider review before canonical or publishable-draft promotion." ] }, "statistics": { "sources": 8, "bundles": 6, "layers": 12, "findings": 12, "questions": 36, "artifacts": 12, "functions": 6 } }