Fdw.Schema.Abstractions 1.0.0-rc.9

This is a prerelease version of Fdw.Schema.Abstractions.
dotnet add package Fdw.Schema.Abstractions --version 1.0.0-rc.9
                    
NuGet\Install-Package Fdw.Schema.Abstractions -Version 1.0.0-rc.9
                    
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="Fdw.Schema.Abstractions" Version="1.0.0-rc.9" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Fdw.Schema.Abstractions" Version="1.0.0-rc.9" />
                    
Directory.Packages.props
<PackageReference Include="Fdw.Schema.Abstractions" />
                    
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 Fdw.Schema.Abstractions --version 1.0.0-rc.9
                    
#r "nuget: Fdw.Schema.Abstractions, 1.0.0-rc.9"
                    
#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 Fdw.Schema.Abstractions@1.0.0-rc.9
                    
#: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=Fdw.Schema.Abstractions&version=1.0.0-rc.9&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Fdw.Schema.Abstractions&version=1.0.0-rc.9&prerelease
                    
Install as a Cake Tool

Fdw.Schema.Abstractions

Schema contracts — the discovered shape of a backend, independent of which backend it is.

Implementations live in the sibling packages; this one holds the interfaces, base types and models they agree on, so a consumer can depend on the contract without taking the implementation.

Interfaces (8)

Type Kind Purpose
IColumnDefinition interface Represents a physical database column with SQL type information. Use for database schema operations, DDL…
IDataLayout interface Interface for data layout types.
IFieldDefinition interface Represents a logical field with .NET type information and data mapping. Use for data transformation, ETL…
IIndexDefinition<TProperty> interface Defines an index on a schema.
IKeyDefinition<TProperty> interface Defines a key (primary or unique) on a schema.
IPropertyDefinition interface Base interface for all property/field/column definitions in a schema.
IPropertyRole interface Interface for property roles.
ISchemaDefinition<TProperty> interface Generic schema definition interface for describing data structures.

Base types (5)

Type Kind Purpose
DataLayoutBase class Base class for data layouts using CRTP pattern.
DataLayouts class MutableTypeCollection for data layouts. Source generator will create static properties for each layout…
PropertyRoleBase class Base class for property roles using CRTP pattern.
PropertyRoles class MutableTypeCollection for property roles. Source generator will create static properties for each role…
SchemaDefinitionBase<TProperty> class Abstract base class for schema definitions.

Models and supporting types (16)

Type Kind Purpose
AttributeRole class Attribute role - descriptive data that is not indexed.
ColumnDefinition class Default implementation of .
DocumentLayout class Document layout - single complex object.
FieldDefinition class Default implementation of .
GraphLayout class Graph layout - nodes and edges with relationships.
HierarchicalLayout class Hierarchical layout - nested parent-child structure.
IndexDefinition<TProperty> class Concrete implementation of .
KeyDefinition<TProperty> class Concrete implementation of .
KeyValueLayout class Key-value layout - simple key-value pairs.
LookupRole class Lookup role - indexed for search but not part of key.
MeasureRole class Measure role - aggregatable numeric data.
NaturalKeyRole class Natural key role - business identifier that is human-meaningful.

Installation

dotnet add package Fdw.Schema.Abstractions --prerelease

Dependencies

Fdw.Collections · Fdw.Types.Abstractions

Build-time only (generators and analyzers, not runtime dependencies): Fdw.Collections.SourceGenerators


Part of FractalDataWorks 1.0.0-rc.1. Licensed under Apache-2.0.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (22)

Showing the top 5 NuGet packages that depend on Fdw.Schema.Abstractions:

Package Downloads
Fdw.Data.Abstractions

Development tools and utilities for the Fdw ecosystem.

Fdw.Data.DataSets

Development tools and utilities for the Fdw ecosystem.

Fdw.Services.Connections

Development tools and utilities for the Fdw ecosystem.

Fdw.Data.MsSql

Development tools and utilities for the Fdw ecosystem.

Fdw.Data.PostgreSql

Development tools and utilities for the Fdw ecosystem.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-rc.9 386 8/25/2026
1.0.0-rc.8 469 8/25/2026
1.0.0-rc.6.1 1,628 8/20/2026
1.0.0-rc.6 1,657 8/20/2026
1.0.0-rc.5 1,662 8/19/2026
1.0.0-rc.4 1,534 8/19/2026
1.0.0-rc.3 1,115 8/17/2026
1.0.0-rc.1 760 8/10/2026