Generated ontology API reference#

The class signatures, inherited members, and ontology definitions below come from generated Python packages at build time. Use a class’s .meta property to inspect its source IRI, definition, parents, and effective property specs. The Class catalog lists every importable S223 and WaTr class.

S223 equipment and connection points#

class plumb.s223.Damper(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_property=(), has_role=(), medium=(), label=None, comment=None, model=None)#

A piece of Equipment inserted into an air distribution system permitting modification of the air resistance of the system and consequently changing the airflow rate or shutting off the airflow.

Ontology: S223 — http://data.ashrae.org/standard223#Damper

class plumb.s223.Fan(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_property=(), has_role=(), medium=(), label=None, comment=None, model=None)#

A piece of Equipment that causes a gas (e.g., air) to flow.

Ontology: S223 — http://data.ashrae.org/standard223#Fan

class plumb.s223.Chiller(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_property=(), has_role=(), medium=(), label=None, comment=None, model=None)#

A piece of Equipment that removes heat from a liquid coolant via a vapor-compression, adsorption refrigeration, or absorption refrigeration cycles.

Ontology: S223 — http://data.ashrae.org/standard223#Chiller

WaTr equipment#

class plumb.watr.Pump(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A device used to move fluids by mechanical action. Unlike s223:Pump, which asks for water, oil or refrigerant, it accepts any s223:Mix-Fluid, so it covers sludge and other slurries.

Ontology: WATR — https://watermetadata.org/ontology/watr#Pump

class plumb.watr.Tank(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A vessel with at least one fluid connection point. A storage tank may use a single bidirectional port; flow-through subclasses require the appropriate inlet and outlet points.

Ontology: WATR — https://watermetadata.org/ontology/watr#Tank

class plumb.watr.CoagulationBasin(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A basin where coagulation occurs to destabilize particles in water

Ontology: WATR — https://watermetadata.org/ontology/watr#CoagulationBasin

class plumb.watr.FlocculationBasin(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A tank where flocculation occurs to aggregate particles in water

Ontology: WATR — https://watermetadata.org/ontology/watr#FlocculationBasin

class plumb.watr.RapidSandFilter(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A type of media filter that uses sand as the filter medium and operates at high filtration rates.

Ontology: WATR — https://watermetadata.org/ontology/watr#RapidSandFilter

class plumb.watr.ChlorinationUnit(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A unit that uses chlorine or chlorine compounds for disinfection.

Ontology: WATR — https://watermetadata.org/ontology/watr#ChlorinationUnit

WaTr process and objective vocabulary#

class plumb.watr.Process(name=None, *, label=None, comment=None, model=None, **props)#

A physical, chemical, or biological activity performed by a piece of equipment or by a system.

Ontology: WATR — https://watermetadata.org/ontology/watr#Process

class plumb.watr.Process_Settling(name=None, *, label=None, comment=None, model=None, **props)#

A unit process that allows solids to settle out of water by gravity.

Ontology: WATR — https://watermetadata.org/ontology/watr#Process-Settling

class plumb.watr.TreatmentObjective(name=None, *, label=None, comment=None, model=None, **props)#

An objective that a piece of equipment or a system is intended to achieve.

Ontology: WATR — https://watermetadata.org/ontology/watr#TreatmentObjective

class plumb.watr.TreatmentObjective_Clarification(name=None, *, label=None, comment=None, model=None, **props)#

Production of a clarified liquid stream by removing suspended solids from it. The objective of every clarifier, whatever the stage it serves and whatever mechanism it separates by.

Ontology: WATR — https://watermetadata.org/ontology/watr#TreatmentObjective-Clarification

class plumb.watr.SedimentationTank(name=None, *, actuated_by_property=(), cnx=(), connected=(), connected_from=(), connected_through=(), connected_to=(), contains_=(), executes=(), has_connection_point=(), has_optional_connection_point=(), has_physical_location=(), has_process=(), has_property=(), has_role=(), has_treatment_objective=(), medium=(), label=None, comment=None, model=None)#

A tank in which suspended solids separate from water by settling under gravity

Ontology: WATR — https://watermetadata.org/ontology/watr#SedimentationTank

Generated domain configurations#

class plumb.watr.drinking_water.CoagulationStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#

Coagulant addition and particle destabilization ahead of flocculation.

class plumb.watr.drinking_water.FlocculationStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#

Gentle mixing to form flocs that can settle in the clarifier.

class plumb.watr.drinking_water.ClarificationStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#

Settles flocs and separates clarified water from a sludge withdrawal.

class plumb.watr.drinking_water.RapidSandFiltrationStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#

Filters clarified water through sand; spent backwash leaves separately during cleaning.

class plumb.watr.drinking_water.ChlorinationStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#

Chlorine dosing and a contact stage with the objective of disinfection.

class plumb.s223.hvac.AirWaterCoolingCoil(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_property=None, has_role=None, medium=None, label=None, comment=None, model=None)#

A cooling coil with separate air and water inlets and outlets.

class plumb.watr.asm2d.AerobicStage(name=None, *, actuated_by_property=None, cnx=None, connected=None, connected_from=None, connected_through=None, connected_to=None, contains_=None, executes=None, has_connection_point=None, has_optional_connection_point=None, has_physical_location=None, has_process=None, has_property=None, has_role=None, has_treatment_objective=None, medium=None, label=None, comment=None, model=None)#
class plumb.watr.asm2d.AerobicDesign(*, volume=1333.0, oxygen_transfer_coefficient)#

Aerobic basin volume in m³ (default 1333) and oxygen transfer coefficient KLa in h⁻¹.

volume = 1333.0#

Volume; ; default unit http://qudt.org/vocab/unit/M3; source https://watermetadata.org/plumb/asm2d#AerobicVolumeShape

oxygen_transfer_coefficient#

Oxygen transfer coefficient; ; default unit http://qudt.org/vocab/unit/PER-HR; source https://watermetadata.org/plumb/asm2d#OxygenTransferCoefficientShape

class plumb.watr.seawater_ro.MembraneDesign(*, membrane_area, spacer_porosity, channel_height, stage_width, salt_permeability)#

MembraneDesign quantities with nominal aspects and shape-declared default units.

membrane_area#

Membrane area; ; default unit http://qudt.org/vocab/unit/M2; source https://watermetadata.org/plumb/seawater-ro#MembraneDesign_membrane_areaShape

spacer_porosity#

Feed spacer porosity; ; default unit http://qudt.org/vocab/unit/UNITLESS; source https://watermetadata.org/plumb/seawater-ro#MembraneDesign_spacer_porosityShape

channel_height#

Membrane channel height; ; default unit http://qudt.org/vocab/unit/M; source https://watermetadata.org/plumb/seawater-ro#MembraneDesign_channel_heightShape

stage_width#

Membrane width per stage; ; default unit http://qudt.org/vocab/unit/M; source https://watermetadata.org/plumb/seawater-ro#MembraneDesign_stage_widthShape

salt_permeability#

Salt permeability coefficient; ; default unit http://qudt.org/vocab/unit/M-PER-SEC; source https://watermetadata.org/plumb/seawater-ro#MembraneDesign_salt_permeabilityShape

Common entity API#

class plumb.Entity(name=None, *, label=None, comment=None, model=None, **props)#

Base class for all generated ontology classes.

Construction requires an active Model (either ambient, via with Model(...), or passed as model=). The first argument is the entity’s local name; the model’s namespace turns it into an IRI at serialization time. When omitted, a name is auto-generated per model as <class>_<n> (vav_1, vav_2, …).

Reserved attribute names (name, type, label, comment, meta, model, ports, describe_ports, the find and walk methods, …; see plumb.gen.naming.RESERVED): ontology properties that would collide are renamed by the generator’s collision policy.

property name#

Local name; combined with the model namespace to mint the IRI.

property type#

Python class name, such as "Duct".

Use meta.iri for the ontology class IRI.

property label#

Human-readable label (rdfs:label); defaults to the name.

property comment#

Free-text note serialized as rdfs:comment.

contains(*children, via=None)#

Declare that this entity contains the given entities.

The predicate is negotiated per (container, child) class pair from the package’s containment table; pass via='<property>' to pick one explicitly. Returns self for chaining.

quantity(name, value, *, unit=None, kind, capability='static', label=None, **properties)#

Create and attach a named S223 quantifiable property to this object.

capability selects a static, observable, or actuatable property. Measurement aspects are independent; pass has_aspect explicitly. A QuantityAmount supplies its own unit. The returned property is an ordinary model entity.

apply_properties(schema, *, prefix=None)#

Attach fresh properties from a generated RDF/SHACL value schema.

port(name, *, direction, medium=None, label=None)#

Declare a named deferred connection point for solver negotiation.

property ports#

Concrete connection points and authored deferred ports on this entity.

The authored model can contain both generated ConnectionPoint entities and PortHandle intentions. A resolved snapshot exposes concrete points here after the solver has materialized the deferred ones.