Skip to main content

Using Limit and Requirement Libraries

Build reusable sets of limits and sampling requirements, then apply them to outfalls, permits, and Sample Report Configurations.

Who this article is for: Authority users who set up discharge limits and Sample Report Configurations.

Overview

Libraries save you from entering the same limits and sampling requirements again and again. There are two kinds, each with its own page under Configuration:

  • A limit library is a named set of discharge limits. You can apply it to an outfall, or to a permit in the permit wizard.

  • A requirement library holds one complete sampling requirement: its schedule, sampling specifications, flow reporting, and calculated results. You can apply it to a Sample Report Configuration.

The Limit Libraries page also includes the CFR Subpart Browser, a built-in, read-only set of federal categorical limits grouped by 40 CFR subpart. You can apply a whole subpart's limits the same way you apply a library.

Applying a library adds copies. The copies aren't linked to the library, so later changes on either side don't affect the other.

Opening the Libraries

  1. Click Configuration in the left sidebar.

  2. Click the Limit Libraries tile or the Requirement Libraries tile.

    The Limit Libraries and Requirement Libraries tiles on the Configuration page

Creating a Limit Library

  1. On the Limit Libraries page, find the Custom Libraries section and click Add New. The Add Limit Library window opens.

  2. Enter a Library Name.

  3. Click Add New to add a limit. The Add New Limit window opens with the same fields as an outfall limit: Analyte, Min Value, Max Value, Limit Unit, Limit Type, Limit Definition, and Limit Rationale.

    The Add New Limit window
  4. Fill in the limit and click Save. The limit appears in the library's table.

  5. Repeat steps 3 and 4 for each limit you want in the library.

  6. Click Add Library.

⚠️ Nothing is saved until you click Add Library. The library and its limits are saved together. If you close the window first, you're asked whether to leave without saving.

A library can be saved with no limits, but it can't be applied until it has some. Its preview shows This library has no limits to apply. and Apply stays unavailable.

The Custom Libraries table lists every custom limit library with its Name, number of Limits, Last Modified date, and Last Modified By.

The Custom Libraries table on the Limit Libraries page

Editing or Deleting a Limit Library

To edit a library:

  1. On the Limit Libraries page, click the library's row. Its window opens with the library Name and a table of its limits.

  2. Make your changes:

  • To rename the library, edit the Name field.

  • To add a limit, click Add New.

  • To change a limit, click its row. Update it in the Edit Limit window and click Save.

  • To remove limits, select their checkboxes, click Delete, and confirm.

  1. Click Save. The button is available once you've made a change.

To delete a library:

  1. On the Limit Libraries page, select the checkbox for one or more libraries.

  2. Click Delete.

  3. Confirm in the Delete Limit Library window.

Deleting a library doesn't remove its limits from any outfall or permit it was already applied to.

Browsing CFR Categorical Limits

The CFR Subpart Browser sits below Custom Libraries on the Limit Libraries page. It lists each 40 CFR subpart with its number of Limits.

  1. Type any part of the CFR Subpart label in the search box, such as the part number, subpart letter, subcategory name, or PSES/PSNS, then press Enter or click the search icon.

  2. Click a subpart's row to expand it. Its limits appear with Analyte, Limit Type, Min Value, Max Value, and Units.

    A CFR subpart expanded in the CFR Subpart Browser

The browser is for reference. CFR subparts can't be edited or deleted.

Applying Limits to an Outfall

You can apply a limit library or a CFR subpart to an active outfall.

  1. Open the outfall. (Click Industrial Users in the left sidebar, select the Industrial User, then select the outfall.)

  2. In the Discharge Limits section, click Add Limit, then choose Apply Limit Library or Apply CFR Limits.

    The Add Limit menu on an outfall
  3. Click the Select library field (or Search CFR limits for a CFR subpart), type to search, and choose one.

  4. Review the preview. It lists every limit that will be added, with Analyte, Limit Type, Min Value, Max Value, Units, Definition, and Rationale. Click Back to choose a different one.

    The Apply Limit Library preview
  5. Click Apply.

