---
title: SAIF.Framework.Common dependencies
summary: Internal and external dependencies for this library.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-15
library: SAIF.Framework.Common
reference_type: package
---

# SAIF.Framework.Common dependencies

`SAIF.Framework.Common` has no internal (in-repo) or NuGet package dependencies; it references only .NET Framework GAC assemblies, four of which are declared but appear unused in compiled sources (Stage 1 analysis, "Internal (repository) dependencies", "NuGet / package dependencies", "Framework (GAC / BCL) assembly references").

## Internal dependencies

**None.** The `.csproj` contains no `<ProjectReference>` elements, and `SAIF.Framework.Common.sln` contains exactly one project entry (`SAIF.Framework.Common`). This library is a leaf with no in-repo dependencies (Stage 1 analysis, "Internal (repository) dependencies").

## External dependencies

**No NuGet package dependencies.** There are no `<PackageReference>` elements, no `packages.config` file under `Common/SAIF.Common/`, and the `.nuspec` declares no `<dependencies>` element (Stage 1 analysis, "NuGet / package dependencies").

The library instead references the following .NET Framework GAC assemblies directly from the `.csproj`:

| Dependency | Version | Usage |
| --- | --- | --- |
| `System` | .NET Framework 4.6.2 (GAC reference) | Core BCL types (Stage 1 analysis, "Framework (GAC / BCL) assembly references") |
| `System.Core` | .NET Framework 4.6.2 (GAC reference) | LINQ (`System.Linq`) (Stage 1 analysis, same section) |
| `System.Web` | .NET Framework 4.6.2 (GAC reference) | Referenced to reach `System.Web.Script.Serialization`* (Stage 1 analysis, same section) |
| `System.Web.Extensions` | .NET Framework 4.6.2 (GAC reference) | `JavaScriptSerializer`, used in `Classes/Serializer.cs`, `Extensions/GenericExtensions.cs`, `Extensions/DotNet40Extensions.cs` (Stage 1 analysis, same section) |
| `System.Xml.Linq` | .NET Framework 4.6.2 (GAC reference) | Declared in project; no `System.Xml.Linq` `using` found in compiled sources* (Stage 1 analysis, same section) |
| `System.Data.DataSetExtensions` | .NET Framework 4.6.2 (GAC reference) | Declared in project; no usage found in compiled sources* (Stage 1 analysis, same section) |
| `Microsoft.CSharp` | .NET Framework 4.6.2 (GAC reference) | Declared in project; no `dynamic` usage found in compiled sources* (Stage 1 analysis, same section) |
| `System.Data` | .NET Framework 4.6.2 (GAC reference) | Declared in project; no `System.Data` `using` found in compiled sources* (Stage 1 analysis, same section) |
| `System.Xml` | .NET Framework 4.6.2 (GAC reference) | `XmlSerializer` via `System.Xml.Serialization`, used in `Classes/Serializer.cs`, `Extensions/GenericExtensions.cs` (Stage 1 analysis, same section) |

## Dependency risks and notes
- Because there are no internal or NuGet package dependencies, no cross-layer dependency resolution, no Legends/RAG queries, and no framework-inherited type resolution are applicable to this library (Stage 1 analysis, "NuGet / package dependencies").
- Four GAC references (`System.Xml.Linq`, `System.Data`, `System.Data.DataSetExtensions`, `Microsoft.CSharp`) are declared in the project file but no source file uses a type from them; they may be vestigial project-template defaults, and keeping them may mislead dependency scanners into inferring data/LINQ-to-XML capability the library does not have* (Stage 1 analysis, "Build and packaging discrepancies", Q-02).
- The `.nuspec` ships `**\*.cs` from the project folder, so the non-compiled `Extensions/DotNet35Extensions.cs` is packaged as source even though it is absent from the compiled assembly — a consumer browsing package sources will see a type that does not exist at runtime* (Stage 1 analysis, "nuspec contents").
- There are no framework-inherited types (no types from a documented dependency package) and no external types from third-party packages, since the library has zero package dependencies (Stage 1 analysis, "Framework type classification").
- Which downstream applications actually consume `SAIF.Framework.Common`, and which of its operations are exercised in production, could not be determined from this repository** (Stage 1 analysis, "Unknowns that cannot be resolved from this repository").

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `Common/SAIF.Common/SAIF.Framework.Common.csproj`
- `SAIF.Framework.Common.sln`
- `Common/SAIF.Common/SAIF.Framework.Common.nuspec`
