Third-Party Dependencies
Runtime dependency and upstream license notes for the public OfficeIMO package family.
OfficeIMO packages are published under the MIT License, but several packages intentionally build on upstream open-source components. This page exists to make those relationships easier to review during OSS approval, procurement, and redistribution checks.
Scope
- Covers shipped runtime dependencies for the public OfficeIMO package families documented on this site.
- Focuses on user-visible dependencies rather than test-only packages, benchmark harnesses, sample apps, or framework/reference-only helpers.
- Exact package ranges live in the linked
.csprojfiles and NuGet metadata. - This page is informational only and is not legal advice.
Package Family Overview
| OfficeIMO package or family | Upstream components used in the repo today | Why they are there |
|---|---|---|
OfficeIMO.Word | DocumentFormat.OpenXml [3.5.1, 4.0.0) | OOXML document model and packaging; colors and image metadata use first-party OfficeIMO.Drawing |
OfficeIMO.Excel | DocumentFormat.OpenXml [3.5.1, 4.0.0), Microsoft.Bcl.AsyncInterfaces 10.0.8 and System.Text.Json [10.0.7, 11.0.0) on legacy targets | Workbook model, first-party image metadata, and compatibility helpers for older target frameworks |
OfficeIMO.PowerPoint | DocumentFormat.OpenXml [3.5.1, 4.0.0) | Presentation OOXML model and packaging |
OfficeIMO.Word.Html | DocumentFormat.OpenXml [3.5.1, 4.0.0), AngleSharp 1.3.0, AngleSharp.Css 1.0.0-beta.157 | HTML and CSS parsing for Word conversion workflows |
OfficeIMO.Markdown.Html | AngleSharp 1.3.0 | HTML parsing for Markdown conversion and bridge scenarios |
OfficeIMO.Word.Pdf | First-party OfficeIMO.Word and OfficeIMO.Pdf project references | Word-to-PDF conversion through the OfficeIMO PDF engine |
OfficeIMO.Excel.Pdf | First-party OfficeIMO.Excel and OfficeIMO.Pdf project references | Excel-to-PDF conversion through the OfficeIMO PDF engine |
OfficeIMO.Visio | System.IO.Packaging 10.0.3 | OPC packaging support for .vsdx files; colors and image metadata use first-party OfficeIMO.Drawing |
OfficeIMO.Markdown | No third-party runtime package references | Core package is intentionally dependency-light |
OfficeIMO.CSV | No third-party runtime package references | Core package is intentionally dependency-light |
OfficeIMO.Reader | Composes first-party OfficeIMO packages | Its effective upstream surface follows the format packages it wraps |
Additional Microsoft compatibility helpers may appear on older target frameworks, but the table above focuses on the upstream packages that most teams will care about during license review.
Upstream License Notes
| Upstream project | License or model | OfficeIMO packages that use it | What to know |
|---|---|---|---|
| DocumentFormat.OpenXml | MIT | Word, Excel, PowerPoint, Word.Html | This is Microsoft's official Open XML SDK and the main OOXML building block in the Office document packages. |
| AngleSharp | MIT | Markdown.Html, Word.Html | Used for HTML parsing and DOM work. |
| AngleSharp.Css | MIT | Word.Html | Adds CSS parsing on top of AngleSharp for HTML conversion flows. |
| Microsoft.Bcl.AsyncInterfaces | MIT | Excel legacy targets | Provides async interface compatibility for older target frameworks. |
| System.Text.Json | MIT | Excel legacy targets | Provides JSON support where it is not supplied by the target framework. |
| System.IO.Packaging | MIT | Visio | Microsoft packaging primitives for OPC-style containers. |
What We Recommend Teams Check
- Review the exact
PackageReferencelist for the OfficeIMO packages you ship, not just the repo root license. - Re-check upstream terms whenever a dependency version changes, especially around parsing, packaging, or compatibility helper libraries.
- Keep a copy of the upstream notices or license URLs in your own release/compliance workflow if your organization requires that.
How We Address This In The Website
- We keep the first-party OfficeIMO package license visible across the repo and site.
- We document the public dependency surface here instead of hiding it in project files.
- We keep the page scoped to real shipped package dependencies so it stays reviewable and current.
If you need the exact current references, start with the repository project files such as OfficeIMO.Word.csproj, OfficeIMO.Excel.csproj, OfficeIMO.Word.Pdf.csproj, OfficeIMO.Excel.Pdf.csproj, and OfficeIMO.Visio.csproj.