A message confirms how many limits were added, for example Added 12 limits from Local Metals. The new limits appear in the outfall's Discharge Limits table.

Limits applied from a CFR subpart have a Compliance definition, and their rationale cites that CFR standard.

💡 Applying never changes or removes limits already on the outfall. If an identical limit is already there, that limit is skipped and the message names the skipped analytes. See Identical Limits below for what counts as identical and what to do about a skipped limit.

Applying Limits in the Permit Wizard

  1. On the Limits step of the permit wizard, click Add Limit, then choose Apply Limit Library or Apply CFR Limits.

  2. Choose a library or CFR subpart, as on the outfall.

  3. In the preview, choose the Outfall the limits belong to. The list shows the Industrial User's active outfalls.

  4. Click Apply.

The limits are created on that outfall and added to the permit in one step. If the outfall already has an identical limit that isn't inactive, that existing limit is added to the permit instead of a copy. An identical limit that is inactive on the outfall is skipped, and the message says so.

⚠️ The permit must be saved before you can apply a library. The permit's template must also have a limits table for each definition in the library. For example, a library with Notification limits needs a template with a table for Notification limits. If it doesn't, the preview shows a warning and Apply stays unavailable.

Identical Limits

You can't add a limit identical to one already on the outfall. Identical means the analyte, limit type, definition, min value, max value, unit, and rationale (including any CFR citation) all match. A limit that differs in any one of these is a separate limit and is allowed.

  • Adding a limit by hand: If you click New Limit (on some outfalls, Add Limit > New Limit) and enter a limit identical to one already on the outfall, the limit isn't saved and a message tells you an identical limit already exists. Change a value, or use the limit that's already there.

  • Applying a library or CFR subpart to an outfall: Identical limits are skipped, and the rest are added. Inactive and archived limits on the outfall count, so a library limit can be skipped even when the matching limit on the outfall isn't in use.

  • Applying in the permit wizard: An identical limit that isn't inactive is added to the permit. An identical inactive limit is skipped.

To use a limit that was skipped because of an inactive or archived match:

  1. In the outfall's Discharge Limits table, click the existing limit. If it's archived, first click the archive icon above the table and choose Archived or All.

  2. If the limit is archived, click Unarchive, then click the limit again to reopen it.

  3. Click the Inactive switch to activate the limit.

A Compliance limit is enforced once it's connected to an active permit or General Control. For more on limit status, see Discharge Limits: Types, Rationales, and Enforceability.

Creating a Requirement Library

A requirement library holds one requirement, and the library's name is the requirement's name. It holds the requirement's schedule and parts only. Report settings such as the report period are set on each Sample Report Configuration.

  1. On the Requirement Libraries page, click Add Library. The Add Requirement Library window opens.

  2. Enter a Requirement Name.

  3. Under Schedule, choose Once Per Report Period or Repeating. For Repeating, enter an Interval and pick a Frequency (Daily, Weekly, Monthly, or Annually). You can also enter an Ends after number of occurrences.

    The Add Requirement Library window with a Repeating schedule
  4. Click Add Requirement and choose Sampling Specification, Flow Reporting, or Calculated Result. Each one opens the same form you use when building a Sample Report Configuration. Add as many as you need.

  5. Click Save Requirement.

The library needs at least one sampling specification, flow reporting entry, or calculated result before it can be saved.

The same rules that apply when you build a requirement on a Sample Report Configuration apply here, based on the library's own schedule. Options that don't fit the schedule aren't offered:

  • With an Ends after count, Flow Reporting and Calculated Result aren't available.

  • For a Repeating schedule, only calculated results with a period at least as long as the schedule are offered. For example, a weekly requirement can have weekly or monthly calculations, but not daily ones.

  • For a Repeating schedule, only flow reporting with a period no longer than the schedule is offered. For example, a weekly requirement can have daily or weekly flow, but not monthly flow.

  • A requirement with a mass calculation can have only one flow reporting entry.

