---
title: Operation map
summary: Which contract operations the proxy exposes and which the repository actually calls.
status: draft
owner: SAIF.Core documentation
last_reviewed: 2026-09-24
---

# Operation map

This page reconciles the four operations `WorkCalendar` exposes against what repository source actually invokes. As with `PDFService` in the same library, the reconciliation here is nuanced: the wrapper `WorkCalendarServiceProxy` contains call sites for all four operations, but no repository source constructs `WorkCalendarServiceProxy` itself, so every operation is called from source but not reached end-to-end by any in-repository caller*.

## Operation map

| Operation | SOAP action | Call site | Calling member | Service documentation | Source |
| --- | --- | --- | --- | --- | --- |
| `IsWorkingDay` | `http://saifonline/SAIFDates/SAIFDates/IsWorkingDay` | `Services/SAIF.Services.Web.Proxies/WorkCalendarServiceProxy.cs:30` | [`IsWorkingDay`](reference.md#isworkingday) | `SAIFDates`† | `WorkCalendarServiceProxy.cs:30` |
| `NextWorkDay` | `http://saifonline/SAIFDates/SAIFDates/NextWorkDay` | `WorkCalendarServiceProxy.cs:42` | [`NextWorkDay`](reference.md#nextworkday) | `SAIFDates`† | `WorkCalendarServiceProxy.cs:42` |
| `FirstWorkDayOfMonth` | `http://saifonline/SAIFDates/SAIFDates/FirstWorkDayOfMonth` | `WorkCalendarServiceProxy.cs:25` | [`FirstWorkDayOfMonth`](reference.md#firstworkdayofmonth) | `SAIFDates`† | `WorkCalendarServiceProxy.cs:25` |
| `LastWorkDayOfMonth` | `http://saifonline/SAIFDates/SAIFDates/LastWorkDayOfMonth` | `WorkCalendarServiceProxy.cs:36` | [`LastWorkDayOfMonth`](reference.md#lastworkdayofmonth) | `SAIFDates`† | `WorkCalendarServiceProxy.cs:36` |

## Uncalled operations

Every operation the proxy exposes is called from repository source (via the wrapper's own call sites — see the important caveat above and in [Overview](overview.md)).

## External service origin

> **Origin**: `IsWorkingDay`, `NextWorkDay`, `FirstWorkDayOfMonth`, and `LastWorkDayOfMonth` are served by `SAIFDates`, which is not documented by this run.

| Attribute | Value |
| --- | --- |
| Canonical service | `SAIFDates` |
| Repository | Not determined from source |
| Evidence of the operation shape | `Services/SAIF.Services.Web.Proxies/Service References/WorkCalendar/saifdates.wsdl` |
| Endpoint address | Unresolved** — supplied by whoever constructs `WorkCalendarServiceProxy`; no repository source does so. Candidate environment key `workCalendarServiceUrl` resolves to `http://saifonline/webservices/SAIFDates/saifdates.asmx` on every track, but is unread by any repository source |

## Coverage

| Check | Count | Reconciles |
| --- | --- | --- |
| Operations declared by the proxy | 4 | — |
| Operations called from source | 4 | Rows in `Operation map` |
| Operations present but not called | 0 | `Uncalled operations` states every operation is called |
| Called + not called | 4 | Equals operations declared by the proxy |
| Every called row resolves or is †-marked | Yes | — |
| Every called row has a section in [Client reference](reference.md) | Yes | — |

**Important caveat:** `WorkCalendarServiceProxy` — the wrapper containing these call sites — has no in-repository caller of its own (see [Overview](overview.md) and [Tech debt](tech-debt.md)). These operations are technically "called" in the sense that repository source contains the SOAP invocations, but they are not reached end-to-end by any code path in this repository today. A separate, external `IWorkCalendarService`/`WorkCalendarService` abstraction is what this repository's business code actually depends on for work-calendar logic, and it is not shown to use this proxy.

## Related documentation
- [Client index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Contract](contract.md)
- [Client reference](reference.md)
- [Consumption](consumption.md)
- [Dependencies](dependencies.md)
- [Tech debt](tech-debt.md)

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence. Statements marked with `**` could
> not be confirmed; treat as unknown until verified.

## Sources
- `Services/SAIF.Services.Web.Proxies/WorkCalendarServiceProxy.cs`
- `Services/SAIF.Services.Web.Proxies/Service References/WorkCalendar/saifdates.wsdl`
