AIGuiders.Platform.Modeling.LanguageIntelligence.Relations 0.1.0

dotnet add package AIGuiders.Platform.Modeling.LanguageIntelligence.Relations --version 0.1.0
                    
NuGet\Install-Package AIGuiders.Platform.Modeling.LanguageIntelligence.Relations -Version 0.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AIGuiders.Platform.Modeling.LanguageIntelligence.Relations" Version="0.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AIGuiders.Platform.Modeling.LanguageIntelligence.Relations" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="AIGuiders.Platform.Modeling.LanguageIntelligence.Relations" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AIGuiders.Platform.Modeling.LanguageIntelligence.Relations --version 0.1.0
                    
#r "nuget: AIGuiders.Platform.Modeling.LanguageIntelligence.Relations, 0.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AIGuiders.Platform.Modeling.LanguageIntelligence.Relations@0.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AIGuiders.Platform.Modeling.LanguageIntelligence.Relations&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=AIGuiders.Platform.Modeling.LanguageIntelligence.Relations&version=0.1.0
                    
Install as a Cake Tool

AIGuiders.Platform.Modeling.LanguageIntelligence.Relations

Typed relation vocabulary for language intelligence — resolve tiers, dependency and type-system edge kinds, document geometry, and the RelationSpec witness exchanged before any resolve or materialize.

What you get

  • ResolveTier — Syntax = 1 / Semantic = 2; how deep a stored resolution goes (no text tier, by design)
  • Edge-kind vocabularies with stable wire strings (toWire / tryParse round-trips):
    • DependencyRelationKind — Uses, TypeUses, Binds, Imports, SyntaxDepends
    • TypeSystemRelationKind — ImplementsInterface, Extends, Instantiates
  • Document geometry (RelationGeometry.fs): TextSpan, LineRange (buffer offsets [Start, End) with create / length / contains), LineRangeHint, SymbolRef (container / name / arity), DocumentPlace (Fragment / Obligation / Package), DocumentRef (DocId / File), NavSeed, ResourcePath, SurfaceVersion, DocumentText, DocumentMeta + DocumentRegistry, DiagnosticRecord + DiagnosticIndex, ResolveCtx, AddressRef
  • Locus — where intelligence attaches: Syntax (doc + node + span) or Semantic (doc + symbol + span)
  • RelationSpec — the typed witness produced before anything is resolved or materialized: CodeEdit, DocToCode, Diag, Address, Nav, Resource, with CodeTarget = Symbol / TreeNode
  • Pure data: depends only on identity ids (Modeling.Core) and LogicalPath (Modeling.Paths) — no parsers, no IO

Quick start

open AIGuiders.Platform.Modeling.LanguageIntelligence.Relations

// Edge kind wire round-trip
let edge = DependencyRelationKind.tryParse "type-uses"   // Some TypeUses
let wire = DependencyRelationKind.toWire TypeUses         // "type-uses"

// Buffer-offset geometry
let range = LineRange.create 10 20
LineRange.contains 15 range                                // true

// Where a stored resolution landed
let tier = ResolveTier.Semantic

Problem

  • Edit-intelligence features — attach metadata to code, sniper-style edits, doc-to-code links, "jump from this diagnostic" — each invent their own locators: line/column tuples, path strings, path + member pairs.
  • They drift, and nothing records how deep a locator actually resolved: a syntax-tree node and a checked symbol are different durability classes, but ad-hoc locators cannot say which one you hold.

Solution

  • One closed, typed vocabulary: Locus + ResolveTier for places and their depth, edge kinds with stable wire strings, and RelationSpec as the single witness exchanged at the host boundary before resolve/materialize — bracket wires and legacy locator strings parse into it, nothing attaches to code without it.
  • It is the F# SSOT of the federation's language-intelligence relation surface, superseding the public Anchor entity for attach/persist paths — ADR-0025 · ADR-0063.

When not to use

  • Expecting engines from the vocabulary: nothing here resolves a RelationSpec, computes symbol uses, or touches files — resolvers and hosts live in consuming packages.
  • Plain-text addressing by design: ResolveTier is Syntax/Semantic only — if your locators are raw text spans with no syntax or semantic backing, this tier model deliberately has no slot for them.
  • LSP-adjacent but not LSP: spans are house-shaped (TextSpan, buffer-offset LineRange), not UTF-16 line/character conventions, and there is no JSON-RPC mapping.

Learn more


MIT · Source & issues · part of the Guiders federation

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (7)

Showing the top 5 NuGet packages that depend on AIGuiders.Platform.Modeling.LanguageIntelligence.Relations:

Package Downloads
AIGuiders.Platform.Modeling.Documentation.Correspondence

Documentation correspondence wire shapes — CRS model, forward/reverse map shapes (F# SSOT).

AIGuiders.Platform.Modeling.Navigation

Navigation scene IR — anchor, nodes, edges, caps (F# SSOT).

AIGuiders.Platform.Modeling.Ide.Session

IDE solution session graph IR — projects, capabilities, lifecycle, validation (F# SSOT).

AIGuiders.Platform.Modeling.Build

Neutral build-result model — diagnostics as RelationSpec.Diag witnesses.

AIGuiders.Platform.Modeling.CommandPlane

CommandPlane M-shapes — prefix-arm match algebra, constructor definitions, locale date parse (F# SSOT, ADR-0003 §4.6, GUIDERS-ADR-0037/0038).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0 152 10/24/2026