The Requirement Libraries table shows each library's Library Name, Sampling Frequency, Spec Name, Sample Type, Analytes, Calculation, and Flow Type.

To edit a library, click its row, make your changes, and click Save Requirement.

To delete libraries, select their checkboxes, click Delete, and confirm in the Delete Requirement Library window. Deleting a library doesn't remove requirements already applied from it.

Applying a Requirement Library to a Sample Report Configuration

  1. While creating or editing a Sample Report Configuration, go to its requirements step:

  • From an outfall, the step is Report Requirements.

  • From New Configuration in the permit wizard, or when creating a Sample Report Configuration from a Response, the step is Requirements.

  1. Click Add Requirement, then choose Add from library. This option appears once the Sample Report Configuration has been saved.

    The Add Requirement menu on the Report Requirements step
  2. In the Apply Library window, click Select library and choose a library. Each option shows when it was last modified. A library that doesn't fit this Sample Report Configuration is grayed out, with the reason shown beneath it.

    The Apply Library list, with libraries that don't fit grayed out
  3. Review the summary and the preview. The preview shows the library's Sampling Specifications, plus its Flow Reporting and Calculated Results when it has them.

  4. Click Apply.

A message confirms Added requirement from the library's name. The requirement is added alongside any requirements already on the Sample Report Configuration.

What Happens Next

Applied limits and requirements are independent copies:

  • Editing or deleting a library doesn't change anything it was already applied to.

  • Editing an applied limit or requirement doesn't change the library.

  • Applying the same library to several outfalls or Sample Report Configurations creates separate copies on each one.

FAQ

Q: Some limits were skipped when I applied a library. Why?

A: A limit is skipped when the outfall already has an identical one, including an inactive or archived one. The message lists up to five skipped analytes. See Identical Limits above for what counts as identical and how to reactivate a skipped limit.

Q: In the permit wizard, the message says limits were skipped because they are inactive on this outfall.

A: The outfall already has those exact limits, but they're inactive, so they weren't added to the permit. Identical limits that aren't inactive are added to the permit instead of being copied. To use an inactive limit, activate it on the outfall as described in Identical Limits above.

Q: Why can't I apply a library in the permit wizard?

A: If you see Save the permit before adding limits., save the permit first. If the preview warns that the permit's template has no table for a type of limit, the template can't show some of the library's limits. Apply works once the permit uses a template with that table, or with a library that doesn't include those limits.

Q: Why can't I save a new limit on my outfall?

A: The outfall may already have an identical limit. Change a value, or use the existing limit. See Identical Limits above.

Q: Can I change the limits in a CFR subpart?

A: No. CFR subparts are built in and read only. Your own limit libraries can hold any values you enter.

Q: I got an error that a library with this name already exists.

A: Each limit library name must be unique, and so must each requirement library name. Capitalization doesn't count, so "Metals" and "METALS" are the same name.

Q: Why does my library say it already holds an identical limit?

A: Each limit in a limit library must differ from the others in at least one field. Change a value or remove the duplicate.

Q: Why is a requirement library grayed out when I try to apply it?

A: Its schedule doesn't fit this Sample Report Configuration's report period, or the Sample Report Configuration is assigned to the authority and the library includes a compliance determinant. The reason appears under the library's name. To use the library, adjust the report period or choose a different library.

Q: Why can't I add flow reporting or a calculated result to my requirement library?

A: The library has an Ends after count. Those options show Not allowed with an ends-after count. Clear the Ends after field to add them.

Q: If I update a library, do outfalls and Sample Report Configurations I already applied it to change?

A: No. Applied items are copies with no link back to the library. Changes to an outfall's limits or a Sample Report Configuration's requirements are made on that outfall or Sample Report Configuration.

Related Articles

Did this answer your question?