Packata.OpenDataContract 0.43.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Packata.OpenDataContract --version 0.43.0
                    
NuGet\Install-Package Packata.OpenDataContract -Version 0.43.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="Packata.OpenDataContract" Version="0.43.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Packata.OpenDataContract" Version="0.43.0" />
                    
Directory.Packages.props
<PackageReference Include="Packata.OpenDataContract" />
                    
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 Packata.OpenDataContract --version 0.43.0
                    
#r "nuget: Packata.OpenDataContract, 0.43.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 Packata.OpenDataContract@0.43.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=Packata.OpenDataContract&version=0.43.0
                    
Install as a Cake Addin
#tool nuget:?package=Packata.OpenDataContract&version=0.43.0
                    
Install as a Cake Tool

Packata

Logo

Packata is a standards-neutral .NET library for working with Data Package v2 and Open Data Contract Standard (ODCS) documents. It maps both formats to a shared model for data assets, schemas, metadata, and endpoints, with optional packages for reading and provisioning data.

About | Packages | Installing | Quickstart

About

Use the format-specific models when you need direct access to Data Package or ODCS concepts. Map either format to Packata.Core.Contracts.DataContract when you want readers, provisioners, and other integrations to work independently of the source document format.

Social media: website twitter badge

Releases: GitHub releases nuget GitHub Release Date licence badge

Dev. activity: GitHub last commit Still maintained GitHub commit activity

Continuous integration builds: CI and release CodeFactor codecov

Status: stars badge Bugs badge Top language

Packages

Package Purpose
Packata.Core Standards-neutral contracts for assets, schemas, endpoints, diagnostics, readers, and provisioners
Packata.DataPackage Data Package v2 models, JSON/YAML serialization, validation, and canonical mapping
Packata.OpenDataContract ODCS models, YAML serialization, validation, and canonical mapping
Packata.ResourceReaders Access to delimited, Excel, Parquet, and database resources through IDataReader
Packata.Storages Access to documents and resources on local, HTTP(S), S3, and Azure storage
Packata.Provisioners Provisioning of canonical data contracts to relational platforms
Packata-cli Cross-platform command-line interface distributed as a .NET tool and self-contained executables

Packata libraries target .NET 8, .NET 9, and .NET 10. The CLI targets .NET 10.

Installing

Install the package for the document format you use:

dotnet add package Packata.DataPackage
dotnet add package Packata.OpenDataContract

Add Packata.ResourceReaders, Packata.Storages, or Packata.Provisioners when your application needs those capabilities. Format packages reference Packata.Core, so it does not need to be installed separately.

Command-line tool

Install the framework-dependent .NET 10 tool from NuGet:

dotnet tool install --global Packata-cli
packata --help

Update an existing installation with dotnet tool update --global Packata-cli.

Self-contained executables that do not require an installed .NET runtime are available from the GitHub releases page. Select the archive for your platform:

Platform Runtime archive Executable
Windows x64 win-x64 packata.exe
Windows ARM64 win-arm64 packata.exe
Linux x64 (glibc) linux-x64 packata
Linux ARM64 (glibc) linux-arm64 packata
Alpine Linux x64 (musl) linux-musl-x64 packata
Alpine Linux ARM64 (musl) linux-musl-arm64 packata
macOS Intel osx-x64 packata
macOS Apple Silicon osx-arm64 packata

Linux distributions using glibc must use a linux-* archive; Alpine and other musl-based distributions must use linux-musl-*. Extract the ZIP archive on Windows or the tar.gz archive on Linux/macOS, then invoke the executable directly. Packata does not publish a 32-bit Windows CLI.

Quickstart

Load a Data Package descriptor and map it to the standards-neutral model:

using Packata.DataPackage;
using Packata.DataPackage.Mapping;

var package = new DataPackageFactory().LoadFromFile("datapackage.json");

var contract = package
    .ToCanonicalContract()
    .ReportDiagnostics(diagnostic =>
        Console.Error.WriteLine($"{diagnostic.Severity}: {diagnostic.Message}"))
    .RequireValue();

foreach (var asset in contract.Assets)
    Console.WriteLine(asset.Name);

ODCS documents map to the same canonical model through the Packata.OpenDataContract.Mapping namespace. See MIGRATION.md for side-by-side mapping examples and guidance for upgrading from earlier Packata versions.

License

Packata is licensed under the Apache License 2.0.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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 is compatible.  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 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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.63.4 86 10/5/2026
0.63.2 85 10/4/2026
0.46.0 0 10/11/2026
0.45.2 98 10/4/2026
0.45.0 38 10/9/2026
0.44.0 39 10/9/2026
0.43.0 40 10/8/2026
0.42.0 39 10/8/2026
0.41.1 77 10/5/2026
0.41.0 84 10/5/2026
0.40.19 87 10/4/2026
0.40.17 114 9/16/2026
0.40.16 96 9/16/2026
0.40.15 116 8/22/2026
0.40.14 122 8/13/2026
0.40.13 127 7/21/2026
0.40.12 134 7/7/2026
0.40.10 152 6/29/2026
0.40.9 130 6/29/2026
0.40.8 134 6/22/2026
Loading failed

ODCS remains supported and maps to the standards-neutral Packata.Core model through OpenDataContractMapper.