diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d54331771..fa8aebeba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,14 +21,10 @@ jobs: uses: actions/setup-python@v5 with: python-version: 3.11 - - name: install-poetry - uses: snok/install-poetry@v1 - with: - version: 1.4.0 - virtualenvs-in-project: false - virtualenvs-path: ~/.virtualenvs - name: poetry install - run: poetry install --all-extras + run: | + python -m pip install "poetry~=2.2.1" + poetry install --all-extras - name: run isort and black run: | poetry run isort . --check @@ -54,14 +50,10 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - name: install-poetry - uses: snok/install-poetry@v1 - with: - version: 1.4.0 - virtualenvs-in-project: false - virtualenvs-path: ~/.virtualenvs - name: poetry install - run: poetry install --all-extras + run: | + python -m pip install "poetry~=2.2.1" + poetry install --all-extras - name: install pytest-xdist for parallel tests run: poetry run pip install pytest-xdist - name: lint @@ -95,14 +87,10 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - name: install-poetry - uses: snok/install-poetry@v1 - with: - version: 1.4.0 - virtualenvs-in-project: false - virtualenvs-path: ~/.virtualenvs - name: poetry install - run: poetry install --all-extras + run: | + python -m pip install "poetry~=2.2.1" + poetry install --all-extras - name: install pytest-xdist for parallel tests run: poetry run pip install pytest-xdist - name: integration tests @@ -135,14 +123,10 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - name: install-poetry - uses: snok/install-poetry@v1 - with: - version: 1.4.0 - virtualenvs-in-project: false - virtualenvs-path: ~/.virtualenvs - name: poetry install - run: poetry install --all-extras + run: | + python -m pip install "poetry~=2.2.1" + poetry install --all-extras - name: install pytest-xdist for parallel tests run: poetry run pip install pytest-xdist - name: library tests diff --git a/buildingmotif/bin/cli.py b/buildingmotif/bin/cli.py index 8a7d6e358..249b3bdfe 100644 --- a/buildingmotif/bin/cli.py +++ b/buildingmotif/bin/cli.py @@ -6,6 +6,7 @@ from pathlib import Path from buildingmotif import BuildingMOTIF +from buildingmotif.bin.library import add_commands from buildingmotif.dataclasses import Library from buildingmotif.ingresses.bacnet import BACnetNetwork @@ -13,6 +14,7 @@ prog="buildingmotif", description="CLI Interface for common BuildingMOTIF tasks" ) subparsers = cli.add_subparsers(dest="subcommand") + subcommands = {} log = logging.getLogger() log.setLevel(logging.INFO) @@ -39,6 +41,22 @@ def decorator(func): return decorator +def subparser(*subparser_args, parent=subparsers): + """Decorates a function and makes it available as a subparser""" + + def decorator(func): + subcommand(*subparser_args, parent=parent)(func) + + subparser = subcommands[func].add_subparsers(dest=f"{func.__name__}_subcommand") + + def subcommand_decorator(*subparser_args, parent=subparser): + return subcommand(*subparser_args, parent=parent) + + return subcommand_decorator + + return decorator + + def get_db_uri(args) -> str: """ Fetches the db uri from args, or prints the usage @@ -163,6 +181,13 @@ def scan(args): bacnet_network.dump(Path(args.output_file)) +@subparser() +def library(args): + """A collection of commands for working with libraries""" + + +add_commands(library) + # entrypoint is actually defined in pyproject.toml; this is here for convenience/testing if __name__ == "__main__": app() diff --git a/buildingmotif/bin/cli_helpers.py b/buildingmotif/bin/cli_helpers.py new file mode 100644 index 000000000..914161ece --- /dev/null +++ b/buildingmotif/bin/cli_helpers.py @@ -0,0 +1,158 @@ +from enum import Enum +from typing import Union + +from pygit2.config import Config + + +class Color(Enum): + """ANSI color codes for terminal text formatting. + + Usage: + Color.GREEN("Example text"), produces green text. + Color.GREEN + "Example text" + Color.RESET, is the same as Color.GREEN("Example text") + """ + + BLACK = "\033[30m" + RED = "\033[31m" + GREEN = "\033[32m" + YELLOW = "\033[33m" + BLUE = "\033[34m" + MAGENTA = "\033[35m" + CYAN = "\033[36m" + LIGHT_GRAY = "\033[37m" + GRAY = "\033[90m" + LIGHT_RED = "\033[91m" + LIGHT_GREEN = "\033[92m" + LIGHT_YELLOW = "\033[93m" + LIGHT_BLUE = "\033[94m" + LIGHT_MAGENTA = "\033[95m" + LIGHT_CYAN = "\033[96m" + WHITE = "\033[97m" + RESET = "\033[0m" + + def __call__(self, text): + return f"{self.value}{text}{Color.RESET.value}" + + def __str__(self): + return self.value + + +def print_tree( + tree: dict[Union[str, tuple[str, str]], Union[dict, None]], indent=4 +) -> None: + """Print a tree like dict to the console.""" + + def _tree_to_str( + item: Union[str, tuple[str, str]], + tree: Union[dict, None] = None, + level: int = 0, + indent: int = 4, + ) -> str: + """""" + description = "" + if isinstance(item, tuple): + name, description = item + else: + name = item + + if level % 5 == 0: + name = Color.BLUE(name) + elif level % 5 == 1: + name = Color.MAGENTA(name) + elif level % 5 == 2: + name = Color.GREEN(name) + elif level % 5 == 3: + name = Color.CYAN(name) + elif level % 5 == 4: + name = Color.RED(name) + + title = f"{name} {description}".strip() + + lines = [title] + if tree is None: + return title + for index, (subitem, subtree) in enumerate(tree.items()): + subtree_lines = _tree_to_str(subitem, subtree, level + 1, indent).split( + "\n" + ) + last = index == len(tree) - 1 + + for line_index, line in enumerate(subtree_lines): + prefix = " " * indent + if last: + if line_index == 0: + prefix = f"└{'─' * (indent - 2)} " + else: + if line_index == 0: + prefix = f"├{'─' * (indent - 2)} " + else: + prefix = f"│{' ' * (indent - 2)} " + subtree_lines[line_index] = f"{prefix}{line}" + lines.extend(subtree_lines) + return "\n".join(lines) + + lines = [] + for subitem, subtree in tree.items(): + lines.append(_tree_to_str(subitem, subtree, 0, indent)) + print("\n".join(lines)) + + +def get_input( + prompt: str, + default: Union[str, None] = None, + optional: bool = False, + input_type: Union[type] = str, +) -> str | int | float | bool | None: + """ + Helper function to get input from the user with a prompt. + If default is provided, it will be used if the user just presses Enter. + If optional is False, the user must provide an input. + """ + parenthetical = f" [{Color.BLUE(default)}]" if default is not None else "" + if optional and default is not None: + parenthetical = f" [{Color.BLUE(default)}, {Color.MAGENTA('n to skip')}]" + + if input_type is bool: + parenthetical = f"{parenthetical} {Color.MAGENTA('(y/n)')}" + + while True: + user_input = input(f"{Color.GREEN(prompt)}{parenthetical}: ") + if not user_input: + if default is not None: + user_input = default + elif optional: + return None + else: + print("This field is required. Please provide a value.") + continue + try: + if user_input == "n" and optional: + return None + if input_type in [int, float, str]: + return input_type(user_input) + elif input_type is bool: + true_input = user_input.lower() in ["true", "1", "yes", "y"] + false_input = user_input.lower() in ["false", "0", "no", "n"] + if true_input: + return True + elif false_input: + return False + raise ValueError(f"Invalid input for boolean: {user_input}") + return input_type(user_input) + except ValueError: + print( + f"{Color.RED}Invalid input. Please enter a valid {input_type.__name__}.{Color.RESET}" + ) + + +def git_global_config() -> dict[str, str]: + """ + Fetches the global git configuration. + """ + config = Config.get_global_config() + return {value.name: value.value for value in config} + + +def arg(*argnames, **kwargs): + """Helper for defining arguments on subcommands""" + return argnames, kwargs diff --git a/buildingmotif/bin/library.py b/buildingmotif/bin/library.py new file mode 100644 index 000000000..909e9ac34 --- /dev/null +++ b/buildingmotif/bin/library.py @@ -0,0 +1,151 @@ +from pathlib import Path + +from jinja2 import Environment + +from buildingmotif import BuildingMOTIF +from buildingmotif.bin.cli_helpers import ( + Color, + arg, + get_input, + git_global_config, + print_tree, +) +from buildingmotif.dataclasses.library import Library +from buildingmotif.dataclasses.shape_collection import find_imports + + +def add_commands(library): + @library( + arg("path", help="Path to the library directory"), + ) + def init(args): + """Initialize a library""" + library_path = Path(args.path).resolve() + + template_file = ( + Path(__file__).resolve().parents[1] / "resources" / "library.template.yml" + ) + + user_name = git_global_config().get("user.name") + user_email = git_global_config().get("user.email") + default_user = None + if user_name and user_email: + default_user = f"{user_name} <{user_email}>" + + env = Environment() + template = env.from_string(template_file.read_text()) + + repeat = True + + library_arguments = {} + while repeat: + print( + f"\n{Color.CYAN}This command will guide you through creating your {Color.GREEN}library.yaml{Color.CYAN} file.{Color.RESET}\n" + ) + + library_arguments["name"] = get_input( + "Library name", + default=library_arguments.get("name", library_path.name), + input_type=str, + ) + library_arguments["version"] = get_input( + "Version", + default=library_arguments.get("version", "0.1.0"), + input_type=str, + ) + library_arguments["description"] = get_input( + "Description", + default=library_arguments.get("description", ""), + input_type=str, + ) + library_arguments["author"] = get_input( + "Author", + default=library_arguments.get("author", default_user), + optional=True, + input_type=str, + ) + library_arguments["homepage"] = get_input( + "Home page URL", + default=library_arguments.get("homepage", None), + optional=True, + input_type=str, + ) + + print( + f"\n{Color.CYAN}Please confirm that the following information is correct:{Color.RESET}\n" + ) + print( + f"{Color.GREEN}Name: {Color.BLUE}{library_arguments['name']}{Color.RESET}" + ) + print( + f"{Color.GREEN}Version: {Color.BLUE}{library_arguments['version']}{Color.RESET}" + ) + print( + f"{Color.GREEN}Description: {Color.BLUE}{library_arguments['description']}{Color.RESET}" + ) + print( + f"{Color.GREEN}Author: {Color.BLUE}{library_arguments.get('author', '') or ''}{Color.RESET}" + ) + print( + f"{Color.GREEN}Home page: {Color.BLUE}{library_arguments.get('home', '') or ''}{Color.RESET}" + ) + print("\n") + confirm = get_input( + "Is this information correct?", default="y", input_type=bool + ) + repeat = not confirm + print("\n") + + library_path.mkdir(parents=True, exist_ok=True) + library_file = library_path / "library.yml" + if library_file.exists(): + overwrite = get_input( + f"Library file '{library_file}' already exists. Overwrite?", + default="n", + input_type=bool, + ) + if not overwrite: + print(f"{Color.RED}Library initialization aborted.{Color.RESET}") + return + library_file.write_text(template.render(library_arguments)) + + @library( + arg("path", help="Path to the library directory"), + ) + def load(args): + """Load a library""" + BuildingMOTIF("sqlite:///").setup_tables() + # library_path = Path(args.path).resolve() + Library.load(directory=args.path) + + @library( + arg("path", help="Path to the library directory"), + arg("--depth", help="Depth of the audit", type=int, default=3), + ) + def audit(args): + """Generate an audit report of a library's dependencies""" + + print("Setting up empty BuildingMOTIF") + BuildingMOTIF("sqlite:///").setup_tables() + print("\nLoading Library") + library = Library.load( + directory=args.path, run_shacl_inference=False, infer_templates=False + ) + print("\nResolving Imports") + imports = find_imports(library.get_shape_collection().graph, depth=args.depth) + + def imports_to_tree(imports): + tree = {} + for name, ((graph, source), imp) in imports.items(): + description = Color.RED("Not Found") + if source == "library": + description = Color.GREEN("Found in library") + elif source == "shape_collection": + description = Color.GREEN("Found in shape collection") + elif source == "internet": + description = Color.GREEN("Found on the internet") + item = (name, f" - {description}") + tree[item] = imports_to_tree(imp) + return tree + + print_tree(imports_to_tree(imports)) diff --git a/buildingmotif/dataclasses/library.py b/buildingmotif/dataclasses/library.py index 7433c1851..8d599f1a3 100644 --- a/buildingmotif/dataclasses/library.py +++ b/buildingmotif/dataclasses/library.py @@ -1,3 +1,4 @@ +import json import logging import pathlib import tempfile @@ -7,6 +8,7 @@ import pygit2 import rdflib import yaml +from jsonschema import validate from pkg_resources import resource_exists, resource_filename from rdflib.exceptions import ParserError from rdflib.plugins.parsers.notation3 import BadSyntax @@ -133,10 +135,10 @@ def load( run_shacl_inference=run_shacl_inference, ) elif directory is not None: - if resource_exists("buildingmotif.libraries", directory): + if resource_exists("buildingmotif.libraries", str(directory)): logging.debug(f"Loading builtin library: {directory}") src = pathlib.Path( - resource_filename("buildingmotif.libraries", directory) + resource_filename("buildingmotif.libraries", str(directory)) ) else: src = pathlib.Path(directory) @@ -293,27 +295,61 @@ def _load_from_directory( :return: library :rtype: Library """ + library_yml = directory / "library.yml" + + name = directory.name + + if not library_yml.exists(): + logging.warning( + f"Directory {directory} does not contain a library.yml file." + ) + else: + library_spec = yaml.load(open(library_yml, "r"), Loader=yaml.FullLoader) + cls._validate_library_spec(library_spec) + name = library_spec["name"] + if "dependencies" in library_spec: + for dependency in library_spec["dependencies"]: + _resolve_library_definition(dependency, directory=directory) if not overwrite: - if cls._library_exists(directory.name): + if cls._library_exists(name): logging.warning( - f'Library "{directory.name}" already exists in database and "overwrite=False". Returning existing library.' # noqa + f'Library "{name}" already exists in database and "overwrite=False". Returning existing library.' # noqa ) - return Library.load(name=directory.name) + return Library.load(name=name) - lib = cls.create(directory.name, overwrite=overwrite) + lib = cls.create(name=name, overwrite=overwrite) # read all .yml files for file in directory.rglob("*.yml"): + if "library.yml" in file.name: + continue # skip the library.yml file itself # if .ipynb_checkpoints, skip; these are cached files that Jupyter creates if ".ipynb_checkpoints" in file.parts: continue lib._read_yml_file(file) # load shape collections from all ontology files in the directory - lib._load_shapes_from_directory(directory) + lib._load_shapes_from_directory( + directory, + infer_templates=infer_templates, + run_shacl_inference=run_shacl_inference, + ) return lib + @staticmethod + def _validate_library_spec(spec: Dict[str, Any]) -> None: + """Validates a library specification dictionary against the library schema. + + :param spec: library specification + :type spec: Dict[str, Any] + :raises jsonschema.ValidationError: if the spec is invalid + """ + library_yml_schema = json.load( + open(resource_filename("buildingmotif.resources", "library.schema.json")) + ) + validate(instance=spec, schema=library_yml_schema) + @classmethod def load_from_libraries_yml(cls, filename: str): """ @@ -480,12 +516,17 @@ def get_template_by_name(self, name: str) -> Template: return Template.load(dbt.id) -def _resolve_library_definition(desc: Dict[str, Any]): +def _resolve_library_definition( + desc: Dict[str, Any], directory: Optional[pathlib.Path] = None +): """ Loads a library from a description in libraries.yml """ if "directory" in desc: - spath = pathlib.Path(desc["directory"]).absolute() + spath = pathlib.Path(desc["directory"]) + if directory is not None: + spath = directory / spath + spath = spath.absolute() if spath.exists() and spath.is_dir(): logging.info(f"Load local library {spath} (directory)") Library.load(directory=str(spath)) @@ -498,8 +539,8 @@ def _resolve_library_definition(desc: Dict[str, Any]): Library.load(ontology_graph=g) elif "git" in desc: repo = desc["git"]["repo"] - branch = desc["git"]["branch"] - path = desc["git"]["path"] + branch = desc["git"].get("branch", "main") + path = desc["git"].get("path", ".") logging.info(f"Load library {path} from git repository: {repo}@{branch}") with tempfile.TemporaryDirectory() as temp_loc: pygit2.clone_repository( diff --git a/buildingmotif/dataclasses/shape_collection.py b/buildingmotif/dataclasses/shape_collection.py index ead6a613a..51648275d 100644 --- a/buildingmotif/dataclasses/shape_collection.py +++ b/buildingmotif/dataclasses/shape_collection.py @@ -525,6 +525,62 @@ def get_varname(shape): return clauses, list(project) +def find_ontology( + import_ref: URIRef, containing_graph: Graph = None +) -> Tuple[Union[Graph, None], str]: + """Resolve a single ontology import by URIRef.""" + if containing_graph is not None: + if import_ref in containing_graph.subjects( + predicate=RDF.type, object=OWL.Ontology + ): + return containing_graph, "contained" + + from buildingmotif.dataclasses.library import Library + + bm = get_building_motif() + # try to load the library by name + try: + lib = Library.load(name=import_ref) + return lib.get_shape_collection().graph, "library" + except Exception: + pass + + # search through our shape collections for a graph with the provided name + for shape_collection in bm.table_connection.get_all_db_shape_collections(): + sc = ShapeCollection.load(shape_collection.id) + if sc.graph_name == import_ref: + return sc.graph, "shape_collection" + + # Try loading from ontology URI + try: + g = Graph() + g.parse(import_ref) + return g, "internet" + except Exception: + pass + + return None, "not found" + + +def find_imports( + graph: rdflib.Graph, depth: int = 1, visited: set = set() +) -> dict[URIRef, Tuple[Tuple[Union[Graph, None], str], dict]]: + + imports = {} + for ontology in graph.objects(predicate=OWL.imports): + if ontology not in visited: + visited.add(ontology) + resolved_ontology, source = find_ontology(ontology, graph) + if resolved_ontology is not None and source != "contained" and depth > 0: + imports[ontology] = ( + (resolved_ontology, source), + find_imports(resolved_ontology, depth - 1), + ) + else: + imports[ontology] = ((resolved_ontology, source), {}) + return imports + + def _resolve_imports( graph: rdflib.Graph, recursive_limit: int, diff --git a/buildingmotif/libraries/constraints/library.yml b/buildingmotif/libraries/constraints/library.yml new file mode 100644 index 000000000..d31ea25f2 --- /dev/null +++ b/buildingmotif/libraries/constraints/library.yml @@ -0,0 +1,4 @@ +name: constraints +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/buildingmotif/resources/__init__.py b/buildingmotif/resources/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/buildingmotif/resources/library.schema.json b/buildingmotif/resources/library.schema.json new file mode 100644 index 000000000..b74233e92 --- /dev/null +++ b/buildingmotif/resources/library.schema.json @@ -0,0 +1,123 @@ +{ + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the library." + }, + "version": { + "type": "string", + "description": "The version of the library." + }, + "description": { + "type": "string", + "description": "A brief description of the library." + }, + "authors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of authors of the library." + }, + "homepage": { + "type": "string", + "format": "uri", + "description": "The homepage URL of the library." + }, + "dependencies": { + "type": "array", + "items": { + "oneOf": [ + { + "type": "object", + "properties": { + "directory": { + "type": "string", + "description": "The directory where the dependency is located." + } + }, + "required": [ + "directory" + ] + }, + { + "type": "object", + "properties": { + "ontology": { + "type": "string", + "format": "uri", + "description": "The URI of the ontology dependency." + } + }, + "required": [ + "ontology" + ] + }, + { + "type": "object", + "properties": { + "git": { + "type": "object", + "properties": { + "repo": { + "type": "string", + "format": "uri", + "description": "The Git repository URL." + }, + "path": { + "type": "string", + "description": "The path within the Git repository.", + "default": "." + }, + "branch": { + "type": "string", + "description": "The branch of the Git repository.", + "default": "main" + }, + "tag": { + "type": "string", + "description": "The tag of the Git repository." + }, + "commit": { + "type": "string", + "description": "The commit hash of the Git repository." + } + }, + "required": [ + "repo", + "path" + ], + "oneOf": [ + { + "required": [ + "branch" + ] + }, + { + "required": [ + "tag" + ] + }, + { + "required": [ + "commit" + ] + } + ] + } + }, + "required": [ + "git" + ] + } + ] + } + } + }, + "required": [ + "name", + "version", + "description" + ] +} diff --git a/buildingmotif/resources/library.template.yml b/buildingmotif/resources/library.template.yml new file mode 100644 index 000000000..21cb4118d --- /dev/null +++ b/buildingmotif/resources/library.template.yml @@ -0,0 +1,17 @@ +name: {{ name }} +version: '{{ version }}' +description: | + {{ description }} +{%- if author %} +authors: + - {{ author }} +{%- endif %} +{%- if home %} +homepage: {{ homepage }} +{%- endif %} +{%- if dependencies %} +dependencies: + {%- for dependency in dependencies %} + - {{ dependency }} + {%- endfor %} +{%- endif %} diff --git a/libraries/ashrae/guideline36/library.yml b/libraries/ashrae/guideline36/library.yml new file mode 100644 index 000000000..ac8dd3af7 --- /dev/null +++ b/libraries/ashrae/guideline36/library.yml @@ -0,0 +1,4 @@ +name: guideline36 +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/notebooks/output.ttl b/notebooks/output.ttl deleted file mode 100644 index 551899054..000000000 --- a/notebooks/output.ttl +++ /dev/null @@ -1,2724 +0,0 @@ -@prefix bldg: . -@prefix ns1: . -@prefix owl: . -@prefix qudt: . -@prefix qudtqk: . -@prefix rdfs: . -@prefix sh: . -@prefix unit: . - -ns1:EnumerationKind-Default a ns1:EnumerationKind-AlarmStatus, - ns1:EnumerationKind-Override ; - rdfs:label "AlarmStatus-Alarm"@en, - "Override-Default"@en . - -ns1:EnumerationKind-Overridden a ns1:EnumerationKind-AlarmStatus, - ns1:EnumerationKind-Override ; - rdfs:label "AlarmStatus-Ok"@en, - "Override-Overridden"@en . - -bldg: a owl:Ontology . - -bldg:CHWS a ns1:System ; - rdfs:label "Chilled Water System" ; - ns1:contains bldg:bypass-valve_f8f59d89, - bldg:chw-hx_8dc037ec, - bldg:lead-chw-booster-pump_46e000ce, - bldg:lead-chw-pump_76441788, - bldg:standby-chw-booster-pump_fcd32e76, - bldg:standby-chw-pump_30c01283 . - -bldg:HWS a ns1:System ; - rdfs:label "Hot Water System" ; - ns1:contains bldg:bypass-valve_c5588798, - bldg:dwh_c70238f9, - bldg:hw-hx_c2cc773a, - bldg:lead-hw-booster-pump_00ab8f23, - bldg:lead-hw-pump_ab595573, - bldg:standby-hw-booster-pump_b458b745, - bldg:standby-hw-pump_29409e1e . - -bldg:MAU a ns1:AirHandlingUnit ; - ns1:contains bldg:MAU-HRC_ecff66d9, - bldg:cooling-coil_02f4d6bd, - bldg:evaporative-cooler_7dd4e2cf, - bldg:final-filter_4f25888d, - bldg:heating-coil_5d39881e, - bldg:oad_cfebf3fe, - bldg:pre-filter_ed6ce7b7, - bldg:sa_pressure_sensor_0a2b6ed3, - bldg:supply-fan_3623aedf ; - ns1:hasConnectionPoint bldg:MAU_Supply, - bldg:outside-air_42ebfa0f ; - ns1:hasProperty bldg:oa_rh_99024e1e, - bldg:sa_sp_9bd1e96d . - -bldg:VAV-1 a ns1:TerminalUnit ; - ns1:contains bldg:dmp_81590e6a, - bldg:rhc_8734f4f9, - bldg:sup-air-flow-sensor_9853f49c, - bldg:sup-air-pressure-sensor_d9a01f03, - bldg:sup-air-temp-sensor_656485ff ; - ns1:hasConnectionPoint bldg:VAV-1-in, - bldg:air-out_6111b6de ; - ns1:hasProperty bldg:sup-air-flow_9620c6d6, - bldg:sup-air-pressure_47f9e431, - bldg:sup-air-temp_8e19e029 . - -bldg:VAV-2 a ns1:TerminalUnit ; - ns1:contains bldg:dmp_9d44f91a, - bldg:rhc_8e453996, - bldg:sup-air-flow-sensor_319fd03f, - bldg:sup-air-pressure-sensor_ced19507, - bldg:sup-air-temp-sensor_168a21b7 ; - ns1:hasConnectionPoint bldg:VAV-2-in, - bldg:air-out_3c792c08 ; - ns1:hasProperty bldg:sup-air-flow_588060d9, - bldg:sup-air-pressure_4a21a4b7, - bldg:sup-air-temp_4df4e987 . - -bldg:c0_751e2c50 a ns1:Duct ; - ns1:cnx bldg:dmp-out_3f093ac4, - bldg:rhc-air-in_bc874d3f ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c0_a0ab838e a ns1:Duct ; - ns1:cnx bldg:dmp-out_f77831bb, - bldg:rhc-air-in_9aba3a71 ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-exh-flow-sensor_7ff9e6de a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space-out_701f6b63 ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_e8147069 ; - ns1:observes bldg:domain-space-exhaust-air-flow_9a388f83 . - -bldg:domain-space-exh-flow-sensor_993a5105 a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space-out_2a870beb ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_ed69877b ; - ns1:observes bldg:domain-space-exhaust-air-flow_cdada376 . - -bldg:domain-space-humidity-sensor_0e3f264f a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space_4037724c ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_ed69877b ; - ns1:observes bldg:domain-space-relative-humidity_1899d8c6 . - -bldg:domain-space-humidity-sensor_90695f72 a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space_40dae464 ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_e8147069 ; - ns1:observes bldg:domain-space-relative-humidity_4f98e899 . - -bldg:domain-space-sup-flow-sensor_2653c50e a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space-in_ee890be0 ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_e8147069 ; - ns1:observes bldg:domain-space-supply-air-flow_8f08e951 . - -bldg:domain-space-sup-flow-sensor_f12b839c a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space-in_8a40c5b6 ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_ed69877b ; - ns1:observes bldg:domain-space-supply-air-flow_98160808 . - -bldg:domain-space-temp-sensor_873a67a7 a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space_40dae464 ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_e8147069 ; - ns1:observes bldg:domain-space-temp_912679db . - -bldg:domain-space-temp-sensor_dda11efa a ns1:Sensor ; - ns1:hasObservationLocation bldg:domain-space_4037724c ; - ns1:hasPhysicalLocation bldg:domain-space-physical-space_ed69877b ; - ns1:observes bldg:domain-space-temp_f7f96441 . - -bldg:exh-flow-sensor_2685d14d a ns1:Sensor ; - ns1:hasObservationLocation bldg:out_601c5e77 ; - ns1:hasPhysicalLocation bldg:physical-space_ab1961f8 ; - ns1:observes bldg:exhaust-air-flow_05e725a4 . - -bldg:exh-flow-sensor_55cf57d9 a ns1:Sensor ; - ns1:hasObservationLocation bldg:out_c7190ab6 ; - ns1:hasPhysicalLocation bldg:physical-space_715b2c9d ; - ns1:observes bldg:exhaust-air-flow_df9d99f9 . - -bldg:fcu1 a ns1:FanCoilUnit ; - ns1:contains bldg:cooling-coil_6aa398db, - bldg:fan_4011a254, - bldg:heating-coil_179e37f3 ; - ns1:hasConnectionPoint bldg:in_cbc63590, - bldg:out_1e79e650 ; - ns1:hasProperty bldg:DA-temp_8f371d00, - bldg:cond-overflow_cd76731d, - bldg:occ-override_b41c48d8, - bldg:zone-humidity_93505967, - bldg:zone-temp_5a8db23a ; - ns1:hasRole ns1:Role-Cooling, - ns1:Role-Heating . - -bldg:humidity-sensor_0172073f a ns1:Sensor ; - ns1:hasObservationLocation bldg:zone1space1 ; - ns1:hasPhysicalLocation bldg:physical-space_ab1961f8 ; - ns1:observes bldg:relative-humidity_e209fa0f . - -bldg:humidity-sensor_83f0ef89 a ns1:Sensor ; - ns1:hasObservationLocation bldg:zone2space1 ; - ns1:hasPhysicalLocation bldg:physical-space_715b2c9d ; - ns1:observes bldg:relative-humidity_748d3e6d . - -bldg:name_6e3734da a ns1:Duct ; - ns1:cnx bldg:VAV-2-out, - bldg:fcu1-in ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:name_7c6c6a02 a ns1:Duct ; - ns1:cnx bldg:MAU_Supply, - bldg:VAV-2-in ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:name_a5d295c5 a ns1:Duct ; - ns1:cnx bldg:MAU_Supply, - bldg:VAV-1-in ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:name_ab6067d1 a ns1:Duct ; - ns1:cnx bldg:VAV-1-out, - bldg:zone1-in ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:name_ed067f5d a ns1:Duct ; - ns1:cnx bldg:fcu1-out, - bldg:zone2-in ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:sup-flow-sensor_03144cd9 a ns1:Sensor ; - ns1:hasObservationLocation bldg:in_fc06aec0 ; - ns1:hasPhysicalLocation bldg:physical-space_715b2c9d ; - ns1:observes bldg:supply-air-flow_daf7af70 . - -bldg:sup-flow-sensor_76ed675d a ns1:Sensor ; - ns1:hasObservationLocation bldg:in_f5d6d0fb ; - ns1:hasPhysicalLocation bldg:physical-space_ab1961f8 ; - ns1:observes bldg:supply-air-flow_360a077f . - -bldg:temp-sensor_22a20aad a ns1:Sensor ; - ns1:hasObservationLocation bldg:zone1space1 ; - ns1:hasPhysicalLocation bldg:physical-space_ab1961f8 ; - ns1:observes bldg:temp_ae43d38d . - -bldg:temp-sensor_77379d3b a ns1:Sensor ; - ns1:hasObservationLocation bldg:zone2space1 ; - ns1:hasPhysicalLocation bldg:physical-space_715b2c9d ; - ns1:observes bldg:temp_b606c0d1 . - -bldg:zone1 a ns1:Zone ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasDomainSpace bldg:domain-space_40dae464 . - -bldg:zone2 a ns1:Zone ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasDomainSpace bldg:domain-space_4037724c . - -ns1:HeatRecoveryCoil rdfs:subClassOf ns1:Coil . - -bldg:DA-temp_8f371d00 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-air-in-mapsto_4b167001 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:MAU-HRC-air-out-mapsto_cf2decbd a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:MAU-HRC-entering-air-temp_c810dab2 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-leaving-air-temp_8ea5a4b9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-return-water-temp_22cec820 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-supply-water-temp_a363debf a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-water-in-mapsto_ca13ef3a a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:MAU-HRC-water-in_3b0b9578 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:MAU-HRC-water-in-mapsto_ca13ef3a . - -bldg:MAU-HRC-water-out-mapsto_73c717ca a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:MAU-HRC-water-out_729dafd7 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:MAU-HRC-water-out-mapsto_73c717ca . - -bldg:MAU-HRC_ecff66d9 a ns1:HeatRecoveryCoil ; - ns1:hasConnectionPoint bldg:MAU-HRC-air-in_df2754c9, - bldg:MAU-HRC-air-out_2a63807f, - bldg:MAU-HRC-water-in_3b0b9578, - bldg:MAU-HRC-water-out_729dafd7 ; - ns1:hasProperty bldg:MAU-HRC-entering-air-temp_c810dab2, - bldg:MAU-HRC-leaving-air-temp_8ea5a4b9, - bldg:MAU-HRC-return-water-temp_22cec820, - bldg:MAU-HRC-supply-water-temp_a363debf . - -bldg:air-in-mapsto_1cbb729c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:air-in-mapsto_6476cd5f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:air-out-mapsto_42c66088 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:air-out-mapsto_5b5afa7c a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:air-supply-mapsto_6be44d27 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:bypass-valve-command_5093e14e a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:bypass-valve-command_56eec6ea a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:bypass-valve-feedback_56776a4c a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:bypass-valve-feedback_dd9b7451 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:bypass-valve-in-mapsto_cdbdebe3 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:bypass-valve-in-mapsto_ebae4562 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:bypass-valve-in_60d771cd a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:bypass-valve-in-mapsto_cdbdebe3 . - -bldg:bypass-valve-in_6a73f86a a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:bypass-valve-in-mapsto_ebae4562 . - -bldg:bypass-valve-out-mapsto_c166763d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:bypass-valve-out-mapsto_e00ea5fd a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:bypass-valve-out_d78aade2 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:bypass-valve-out-mapsto_e00ea5fd . - -bldg:bypass-valve-out_f5677375 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:bypass-valve-out-mapsto_c166763d . - -bldg:bypass-valve_c5588798 a ns1:Valve ; - ns1:hasConnectionPoint bldg:bypass-valve-in_6a73f86a, - bldg:bypass-valve-out_d78aade2 ; - ns1:hasProperty bldg:bypass-valve-command_5093e14e, - bldg:bypass-valve-feedback_56776a4c . - -bldg:bypass-valve_f8f59d89 a ns1:Valve ; - ns1:hasConnectionPoint bldg:bypass-valve-in_60d771cd, - bldg:bypass-valve-out_f5677375 ; - ns1:hasProperty bldg:bypass-valve-command_56eec6ea, - bldg:bypass-valve-feedback_dd9b7451 . - -bldg:chw-hx-A-chw-diff-press-sensor_d63b0339 a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:chw-hx-A-in_8254059a ; - ns1:hasObservationLocationLow bldg:chw-hx-A-out_cf25d19d ; - ns1:observes bldg:chw-hx-A-chw-diff-press_87ea01e1 . - -bldg:chw-hx-A-in-mapsto_1db58933 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:chw-hx-A-out-mapsto_f008c2c7 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:chw-hx-B-chw-diff-press-sensor_c6db6742 a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:chw-hx-B-in_9c45dfb8 ; - ns1:hasObservationLocationLow bldg:chw-hx-B-out_47e88dde ; - ns1:observes bldg:chw-hx-B-chw-diff-press_3014a6e8 . - -bldg:chw-hx-B-in-mapsto_f77a4314 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:chw-hx-B-out-mapsto_62e61b9e a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:chw-hx-chw-flow-sensor_31cbd4bd a ns1:Sensor ; - ns1:hasObservationLocation bldg:chw-hx-B-out_47e88dde ; - ns1:observes bldg:chw-hx-chw-flow_430a9bbb . - -bldg:chw-hx-chw-return-temperature_d698232c a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:chw-hx-chw-supply-temperature_bfaa3b48 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:chw-hx_8dc037ec a ns1:HeatExchanger ; - ns1:contains bldg:chw-hx-A-chw-diff-press-sensor_d63b0339, - bldg:chw-hx-B-chw-diff-press-sensor_c6db6742, - bldg:chw-hx-chw-flow-sensor_31cbd4bd ; - ns1:hasConnectionPoint bldg:chw-hx-A-in_8254059a, - bldg:chw-hx-A-out_cf25d19d, - bldg:chw-hx-B-in_9c45dfb8, - bldg:chw-hx-B-out_47e88dde ; - ns1:hasProperty bldg:chw-hx-A-chw-diff-press_87ea01e1, - bldg:chw-hx-B-chw-diff-press_3014a6e8, - bldg:chw-hx-chw-flow_430a9bbb, - bldg:chw-hx-chw-return-temperature_d698232c, - bldg:chw-hx-chw-supply-temperature_bfaa3b48 . - -bldg:cond-overflow_cd76731d a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:cooling-coil-air-in-mapsto_78a843d1 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:cooling-coil-air-in-mapsto_e3ab0e47 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:cooling-coil-air-in_6400b174 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:cooling-coil-air-in-mapsto_78a843d1 . - -bldg:cooling-coil-air-out-mapsto_061c0b55 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:cooling-coil-air-out-mapsto_a25c78d2 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:cooling-coil-air-out_52b6bbe8 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:cooling-coil-air-out-mapsto_061c0b55 . - -bldg:cooling-coil-entering-air-temp_490681f3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-entering-air-temp_e342f4b3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-leaving-air-temp_1f0258d8 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-leaving-air-temp_a60aa5a4 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-leaving-air-wetbulb-temp_c01450f8 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-leaving-air-wetbulb-temp_c22e7461 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-pump-in-mapsto_1869bdd8 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-pump-in-mapsto_1b4112ea a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-pump-in_47c4801b a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-pump-in-mapsto_1b4112ea . - -bldg:cooling-coil-pump-in_fdb0ee7f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-pump-in-mapsto_1869bdd8 . - -bldg:cooling-coil-pump-onoff-cmd_a0b34bc6 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-pump-onoff-cmd_d6297425 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-pump-onoff-sts_8740df77 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-pump-onoff-sts_c89ac279 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-pump-out-mapsto_21c99d54 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-pump-out-mapsto_9ac087db a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-pump-out_2f81f726 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-pump-out-mapsto_21c99d54 . - -bldg:cooling-coil-pump-out_a2747cfc a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-pump-out-mapsto_9ac087db . - -bldg:cooling-coil-pump-vfd-cur_6c9d153b a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:cooling-coil-pump-vfd-cur_ca8973d2 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:cooling-coil-pump-vfd-energy_b6becad0 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:cooling-coil-pump-vfd-energy_fc86fb39 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:cooling-coil-pump-vfd-fb_0b7a3412 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:cooling-coil-pump-vfd-fb_c3d4eda0 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:cooling-coil-pump-vfd-flt_26e8e372 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:cooling-coil-pump-vfd-flt_ed47bf81 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:cooling-coil-pump-vfd-frq_2e62d2f1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:cooling-coil-pump-vfd-frq_668a0fb5 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:cooling-coil-pump-vfd-pwr_12dcfd93 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:cooling-coil-pump-vfd-pwr_9625c12a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:cooling-coil-pump-vfd-spd_19d18ed5 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:cooling-coil-pump-vfd-spd_3e14f773 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:cooling-coil-pump-vfd-volt_85085fee a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:cooling-coil-pump-vfd-volt_b342539d a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:cooling-coil-pump_73325fd6 a ns1:Pump ; - ns1:hasConnectionPoint bldg:cooling-coil-pump-in_47c4801b, - bldg:cooling-coil-pump-out_a2747cfc ; - ns1:hasProperty bldg:cooling-coil-pump-onoff-cmd_a0b34bc6, - bldg:cooling-coil-pump-onoff-sts_c89ac279, - bldg:cooling-coil-pump-vfd-cur_ca8973d2, - bldg:cooling-coil-pump-vfd-energy_fc86fb39, - bldg:cooling-coil-pump-vfd-fb_c3d4eda0, - bldg:cooling-coil-pump-vfd-flt_26e8e372, - bldg:cooling-coil-pump-vfd-frq_668a0fb5, - bldg:cooling-coil-pump-vfd-pwr_12dcfd93, - bldg:cooling-coil-pump-vfd-spd_3e14f773, - bldg:cooling-coil-pump-vfd-volt_85085fee . - -bldg:cooling-coil-pump_d12aad35 a ns1:Pump ; - ns1:hasConnectionPoint bldg:cooling-coil-pump-in_fdb0ee7f, - bldg:cooling-coil-pump-out_2f81f726 ; - ns1:hasProperty bldg:cooling-coil-pump-onoff-cmd_d6297425, - bldg:cooling-coil-pump-onoff-sts_8740df77, - bldg:cooling-coil-pump-vfd-cur_6c9d153b, - bldg:cooling-coil-pump-vfd-energy_b6becad0, - bldg:cooling-coil-pump-vfd-fb_0b7a3412, - bldg:cooling-coil-pump-vfd-flt_ed47bf81, - bldg:cooling-coil-pump-vfd-frq_2e62d2f1, - bldg:cooling-coil-pump-vfd-pwr_9625c12a, - bldg:cooling-coil-pump-vfd-spd_19d18ed5, - bldg:cooling-coil-pump-vfd-volt_b342539d . - -bldg:cooling-coil-return-water-temp_45756c5c a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-return-water-temp_8e0a198f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-supply-water-temp_4b9348a9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-supply-water-temp_893d0966 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:cooling-coil-valve-command_41db33f6 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-valve-command_ffb29df0 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-valve-feedback_2cc66071 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-valve-feedback_885761b9 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:cooling-coil-valve-in-mapsto_2d328e06 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-valve-in-mapsto_30eea286 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-valve-in_04171046 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-valve-in-mapsto_2d328e06 . - -bldg:cooling-coil-valve-in_55bece85 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-valve-in-mapsto_30eea286 . - -bldg:cooling-coil-valve-out-mapsto_620eed33 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-valve-out-mapsto_baa71c46 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-valve-out_7c7679c9 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-valve-out-mapsto_620eed33 . - -bldg:cooling-coil-valve-out_8422ed15 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-valve-out-mapsto_baa71c46 . - -bldg:cooling-coil-valve_70ce5c37 a ns1:Valve ; - ns1:hasConnectionPoint bldg:cooling-coil-valve-in_04171046, - bldg:cooling-coil-valve-out_7c7679c9 ; - ns1:hasProperty bldg:cooling-coil-valve-command_41db33f6, - bldg:cooling-coil-valve-feedback_2cc66071 . - -bldg:cooling-coil-valve_b8520445 a ns1:Valve ; - ns1:hasConnectionPoint bldg:cooling-coil-valve-in_55bece85, - bldg:cooling-coil-valve-out_8422ed15 ; - ns1:hasProperty bldg:cooling-coil-valve-command_ffb29df0, - bldg:cooling-coil-valve-feedback_885761b9 . - -bldg:cooling-coil-water-in-mapsto_346c9ed1 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-water-in-mapsto_b29f15a0 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-water-in_86b7fa4e a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-water-in-mapsto_b29f15a0 . - -bldg:cooling-coil-water-in_ae96fb12 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-water-in-mapsto_346c9ed1 . - -bldg:cooling-coil-water-out-mapsto_03fda007 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-water-out-mapsto_08430331 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:cooling-coil-water-out_4cd8dd5c a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-water-out-mapsto_03fda007 . - -bldg:cooling-coil-water-out_6747e5bf a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:cooling-coil-water-out-mapsto_08430331 . - -bldg:cooling-coil_02f4d6bd a ns1:CoolingCoil ; - ns1:cnx bldg:cooling-coil-air-in_36eb18ba, - bldg:cooling-coil-air-out_c59ad352, - bldg:cooling-coil-water-in_86b7fa4e, - bldg:cooling-coil-water-out_6747e5bf ; - ns1:contains bldg:cooling-coil-pump_73325fd6, - bldg:cooling-coil-valve_70ce5c37 ; - ns1:hasProperty bldg:cooling-coil-entering-air-temp_e342f4b3, - bldg:cooling-coil-leaving-air-temp_1f0258d8, - bldg:cooling-coil-leaving-air-wetbulb-temp_c01450f8, - bldg:cooling-coil-return-water-temp_8e0a198f, - bldg:cooling-coil-supply-water-temp_893d0966 . - -bldg:cooling-coil_6aa398db a ns1:CoolingCoil ; - ns1:cnx bldg:cooling-coil-air-in_6400b174, - bldg:cooling-coil-air-out_52b6bbe8, - bldg:cooling-coil-water-in_ae96fb12, - bldg:cooling-coil-water-out_4cd8dd5c ; - ns1:contains bldg:cooling-coil-pump_d12aad35, - bldg:cooling-coil-valve_b8520445 ; - ns1:hasProperty bldg:cooling-coil-entering-air-temp_490681f3, - bldg:cooling-coil-leaving-air-temp_a60aa5a4, - bldg:cooling-coil-leaving-air-wetbulb-temp_c22e7461, - bldg:cooling-coil-return-water-temp_45756c5c, - bldg:cooling-coil-supply-water-temp_4b9348a9 . - -bldg:dmp-command_3b58206e a ns1:QuantifiableActuatableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dmp-command_ba591b2b a ns1:QuantifiableActuatableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dmp-feedback_6ed2c812 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dmp-feedback_a419c177 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dmp-in-mapsto_43217450 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:dmp-in-mapsto_f4253637 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:dmp-in_6d4d3e37 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:dmp-in-mapsto_f4253637 . - -bldg:dmp-in_70ddaca3 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:dmp-in-mapsto_43217450 . - -bldg:dmp-out-mapsto_2bd696f1 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:dmp-out-mapsto_79d6e6e8 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:dmp_81590e6a a ns1:Damper ; - ns1:hasConnectionPoint bldg:dmp-in_6d4d3e37, - bldg:dmp-out_3f093ac4 ; - ns1:hasProperty bldg:dmp-command_ba591b2b, - bldg:dmp-feedback_6ed2c812 . - -bldg:dmp_9d44f91a a ns1:Damper ; - ns1:hasConnectionPoint bldg:dmp-in_70ddaca3, - bldg:dmp-out_f77831bb ; - ns1:hasProperty bldg:dmp-command_3b58206e, - bldg:dmp-feedback_a419c177 . - -bldg:domain-space-in-mapsto_06de82c9 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in-mapsto_ca06e2ff a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in2-mapsto_29f1b8c1 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in2-mapsto_d1287531 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in2_b99fe9ba a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in2-mapsto_29f1b8c1 . - -bldg:domain-space-in2_dc299af6 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in2-mapsto_d1287531 . - -bldg:domain-space-in3-mapsto_b7e4e30f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in3-mapsto_cf6a76e7 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in3_7d353da8 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in3-mapsto_b7e4e30f . - -bldg:domain-space-in3_8a81b4dc a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in3-mapsto_cf6a76e7 . - -bldg:domain-space-in4-mapsto_253e4c6f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in4-mapsto_a1abdb66 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-in4_e4e22371 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in4-mapsto_253e4c6f . - -bldg:domain-space-in4_fafcb4be a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in4-mapsto_a1abdb66 . - -bldg:domain-space-out-mapsto_ce55a9ce a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-out-mapsto_ef71cc80 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-out2-mapsto_02e07959 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-out2-mapsto_853eb43f a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:domain-space-out2_6689ab51 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-out2-mapsto_02e07959 . - -bldg:domain-space-out2_ba02ac1a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-out2-mapsto_853eb43f . - -bldg:dwh-dw-hwp-in-mapsto_be28a25f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hwp-in_84469491 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hwp-in-mapsto_be28a25f . - -bldg:dwh-dw-hwp-onoff-cmd_136ea672 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:dwh-dw-hwp-onoff-sts_433901a7 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:dwh-dw-hwp-out-mapsto_d2a21875 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hwp-out_644a0ee4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hwp-out-mapsto_d2a21875 . - -bldg:dwh-dw-hwp-vfd-cur_b14ec6f1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:dwh-dw-hwp-vfd-energy_6ee7d217 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:dwh-dw-hwp-vfd-fb_983257fc a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dwh-dw-hwp-vfd-flt_b8dd75f1 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:dwh-dw-hwp-vfd-frq_ccb5fd22 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:dwh-dw-hwp-vfd-pwr_b4860f42 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:dwh-dw-hwp-vfd-spd_871ca085 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:dwh-dw-hwp-vfd-volt_e0a3368c a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:dwh-dw-hwp_ac31bcf8 a ns1:Pump ; - ns1:hasConnectionPoint bldg:dwh-dw-hwp-in_84469491, - bldg:dwh-dw-hwp-out_644a0ee4 ; - ns1:hasProperty bldg:dwh-dw-hwp-onoff-cmd_136ea672, - bldg:dwh-dw-hwp-onoff-sts_433901a7, - bldg:dwh-dw-hwp-vfd-cur_b14ec6f1, - bldg:dwh-dw-hwp-vfd-energy_6ee7d217, - bldg:dwh-dw-hwp-vfd-fb_983257fc, - bldg:dwh-dw-hwp-vfd-flt_b8dd75f1, - bldg:dwh-dw-hwp-vfd-frq_ccb5fd22, - bldg:dwh-dw-hwp-vfd-pwr_b4860f42, - bldg:dwh-dw-hwp-vfd-spd_871ca085, - bldg:dwh-dw-hwp-vfd-volt_e0a3368c . - -bldg:dwh-dw-hx-A-chw-diff-press-sensor_87dcf5a3 a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:dwh-dw-hx-A-in_7f8837e0 ; - ns1:hasObservationLocationLow bldg:dwh-dw-hx-A-out_2d0a2cd6 ; - ns1:observes bldg:dwh-dw-hx-A-chw-diff-press_dcea9c74 . - -bldg:dwh-dw-hx-A-in-mapsto_06c48e59 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hx-A-out-mapsto_85dd71d2 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hx-B-chw-diff-press-sensor_7c11d065 a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:dwh-dw-hx-B-in_d9e44291 ; - ns1:hasObservationLocationLow bldg:dwh-dw-hx-B-out_ffb57fe8 ; - ns1:observes bldg:dwh-dw-hx-B-chw-diff-press_a2272f21 . - -bldg:dwh-dw-hx-B-in-mapsto_5060c412 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hx-B-out-mapsto_3928dfe5 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-dw-hx-chw-flow-sensor_5f2cf70f a ns1:Sensor ; - ns1:hasObservationLocation bldg:dwh-dw-hx-B-out_ffb57fe8 ; - ns1:observes bldg:dwh-dw-hx-chw-flow_3675a949 . - -bldg:dwh-dw-hx-chw-return-temperature_8eac2c0a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:dwh-dw-hx-chw-supply-temperature_8e8c74a1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:dwh-dw-hx_d5691ecf a ns1:HeatExchanger ; - ns1:contains bldg:dwh-dw-hx-A-chw-diff-press-sensor_87dcf5a3, - bldg:dwh-dw-hx-B-chw-diff-press-sensor_7c11d065, - bldg:dwh-dw-hx-chw-flow-sensor_5f2cf70f ; - ns1:hasConnectionPoint bldg:dwh-dw-hx-A-in_7f8837e0, - bldg:dwh-dw-hx-A-out_2d0a2cd6, - bldg:dwh-dw-hx-B-in_d9e44291, - bldg:dwh-dw-hx-B-out_ffb57fe8 ; - ns1:hasProperty bldg:dwh-dw-hx-A-chw-diff-press_dcea9c74, - bldg:dwh-dw-hx-B-chw-diff-press_a2272f21, - bldg:dwh-dw-hx-chw-flow_3675a949, - bldg:dwh-dw-hx-chw-return-temperature_8eac2c0a, - bldg:dwh-dw-hx-chw-supply-temperature_8e8c74a1 . - -bldg:dwh-in-mapsto_147629dd a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-in_35efe70b a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-in-mapsto_147629dd . - -bldg:dwh-out-mapsto_75ab6bb2 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:dwh-out_18771752 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-out-mapsto_75ab6bb2 . - -bldg:dwh_c70238f9 a ns1:DomesticWaterHeater, - ns1:Equipment ; - rdfs:label "domestic water heater" ; - ns1:contains bldg:dwh-dw-hwp_ac31bcf8, - bldg:dwh-dw-hx_d5691ecf ; - ns1:hasConnectionPoint bldg:dwh-in_35efe70b, - bldg:dwh-out_18771752 . - -bldg:evaporative-cooler-evap-cool-fill-valve-command_6b152af8 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:evaporative-cooler-evap-cool-fill-valve-feedback_c1daa694 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:evaporative-cooler-evap-cool-fill-valve-in-mapsto_44512a55 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-evap-cool-fill-valve-in_25fd33fe a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-evap-cool-fill-valve-in-mapsto_44512a55 . - -bldg:evaporative-cooler-evap-cool-fill-valve-out-mapsto_89e02830 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-evap-cool-fill-valve-out_8b60629a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-evap-cool-fill-valve-out-mapsto_89e02830 . - -bldg:evaporative-cooler-evap-cool-fill-valve_d32b76f7 a ns1:Valve ; - ns1:hasConnectionPoint bldg:evaporative-cooler-evap-cool-fill-valve-in_25fd33fe, - bldg:evaporative-cooler-evap-cool-fill-valve-out_8b60629a ; - ns1:hasProperty bldg:evaporative-cooler-evap-cool-fill-valve-command_6b152af8, - bldg:evaporative-cooler-evap-cool-fill-valve-feedback_c1daa694 . - -bldg:evaporative-cooler-evap-cool-pump-2stage-in-mapsto_b1d5c595 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-evap-cool-pump-2stage-in_35fe4526 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-evap-cool-pump-2stage-in-mapsto_b1d5c595 . - -bldg:evaporative-cooler-evap-cool-pump-2stage-onoff-cmd_2370beab a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:evaporative-cooler-evap-cool-pump-2stage-onoff-sts_446ca89d a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:evaporative-cooler-evap-cool-pump-2stage-out-mapsto_c2b5a9d4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-evap-cool-pump-2stage-out_9742a27b a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-evap-cool-pump-2stage-out-mapsto_c2b5a9d4 . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-cur_c1502425 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-energy_59e4f623 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-fb_978e8e12 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-flt_8448519d a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-frq_c374cbd3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-pwr_a7a98b6f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-spd_bf42f8fc a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-volt_dca84327 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:evaporative-cooler-evap-cool-pump-2stage_b1365def a ns1:Pump ; - ns1:hasConnectionPoint bldg:evaporative-cooler-evap-cool-pump-2stage-in_35fe4526, - bldg:evaporative-cooler-evap-cool-pump-2stage-out_9742a27b ; - ns1:hasProperty bldg:evaporative-cooler-evap-cool-pump-2stage-onoff-cmd_2370beab, - bldg:evaporative-cooler-evap-cool-pump-2stage-onoff-sts_446ca89d, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-cur_c1502425, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-energy_59e4f623, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-fb_978e8e12, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-flt_8448519d, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-frq_c374cbd3, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-pwr_a7a98b6f, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-spd_bf42f8fc, - bldg:evaporative-cooler-evap-cool-pump-2stage-vfd-volt_dca84327 . - -bldg:evaporative-cooler-evap-cool-sump-tank_a9b2b387 a ns1:Equipment ; - rdfs:label "Tank" . - -bldg:evaporative-cooler-in-mapsto_c1b7e4ef a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:evaporative-cooler-out_cb117bf6 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:hasProperty bldg:evaporative-cooler-leaving-air-humidity_27ac145a, - bldg:evaporative-cooler-leaving-air-temp_69d6c4a1 ; - ns1:mapsTo bldg:MAU_Supply . - -bldg:evaporative-cooler-water-in-mapsto_136de902 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-water-in_e53b7819 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-water-in-mapsto_136de902 . - -bldg:evaporative-cooler-water-out-mapsto_abc1b1b3 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:evaporative-cooler-water-out_ed832dcd a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:evaporative-cooler-water-out-mapsto_abc1b1b3 . - -bldg:evaporative-cooler_7dd4e2cf a ns1:HeatExchanger ; - ns1:contains bldg:evaporative-cooler-evap-cool-fill-valve_d32b76f7, - bldg:evaporative-cooler-evap-cool-pump-2stage_b1365def, - bldg:evaporative-cooler-evap-cool-sump-tank_a9b2b387 ; - ns1:hasConnectionPoint bldg:evaporative-cooler-in_7eb2a29f, - bldg:evaporative-cooler-out_cb117bf6, - bldg:evaporative-cooler-water-in_e53b7819, - bldg:evaporative-cooler-water-out_ed832dcd ; - ns1:hasProperty bldg:evaporative-cooler-entering-air-temp_6cc2eec4, - bldg:evaporative-cooler-leaving-air-humidity_27ac145a, - bldg:evaporative-cooler-leaving-air-temp_69d6c4a1 ; - ns1:hasRole ns1:Role-Evaporator . - -bldg:fan-in-mapsto_ddb6cf9c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:fan-in_8c75ec3a a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:fan-in-mapsto_ddb6cf9c . - -bldg:fan-motor-status_8855aa15 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:fan-oa-flow-switch_84d431c3 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-FlowStatus . - -bldg:fan-out-mapsto_4e6a6c96 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:fan-out_322e52eb a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:fan-out-mapsto_4e6a6c96 . - -bldg:fan-start-cmd_99bfd090 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:fan-vfd-cur_0ac87c52 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:fan-vfd-energy_3b7b6160 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:fan-vfd-fb_7cc0bd12 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:fan-vfd-flt_c5d4efd1 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:fan-vfd-frq_ecb10fb4 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:fan-vfd-pwr_6e46ffd7 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:fan-vfd-spd_2546a2c0 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:fan-vfd-volt_cc8898ec a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:fan_4011a254 a ns1:Fan ; - ns1:hasConnectionPoint bldg:fan-in_8c75ec3a, - bldg:fan-out_322e52eb ; - ns1:hasProperty bldg:fan-motor-status_8855aa15, - bldg:fan-oa-flow-switch_84d431c3, - bldg:fan-start-cmd_99bfd090, - bldg:fan-vfd-cur_0ac87c52, - bldg:fan-vfd-energy_3b7b6160, - bldg:fan-vfd-fb_7cc0bd12, - bldg:fan-vfd-flt_c5d4efd1, - bldg:fan-vfd-frq_ecb10fb4, - bldg:fan-vfd-pwr_6e46ffd7, - bldg:fan-vfd-spd_2546a2c0, - bldg:fan-vfd-volt_cc8898ec . - -bldg:final-filter-differential-pressure_51c34ce9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:final-filter-in-mapsto_0833d1e3 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:final-filter-out-mapsto_15db3e1e a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:final-filter_4f25888d a ns1:Filter ; - ns1:hasConnectionPoint bldg:final-filter-in_e5149983, - bldg:final-filter-out_58e9c3e0 ; - ns1:hasProperty bldg:final-filter-differential-pressure_51c34ce9 . - -bldg:heating-coil-air-in-mapsto_425451e5 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:heating-coil-air-in-mapsto_8790223f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:heating-coil-air-in_1db9ba2e a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:heating-coil-air-in-mapsto_425451e5 . - -bldg:heating-coil-air-out-mapsto_3b34a6d0 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:heating-coil-air-out-mapsto_74ff7c6a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:heating-coil-air-out_770fe3c9 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:heating-coil-air-out-mapsto_3b34a6d0 . - -bldg:heating-coil-return-water-temp-sensor_3d44dc6b a ns1:Sensor ; - ns1:hasObservationLocation bldg:heating-coil-water-out_4703bc67 ; - ns1:observes bldg:heating-coil-return-water-temp_bd9dd760 . - -bldg:heating-coil-return-water-temp-sensor_9885843c a ns1:Sensor ; - ns1:hasObservationLocation bldg:heating-coil-water-out_dd506a0d ; - ns1:observes bldg:heating-coil-return-water-temp_f4251d6e . - -bldg:heating-coil-supply-water-temp-sensor_1bc1c978 a ns1:Sensor ; - ns1:hasObservationLocation bldg:heating-coil-water-in_4072e7ac ; - ns1:observes bldg:heating-coil-supply-water-temp_02653f0f . - -bldg:heating-coil-supply-water-temp-sensor_3acbf1bb a ns1:Sensor ; - ns1:hasObservationLocation bldg:heating-coil-water-in_887e740a ; - ns1:observes bldg:heating-coil-supply-water-temp_aa932e44 . - -bldg:heating-coil-valve-command_69f2a84c a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:heating-coil-valve-command_d980fe0d a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:heating-coil-valve-feedback_3c5b3517 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:heating-coil-valve-feedback_81aca265 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:heating-coil-valve-in-mapsto_50200301 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-valve-in-mapsto_7c93b160 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-valve-in_1a716043 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-valve-in-mapsto_7c93b160 . - -bldg:heating-coil-valve-in_3b4c6784 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-valve-in-mapsto_50200301 . - -bldg:heating-coil-valve-out-mapsto_c7893c4c a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-valve-out-mapsto_ed27ba35 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-valve-out_40c5fc9f a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-valve-out-mapsto_c7893c4c . - -bldg:heating-coil-valve-out_f2df15c8 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-valve-out-mapsto_ed27ba35 . - -bldg:heating-coil-valve_67c0d52a a ns1:Valve ; - ns1:hasConnectionPoint bldg:heating-coil-valve-in_3b4c6784, - bldg:heating-coil-valve-out_f2df15c8 ; - ns1:hasProperty bldg:heating-coil-valve-command_d980fe0d, - bldg:heating-coil-valve-feedback_81aca265 . - -bldg:heating-coil-valve_c4942ee6 a ns1:Valve ; - ns1:hasConnectionPoint bldg:heating-coil-valve-in_1a716043, - bldg:heating-coil-valve-out_40c5fc9f ; - ns1:hasProperty bldg:heating-coil-valve-command_69f2a84c, - bldg:heating-coil-valve-feedback_3c5b3517 . - -bldg:heating-coil-water-in-mapsto_2feb62b4 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-water-in-mapsto_809bd701 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-water-out-mapsto_99988bc6 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil-water-out-mapsto_d0708429 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:heating-coil_179e37f3 a ns1:HeatingCoil ; - ns1:contains bldg:heating-coil-return-water-temp-sensor_3d44dc6b, - bldg:heating-coil-supply-water-temp-sensor_3acbf1bb, - bldg:heating-coil-valve_c4942ee6 ; - ns1:hasConnectionPoint bldg:heating-coil-air-in_1db9ba2e, - bldg:heating-coil-air-out_770fe3c9, - bldg:heating-coil-water-in_887e740a, - bldg:heating-coil-water-out_4703bc67 ; - ns1:hasProperty bldg:heating-coil-return-water-temp_bd9dd760, - bldg:heating-coil-supply-water-temp_aa932e44 . - -bldg:heating-coil_5d39881e a ns1:HeatingCoil ; - ns1:contains bldg:heating-coil-return-water-temp-sensor_9885843c, - bldg:heating-coil-supply-water-temp-sensor_1bc1c978, - bldg:heating-coil-valve_67c0d52a ; - ns1:hasConnectionPoint bldg:heating-coil-air-in_52635905, - bldg:heating-coil-air-out_544d17d3, - bldg:heating-coil-water-in_4072e7ac, - bldg:heating-coil-water-out_dd506a0d ; - ns1:hasProperty bldg:heating-coil-return-water-temp_f4251d6e, - bldg:heating-coil-supply-water-temp_02653f0f . - -bldg:hw-hx-A-chw-diff-press-sensor_f3f9cefb a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:hw-hx-A-in_d1bc5cb5 ; - ns1:hasObservationLocationLow bldg:hw-hx-A-out_9f10db91 ; - ns1:observes bldg:hw-hx-A-chw-diff-press_b1f79ee5 . - -bldg:hw-hx-A-in-mapsto_b05996a4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:hw-hx-A-out-mapsto_fe5eaaf8 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:hw-hx-B-chw-diff-press-sensor_bae02ec5 a ns1:DifferentialSensor ; - ns1:hasObservationLocationHigh bldg:hw-hx-B-in_c0e02d7d ; - ns1:hasObservationLocationLow bldg:hw-hx-B-out_c7a01cdd ; - ns1:observes bldg:hw-hx-B-chw-diff-press_05521d33 . - -bldg:hw-hx-B-in-mapsto_13fab2be a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:hw-hx-B-out-mapsto_16c199b2 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:hw-hx-chw-flow-sensor_aa78fd2f a ns1:Sensor ; - ns1:hasObservationLocation bldg:hw-hx-B-out_c7a01cdd ; - ns1:observes bldg:hw-hx-chw-flow_50796280 . - -bldg:hw-hx-chw-return-temperature_022c8b48 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:hw-hx-chw-supply-temperature_310cb90f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:hw-hx_c2cc773a a ns1:HeatExchanger ; - ns1:contains bldg:hw-hx-A-chw-diff-press-sensor_f3f9cefb, - bldg:hw-hx-B-chw-diff-press-sensor_bae02ec5, - bldg:hw-hx-chw-flow-sensor_aa78fd2f ; - ns1:hasConnectionPoint bldg:hw-hx-A-in_d1bc5cb5, - bldg:hw-hx-A-out_9f10db91, - bldg:hw-hx-B-in_c0e02d7d, - bldg:hw-hx-B-out_c7a01cdd ; - ns1:hasProperty bldg:hw-hx-A-chw-diff-press_b1f79ee5, - bldg:hw-hx-B-chw-diff-press_05521d33, - bldg:hw-hx-chw-flow_50796280, - bldg:hw-hx-chw-return-temperature_022c8b48, - bldg:hw-hx-chw-supply-temperature_310cb90f . - -bldg:in-mapsto_21483f3c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in-mapsto_9b0bfed5 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in-mapsto_cdb67a5c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in2-mapsto_7c0378bf a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in2-mapsto_811bb413 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in2_05f50949 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in2-mapsto_811bb413 . - -bldg:in2_77ef1d95 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in2-mapsto_7c0378bf . - -bldg:in3-mapsto_33308681 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in3-mapsto_ee288c85 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in3_66889df9 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in3-mapsto_33308681 . - -bldg:in3_e9e16faa a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in3-mapsto_ee288c85 . - -bldg:in4-mapsto_b9a3129f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in4-mapsto_cb7f149d a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:in4_3c7955de a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in4-mapsto_b9a3129f . - -bldg:in4_dc6936f9 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in4-mapsto_cb7f149d . - -bldg:in_cbc63590 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in-mapsto_9b0bfed5 . - -bldg:lead-chw-booster-pump-in-mapsto_f138402c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-chw-booster-pump-in_e4f99d0a a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-chw-booster-pump-in-mapsto_f138402c . - -bldg:lead-chw-booster-pump-onoff-cmd_2085e78d a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-chw-booster-pump-onoff-sts_5d540156 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-chw-booster-pump-out-mapsto_f299f5e3 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-chw-booster-pump-out_17e23b88 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-chw-booster-pump-out-mapsto_f299f5e3 . - -bldg:lead-chw-booster-pump-vfd-cur_65bfc242 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:lead-chw-booster-pump-vfd-energy_3092b2b4 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:lead-chw-booster-pump-vfd-fb_3ef8ba54 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-chw-booster-pump-vfd-flt_87105a0a a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:lead-chw-booster-pump-vfd-frq_b23fa478 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:lead-chw-booster-pump-vfd-pwr_a5157d68 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:lead-chw-booster-pump-vfd-spd_fbfd70e3 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-chw-booster-pump-vfd-volt_e8cfc406 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:lead-chw-booster-pump_46e000ce a ns1:Pump ; - ns1:hasConnectionPoint bldg:lead-chw-booster-pump-in_e4f99d0a, - bldg:lead-chw-booster-pump-out_17e23b88 ; - ns1:hasProperty bldg:lead-chw-booster-pump-onoff-cmd_2085e78d, - bldg:lead-chw-booster-pump-onoff-sts_5d540156, - bldg:lead-chw-booster-pump-vfd-cur_65bfc242, - bldg:lead-chw-booster-pump-vfd-energy_3092b2b4, - bldg:lead-chw-booster-pump-vfd-fb_3ef8ba54, - bldg:lead-chw-booster-pump-vfd-flt_87105a0a, - bldg:lead-chw-booster-pump-vfd-frq_b23fa478, - bldg:lead-chw-booster-pump-vfd-pwr_a5157d68, - bldg:lead-chw-booster-pump-vfd-spd_fbfd70e3, - bldg:lead-chw-booster-pump-vfd-volt_e8cfc406 . - -bldg:lead-chw-pump-in-mapsto_37effef5 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-chw-pump-in_617e066e a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-chw-pump-in-mapsto_37effef5 . - -bldg:lead-chw-pump-onoff-cmd_c7ad9a18 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-chw-pump-onoff-sts_144cc4de a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-chw-pump-out-mapsto_0bc04740 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-chw-pump-out_83a6f7e4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-chw-pump-out-mapsto_0bc04740 . - -bldg:lead-chw-pump-vfd-cur_beb461d0 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:lead-chw-pump-vfd-energy_7c3fe875 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:lead-chw-pump-vfd-fb_168b8fc0 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-chw-pump-vfd-flt_1b042a03 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:lead-chw-pump-vfd-frq_1ea73e75 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:lead-chw-pump-vfd-pwr_ef52c282 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:lead-chw-pump-vfd-spd_096ee351 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-chw-pump-vfd-volt_920ed105 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:lead-chw-pump_76441788 a ns1:Pump ; - ns1:hasConnectionPoint bldg:lead-chw-pump-in_617e066e, - bldg:lead-chw-pump-out_83a6f7e4 ; - ns1:hasProperty bldg:lead-chw-pump-onoff-cmd_c7ad9a18, - bldg:lead-chw-pump-onoff-sts_144cc4de, - bldg:lead-chw-pump-vfd-cur_beb461d0, - bldg:lead-chw-pump-vfd-energy_7c3fe875, - bldg:lead-chw-pump-vfd-fb_168b8fc0, - bldg:lead-chw-pump-vfd-flt_1b042a03, - bldg:lead-chw-pump-vfd-frq_1ea73e75, - bldg:lead-chw-pump-vfd-pwr_ef52c282, - bldg:lead-chw-pump-vfd-spd_096ee351, - bldg:lead-chw-pump-vfd-volt_920ed105 . - -bldg:lead-hw-booster-pump-in-mapsto_cadabd8c a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-hw-booster-pump-in_aa1175ad a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-hw-booster-pump-in-mapsto_cadabd8c . - -bldg:lead-hw-booster-pump-onoff-cmd_4dbd2f5d a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-hw-booster-pump-onoff-sts_6d4a1ee6 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-hw-booster-pump-out-mapsto_5c6e5d63 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-hw-booster-pump-out_14f8a483 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-hw-booster-pump-out-mapsto_5c6e5d63 . - -bldg:lead-hw-booster-pump-vfd-cur_8abd9d7a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:lead-hw-booster-pump-vfd-energy_6e440526 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:lead-hw-booster-pump-vfd-fb_d8819847 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-hw-booster-pump-vfd-flt_39a30c43 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:lead-hw-booster-pump-vfd-frq_cd7d9eb8 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:lead-hw-booster-pump-vfd-pwr_d4b4bf35 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:lead-hw-booster-pump-vfd-spd_a33691e8 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-hw-booster-pump-vfd-volt_0cc5a608 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:lead-hw-booster-pump_00ab8f23 a ns1:Pump ; - ns1:hasConnectionPoint bldg:lead-hw-booster-pump-in_aa1175ad, - bldg:lead-hw-booster-pump-out_14f8a483 ; - ns1:hasProperty bldg:lead-hw-booster-pump-onoff-cmd_4dbd2f5d, - bldg:lead-hw-booster-pump-onoff-sts_6d4a1ee6, - bldg:lead-hw-booster-pump-vfd-cur_8abd9d7a, - bldg:lead-hw-booster-pump-vfd-energy_6e440526, - bldg:lead-hw-booster-pump-vfd-fb_d8819847, - bldg:lead-hw-booster-pump-vfd-flt_39a30c43, - bldg:lead-hw-booster-pump-vfd-frq_cd7d9eb8, - bldg:lead-hw-booster-pump-vfd-pwr_d4b4bf35, - bldg:lead-hw-booster-pump-vfd-spd_a33691e8, - bldg:lead-hw-booster-pump-vfd-volt_0cc5a608 . - -bldg:lead-hw-pump-in-mapsto_fa492752 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-hw-pump-in_bac48407 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-hw-pump-in-mapsto_fa492752 . - -bldg:lead-hw-pump-onoff-cmd_93a19415 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-hw-pump-onoff-sts_a9efe35c a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:lead-hw-pump-out-mapsto_f3e919fb a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:lead-hw-pump-out_49a3b465 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:lead-hw-pump-out-mapsto_f3e919fb . - -bldg:lead-hw-pump-vfd-cur_32161c09 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:lead-hw-pump-vfd-energy_35289f9b a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:lead-hw-pump-vfd-fb_99c1ac47 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-hw-pump-vfd-flt_86e7e3b2 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:lead-hw-pump-vfd-frq_3bdb9b0f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:lead-hw-pump-vfd-pwr_7341bf9a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:lead-hw-pump-vfd-spd_5701b524 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:lead-hw-pump-vfd-volt_c60e9de9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:lead-hw-pump_ab595573 a ns1:Pump ; - ns1:hasConnectionPoint bldg:lead-hw-pump-in_bac48407, - bldg:lead-hw-pump-out_49a3b465 ; - ns1:hasProperty bldg:lead-hw-pump-onoff-cmd_93a19415, - bldg:lead-hw-pump-onoff-sts_a9efe35c, - bldg:lead-hw-pump-vfd-cur_32161c09, - bldg:lead-hw-pump-vfd-energy_35289f9b, - bldg:lead-hw-pump-vfd-fb_99c1ac47, - bldg:lead-hw-pump-vfd-flt_86e7e3b2, - bldg:lead-hw-pump-vfd-frq_3bdb9b0f, - bldg:lead-hw-pump-vfd-pwr_7341bf9a, - bldg:lead-hw-pump-vfd-spd_5701b524, - bldg:lead-hw-pump-vfd-volt_c60e9de9 . - -bldg:oa_rh_99024e1e a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:oad-command_c8dec30e a ns1:QuantifiableActuatableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:oad-feedback_1696d142 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:DimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:oad-in_581e2fb6 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:outside-air_42ebfa0f . - -bldg:oad-out-mapsto_329ee53f a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:oad_cfebf3fe a ns1:Damper ; - ns1:hasConnectionPoint bldg:oad-in_581e2fb6, - bldg:oad-out_b126af63 ; - ns1:hasProperty bldg:oad-command_c8dec30e, - bldg:oad-feedback_1696d142 . - -bldg:occ-override_b41c48d8 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-Override . - -bldg:out-mapsto_00b3bab9 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:out-mapsto_61284b25 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:out-mapsto_88f667a6 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:out2-mapsto_0144a559 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:out2-mapsto_f8ea8124 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:out2_f57eb827 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:out2-mapsto_0144a559 . - -bldg:out2_f9cbc9bc a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:out2-mapsto_f8ea8124 . - -bldg:out_1e79e650 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:out-mapsto_88f667a6 . - -bldg:outside-air-mapsto_dbc27945 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:pre-filter-differential-pressure_4b6fe58b a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:pre-filter-in-mapsto_83c9178d a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:pre-filter-out-mapsto_2687662b a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:pre-filter_ed6ce7b7 a ns1:Filter ; - ns1:hasConnectionPoint bldg:pre-filter-in_c868eae9, - bldg:pre-filter-out_e7997fdf ; - ns1:hasProperty bldg:pre-filter-differential-pressure_4b6fe58b . - -bldg:rhc-air-in-mapsto_488c3d84 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:rhc-air-in-mapsto_f1d269d3 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:rhc-air-out-mapsto_595f20b6 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:rhc-air-out-mapsto_ad9a20cf a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:rhc-air-out_273df564 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:rhc-air-out-mapsto_ad9a20cf . - -bldg:rhc-air-out_cb4e001a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:rhc-air-out-mapsto_595f20b6 . - -bldg:rhc-return-water-temp-sensor_0553a738 a ns1:Sensor ; - ns1:hasObservationLocation bldg:rhc-water-out_fba3f312 ; - ns1:observes bldg:rhc-return-water-temp_44f290ee . - -bldg:rhc-return-water-temp-sensor_feef1a09 a ns1:Sensor ; - ns1:hasObservationLocation bldg:rhc-water-out_1e8cc137 ; - ns1:observes bldg:rhc-return-water-temp_ef2250ca . - -bldg:rhc-supply-water-temp-sensor_3a3dcf3b a ns1:Sensor ; - ns1:hasObservationLocation bldg:rhc-water-in_62d7cce4 ; - ns1:observes bldg:rhc-supply-water-temp_670eab2e . - -bldg:rhc-supply-water-temp-sensor_e9258449 a ns1:Sensor ; - ns1:hasObservationLocation bldg:rhc-water-in_d9d87856 ; - ns1:observes bldg:rhc-supply-water-temp_f0a588f2 . - -bldg:rhc-valve-command_074165fc a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:rhc-valve-command_7666f099 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:rhc-valve-feedback_3a07608c a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:rhc-valve-feedback_694a86e4 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:rhc-valve-in-mapsto_101cb778 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-valve-in-mapsto_d9c3070b a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-valve-in_839c5127 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-valve-in-mapsto_101cb778 . - -bldg:rhc-valve-in_e015f15f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-valve-in-mapsto_d9c3070b . - -bldg:rhc-valve-out-mapsto_d7512e4d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-valve-out-mapsto_f9d2dd66 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-valve-out_da54bc7a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-valve-out-mapsto_d7512e4d . - -bldg:rhc-valve-out_e143d7d2 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-valve-out-mapsto_f9d2dd66 . - -bldg:rhc-valve_05850723 a ns1:Valve ; - ns1:hasConnectionPoint bldg:rhc-valve-in_839c5127, - bldg:rhc-valve-out_da54bc7a ; - ns1:hasProperty bldg:rhc-valve-command_074165fc, - bldg:rhc-valve-feedback_3a07608c . - -bldg:rhc-valve_46eefe21 a ns1:Valve ; - ns1:hasConnectionPoint bldg:rhc-valve-in_e015f15f, - bldg:rhc-valve-out_e143d7d2 ; - ns1:hasProperty bldg:rhc-valve-command_7666f099, - bldg:rhc-valve-feedback_694a86e4 . - -bldg:rhc-water-in-mapsto_c71fccaa a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-water-in-mapsto_f41a8ba7 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-water-out-mapsto_13c267c3 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc-water-out-mapsto_b59ef316 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:rhc_8734f4f9 a ns1:HeatingCoil ; - ns1:contains bldg:rhc-return-water-temp-sensor_0553a738, - bldg:rhc-supply-water-temp-sensor_3a3dcf3b, - bldg:rhc-valve_05850723 ; - ns1:hasConnectionPoint bldg:rhc-air-in_bc874d3f, - bldg:rhc-air-out_cb4e001a, - bldg:rhc-water-in_62d7cce4, - bldg:rhc-water-out_fba3f312 ; - ns1:hasProperty bldg:rhc-return-water-temp_44f290ee, - bldg:rhc-supply-water-temp_670eab2e . - -bldg:rhc_8e453996 a ns1:HeatingCoil ; - ns1:contains bldg:rhc-return-water-temp-sensor_feef1a09, - bldg:rhc-supply-water-temp-sensor_e9258449, - bldg:rhc-valve_46eefe21 ; - ns1:hasConnectionPoint bldg:rhc-air-in_9aba3a71, - bldg:rhc-air-out_273df564, - bldg:rhc-water-in_d9d87856, - bldg:rhc-water-out_1e8cc137 ; - ns1:hasProperty bldg:rhc-return-water-temp_ef2250ca, - bldg:rhc-supply-water-temp_f0a588f2 . - -bldg:sa_pressure_sensor_0a2b6ed3 a ns1:Sensor ; - ns1:hasObservationLocation bldg:MAU_Supply ; - ns1:observes bldg:sa_sp_9bd1e96d . - -bldg:standby-chw-booster-pump-in-mapsto_ae6badaf a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-chw-booster-pump-in_ac766062 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-chw-booster-pump-in-mapsto_ae6badaf . - -bldg:standby-chw-booster-pump-onoff-cmd_f079c69e a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-chw-booster-pump-onoff-sts_42b4c285 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-chw-booster-pump-out-mapsto_596adcce a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-chw-booster-pump-out_61550af4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-chw-booster-pump-out-mapsto_596adcce . - -bldg:standby-chw-booster-pump-vfd-cur_a00fb31c a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:standby-chw-booster-pump-vfd-energy_f2916ea3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:standby-chw-booster-pump-vfd-fb_eed40e09 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-chw-booster-pump-vfd-flt_12931c55 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:standby-chw-booster-pump-vfd-frq_66e859f3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:standby-chw-booster-pump-vfd-pwr_8e30ec6f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:standby-chw-booster-pump-vfd-spd_4d2d9355 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-chw-booster-pump-vfd-volt_4f9fd4f7 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:standby-chw-booster-pump_fcd32e76 a ns1:Pump ; - ns1:hasConnectionPoint bldg:standby-chw-booster-pump-in_ac766062, - bldg:standby-chw-booster-pump-out_61550af4 ; - ns1:hasProperty bldg:standby-chw-booster-pump-onoff-cmd_f079c69e, - bldg:standby-chw-booster-pump-onoff-sts_42b4c285, - bldg:standby-chw-booster-pump-vfd-cur_a00fb31c, - bldg:standby-chw-booster-pump-vfd-energy_f2916ea3, - bldg:standby-chw-booster-pump-vfd-fb_eed40e09, - bldg:standby-chw-booster-pump-vfd-flt_12931c55, - bldg:standby-chw-booster-pump-vfd-frq_66e859f3, - bldg:standby-chw-booster-pump-vfd-pwr_8e30ec6f, - bldg:standby-chw-booster-pump-vfd-spd_4d2d9355, - bldg:standby-chw-booster-pump-vfd-volt_4f9fd4f7 . - -bldg:standby-chw-pump-in-mapsto_bbb551b6 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-chw-pump-in_a38c6c4b a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-chw-pump-in-mapsto_bbb551b6 . - -bldg:standby-chw-pump-onoff-cmd_b4555e47 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-chw-pump-onoff-sts_331582a3 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-chw-pump-out-mapsto_6c033aec a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-chw-pump-out_70c1763d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-chw-pump-out-mapsto_6c033aec . - -bldg:standby-chw-pump-vfd-cur_0d25edce a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:standby-chw-pump-vfd-energy_a480179f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:standby-chw-pump-vfd-fb_8e427d6f a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-chw-pump-vfd-flt_a17026b9 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:standby-chw-pump-vfd-frq_b2f94b3b a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:standby-chw-pump-vfd-pwr_79d1c89d a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:standby-chw-pump-vfd-spd_170bb84e a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-chw-pump-vfd-volt_487281ac a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:standby-chw-pump_30c01283 a ns1:Pump ; - ns1:hasConnectionPoint bldg:standby-chw-pump-in_a38c6c4b, - bldg:standby-chw-pump-out_70c1763d ; - ns1:hasProperty bldg:standby-chw-pump-onoff-cmd_b4555e47, - bldg:standby-chw-pump-onoff-sts_331582a3, - bldg:standby-chw-pump-vfd-cur_0d25edce, - bldg:standby-chw-pump-vfd-energy_a480179f, - bldg:standby-chw-pump-vfd-fb_8e427d6f, - bldg:standby-chw-pump-vfd-flt_a17026b9, - bldg:standby-chw-pump-vfd-frq_b2f94b3b, - bldg:standby-chw-pump-vfd-pwr_79d1c89d, - bldg:standby-chw-pump-vfd-spd_170bb84e, - bldg:standby-chw-pump-vfd-volt_487281ac . - -bldg:standby-hw-booster-pump-in-mapsto_dc48f3b8 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-hw-booster-pump-in_166bf117 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-hw-booster-pump-in-mapsto_dc48f3b8 . - -bldg:standby-hw-booster-pump-onoff-cmd_f546c084 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-hw-booster-pump-onoff-sts_250e2901 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-hw-booster-pump-out-mapsto_4f00a8f5 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-hw-booster-pump-out_819ddc29 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-hw-booster-pump-out-mapsto_4f00a8f5 . - -bldg:standby-hw-booster-pump-vfd-cur_53ecca58 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:standby-hw-booster-pump-vfd-energy_49cb825a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:standby-hw-booster-pump-vfd-fb_a6b52b70 a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-hw-booster-pump-vfd-flt_58eb570d a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:standby-hw-booster-pump-vfd-frq_5523dac5 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:standby-hw-booster-pump-vfd-pwr_1f2e0f64 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:standby-hw-booster-pump-vfd-spd_55d701cb a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-hw-booster-pump-vfd-volt_28b3676f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:standby-hw-booster-pump_b458b745 a ns1:Pump ; - ns1:hasConnectionPoint bldg:standby-hw-booster-pump-in_166bf117, - bldg:standby-hw-booster-pump-out_819ddc29 ; - ns1:hasProperty bldg:standby-hw-booster-pump-onoff-cmd_f546c084, - bldg:standby-hw-booster-pump-onoff-sts_250e2901, - bldg:standby-hw-booster-pump-vfd-cur_53ecca58, - bldg:standby-hw-booster-pump-vfd-energy_49cb825a, - bldg:standby-hw-booster-pump-vfd-fb_a6b52b70, - bldg:standby-hw-booster-pump-vfd-flt_58eb570d, - bldg:standby-hw-booster-pump-vfd-frq_5523dac5, - bldg:standby-hw-booster-pump-vfd-pwr_1f2e0f64, - bldg:standby-hw-booster-pump-vfd-spd_55d701cb, - bldg:standby-hw-booster-pump-vfd-volt_28b3676f . - -bldg:standby-hw-pump-in-mapsto_8bf57edd a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-hw-pump-in_862faa9b a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-hw-pump-in-mapsto_8bf57edd . - -bldg:standby-hw-pump-onoff-cmd_659327e2 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-hw-pump-onoff-sts_b512a0f8 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:standby-hw-pump-out-mapsto_19d06610 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water . - -bldg:standby-hw-pump-out_6cc7a15d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:standby-hw-pump-out-mapsto_19d06610 . - -bldg:standby-hw-pump-vfd-cur_61b45786 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:standby-hw-pump-vfd-energy_3fb5261e a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:standby-hw-pump-vfd-fb_7809385e a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-hw-pump-vfd-flt_b4c1bdf4 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:standby-hw-pump-vfd-frq_ebfc7ed5 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:standby-hw-pump-vfd-pwr_b5ed7ba1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:standby-hw-pump-vfd-spd_642d776a a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:standby-hw-pump-vfd-volt_448623d3 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:standby-hw-pump_29409e1e a ns1:Pump ; - ns1:hasConnectionPoint bldg:standby-hw-pump-in_862faa9b, - bldg:standby-hw-pump-out_6cc7a15d ; - ns1:hasProperty bldg:standby-hw-pump-onoff-cmd_659327e2, - bldg:standby-hw-pump-onoff-sts_b512a0f8, - bldg:standby-hw-pump-vfd-cur_61b45786, - bldg:standby-hw-pump-vfd-energy_3fb5261e, - bldg:standby-hw-pump-vfd-fb_7809385e, - bldg:standby-hw-pump-vfd-flt_b4c1bdf4, - bldg:standby-hw-pump-vfd-frq_ebfc7ed5, - bldg:standby-hw-pump-vfd-pwr_b5ed7ba1, - bldg:standby-hw-pump-vfd-spd_642d776a, - bldg:standby-hw-pump-vfd-volt_448623d3 . - -bldg:sup-air-flow-sensor_319fd03f a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_3c792c08 ; - ns1:observes bldg:sup-air-flow_588060d9 . - -bldg:sup-air-flow-sensor_9853f49c a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_6111b6de ; - ns1:observes bldg:sup-air-flow_9620c6d6 . - -bldg:sup-air-pressure-sensor_ced19507 a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_3c792c08 ; - ns1:observes bldg:sup-air-pressure_4a21a4b7 . - -bldg:sup-air-pressure-sensor_d9a01f03 a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_6111b6de ; - ns1:observes bldg:sup-air-pressure_47f9e431 . - -bldg:sup-air-temp-sensor_168a21b7 a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_3c792c08 ; - ns1:observes bldg:sup-air-temp_4df4e987 . - -bldg:sup-air-temp-sensor_656485ff a ns1:Sensor ; - ns1:hasObservationLocation bldg:air-out_6111b6de ; - ns1:observes bldg:sup-air-temp_8e19e029 . - -bldg:supply-fan-in-mapsto_12bc9069 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:supply-fan-motor-status_332e639d a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:supply-fan-oa-flow-switch_59673171 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-FlowStatus . - -bldg:supply-fan-out-mapsto_e85b4b5a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:supply-fan-start-cmd_34573a30 a ns1:EnumeratedActuatableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-RunStatus . - -bldg:supply-fan-vfd-cur_1b949b10 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricCurrent ; - qudt:hasUnit unit:A . - -bldg:supply-fan-vfd-energy_555b0b9c a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Energy ; - qudt:hasUnit unit:KiloW-HR . - -bldg:supply-fan-vfd-fb_61af553d a ns1:QuantifiableObservableProperty ; - rdfs:label "Fan speed feedback as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:supply-fan-vfd-flt_5d9c9eb8 a ns1:EnumeratedObservableProperty ; - ns1:hasEnumerationKind ns1:EnumerationKind-AlarmStatus . - -bldg:supply-fan-vfd-frq_e8b92475 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Frequency ; - qudt:hasUnit unit:HZ . - -bldg:supply-fan-vfd-pwr_5ebe3641 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPower ; - qudt:hasUnit unit:KiloW . - -bldg:supply-fan-vfd-spd_6c788025 a ns1:QuantifiableActuatableProperty ; - rdfs:label "Fan speed as percentage of maximum frequency" ; - qudt:hasQuantityKind qudtqk:PositiveDimensionlessRatio ; - qudt:hasUnit unit:PERCENT . - -bldg:supply-fan-vfd-volt_6d8ba756 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:ElectricPotential ; - qudt:hasUnit unit:V . - -bldg:supply-fan_3623aedf a ns1:Fan ; - ns1:hasConnectionPoint bldg:supply-fan-in_abb99a4f, - bldg:supply-fan-out_1bf3a48b ; - ns1:hasProperty bldg:supply-fan-motor-status_332e639d, - bldg:supply-fan-oa-flow-switch_59673171, - bldg:supply-fan-start-cmd_34573a30, - bldg:supply-fan-vfd-cur_1b949b10, - bldg:supply-fan-vfd-energy_555b0b9c, - bldg:supply-fan-vfd-fb_61af553d, - bldg:supply-fan-vfd-flt_5d9c9eb8, - bldg:supply-fan-vfd-frq_e8b92475, - bldg:supply-fan-vfd-pwr_5ebe3641, - bldg:supply-fan-vfd-spd_6c788025, - bldg:supply-fan-vfd-volt_6d8ba756 . - -bldg:zone-humidity_93505967 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:zone-temp_5a8db23a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:MAU-HRC-air-in_df2754c9 a ns1:InletConnectionPoint ; - ns1:cnx bldg:c3_ceb5881c ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:MAU-HRC-air-in-mapsto_4b167001 . - -bldg:MAU-HRC-air-out_2a63807f a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c4_0e62a6f4 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:MAU-HRC-air-out-mapsto_cf2decbd . - -bldg:VAV-1-in a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:air-in-mapsto_6476cd5f . - -bldg:VAV-2-in a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:air-in-mapsto_1cbb729c . - -bldg:c1_56de0519 a ns1:Duct ; - ns1:cnx bldg:oad-out_b126af63, - bldg:pre-filter-in_c868eae9 ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c2_3d04d734 a ns1:Duct ; - ns1:cnx bldg:final-filter-in_e5149983, - bldg:pre-filter-out_e7997fdf ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c3_ceb5881c a ns1:Duct ; - ns1:cnx bldg:MAU-HRC-air-in_df2754c9, - bldg:final-filter-out_58e9c3e0 ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c4_0e62a6f4 a ns1:Duct ; - ns1:cnx bldg:MAU-HRC-air-out_2a63807f, - bldg:supply-fan-in_abb99a4f ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c5_ade0daff a ns1:Duct ; - ns1:cnx bldg:heating-coil-air-in_52635905, - bldg:supply-fan-out_1bf3a48b ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c6_d020b44d a ns1:Duct ; - ns1:cnx bldg:cooling-coil-air-in_36eb18ba, - bldg:heating-coil-air-out_544d17d3 ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:c7_c037dd31 a ns1:Duct ; - ns1:cnx bldg:cooling-coil-air-out_c59ad352, - bldg:evaporative-cooler-in_7eb2a29f ; - ns1:hasMedium ns1:Fluid-Air . - -bldg:chw-hx-A-chw-diff-press_87ea01e1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:chw-hx-A-in_8254059a a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:chw-hx-A-in-mapsto_1db58933 . - -bldg:chw-hx-A-out_cf25d19d a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:chw-hx-A-out-mapsto_f008c2c7 . - -bldg:chw-hx-B-chw-diff-press_3014a6e8 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:chw-hx-B-in_9c45dfb8 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:chw-hx-B-in-mapsto_f77a4314 . - -bldg:chw-hx-chw-flow_430a9bbb a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:cooling-coil-air-in_36eb18ba a ns1:InletConnectionPoint ; - ns1:cnx bldg:c6_d020b44d ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:cooling-coil-air-in-mapsto_e3ab0e47 . - -bldg:cooling-coil-air-out_c59ad352 a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c7_c037dd31 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:cooling-coil-air-out-mapsto_a25c78d2 . - -bldg:dmp-out_3f093ac4 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:dmp-out-mapsto_2bd696f1 . - -bldg:dmp-out_f77831bb a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:dmp-out-mapsto_79d6e6e8 . - -bldg:domain-space-exhaust-air-flow_9a388f83 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:domain-space-exhaust-air-flow_cdada376 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:domain-space-in_8a40c5b6 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in-mapsto_ca06e2ff . - -bldg:domain-space-in_ee890be0 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-in-mapsto_06de82c9 . - -bldg:domain-space-out_2a870beb a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-out-mapsto_ce55a9ce . - -bldg:domain-space-out_701f6b63 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:domain-space-out-mapsto_ef71cc80 . - -bldg:domain-space-relative-humidity_1899d8c6 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:domain-space-relative-humidity_4f98e899 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:domain-space-supply-air-flow_8f08e951 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:domain-space-supply-air-flow_98160808 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:domain-space-temp_912679db a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:domain-space-temp_f7f96441 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:dwh-dw-hx-A-chw-diff-press_dcea9c74 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:dwh-dw-hx-A-in_7f8837e0 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hx-A-in-mapsto_06c48e59 . - -bldg:dwh-dw-hx-A-out_2d0a2cd6 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hx-A-out-mapsto_85dd71d2 . - -bldg:dwh-dw-hx-B-chw-diff-press_a2272f21 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:dwh-dw-hx-B-in_d9e44291 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hx-B-in-mapsto_5060c412 . - -bldg:dwh-dw-hx-chw-flow_3675a949 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:evaporative-cooler-entering-air-temp_6cc2eec4 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:evaporative-cooler-in_7eb2a29f a ns1:InletConnectionPoint ; - ns1:cnx bldg:c7_c037dd31 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:hasProperty bldg:evaporative-cooler-entering-air-temp_6cc2eec4 ; - ns1:mapsTo bldg:evaporative-cooler-in-mapsto_c1b7e4ef . - -bldg:evaporative-cooler-leaving-air-humidity_27ac145a a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:evaporative-cooler-leaving-air-temp_69d6c4a1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:exhaust-air-flow_05e725a4 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:exhaust-air-flow_df9d99f9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:final-filter-in_e5149983 a ns1:InletConnectionPoint ; - ns1:cnx bldg:c2_3d04d734 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:final-filter-in-mapsto_0833d1e3 . - -bldg:final-filter-out_58e9c3e0 a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c3_ceb5881c ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:final-filter-out-mapsto_15db3e1e . - -bldg:heating-coil-air-in_52635905 a ns1:InletConnectionPoint ; - ns1:cnx bldg:c5_ade0daff ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:heating-coil-air-in-mapsto_8790223f . - -bldg:heating-coil-air-out_544d17d3 a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c6_d020b44d ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:heating-coil-air-out-mapsto_74ff7c6a . - -bldg:heating-coil-return-water-temp_bd9dd760 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:heating-coil-return-water-temp_f4251d6e a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:heating-coil-supply-water-temp_02653f0f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:heating-coil-supply-water-temp_aa932e44 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:heating-coil-water-in_4072e7ac a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-water-in-mapsto_2feb62b4 . - -bldg:heating-coil-water-in_887e740a a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-water-in-mapsto_809bd701 . - -bldg:heating-coil-water-out_4703bc67 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-water-out-mapsto_99988bc6 . - -bldg:heating-coil-water-out_dd506a0d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:heating-coil-water-out-mapsto_d0708429 . - -bldg:hw-hx-A-chw-diff-press_b1f79ee5 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:hw-hx-A-in_d1bc5cb5 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:hw-hx-A-in-mapsto_b05996a4 . - -bldg:hw-hx-A-out_9f10db91 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:hw-hx-A-out-mapsto_fe5eaaf8 . - -bldg:hw-hx-B-chw-diff-press_05521d33 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:hw-hx-B-in_c0e02d7d a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:hw-hx-B-in-mapsto_13fab2be . - -bldg:hw-hx-chw-flow_50796280 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:in_f5d6d0fb a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in-mapsto_cdb67a5c . - -bldg:in_fc06aec0 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:in-mapsto_21483f3c . - -bldg:oad-out_b126af63 a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c1_56de0519 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:oad-out-mapsto_329ee53f . - -bldg:out_601c5e77 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:out-mapsto_00b3bab9 . - -bldg:out_c7190ab6 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:out-mapsto_61284b25 . - -bldg:outside-air_42ebfa0f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:outside-air-mapsto_dbc27945 . - -bldg:pre-filter-in_c868eae9 a ns1:InletConnectionPoint ; - ns1:cnx bldg:c1_56de0519 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:pre-filter-in-mapsto_83c9178d . - -bldg:pre-filter-out_e7997fdf a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c2_3d04d734 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:pre-filter-out-mapsto_2687662b . - -bldg:relative-humidity_748d3e6d a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:relative-humidity_e209fa0f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:RelativeHumidity ; - qudt:hasUnit unit:PERCENT_RH . - -bldg:rhc-air-in_9aba3a71 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:rhc-air-in-mapsto_488c3d84 . - -bldg:rhc-air-in_bc874d3f a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:rhc-air-in-mapsto_f1d269d3 . - -bldg:rhc-return-water-temp_44f290ee a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:rhc-return-water-temp_ef2250ca a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:rhc-supply-water-temp_670eab2e a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:rhc-supply-water-temp_f0a588f2 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:rhc-water-in_62d7cce4 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-water-in-mapsto_c71fccaa . - -bldg:rhc-water-in_d9d87856 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-water-in-mapsto_f41a8ba7 . - -bldg:rhc-water-out_1e8cc137 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-water-out-mapsto_13c267c3 . - -bldg:rhc-water-out_fba3f312 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:rhc-water-out-mapsto_b59ef316 . - -bldg:sa_sp_9bd1e96d a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:sup-air-flow_588060d9 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:sup-air-flow_9620c6d6 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:sup-air-pressure_47f9e431 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:sup-air-pressure_4a21a4b7 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Pressure ; - qudt:hasUnit unit:IN_H2O . - -bldg:sup-air-temp_4df4e987 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:sup-air-temp_8e19e029 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:supply-air-flow_360a077f a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:supply-air-flow_daf7af70 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:VolumeFlowRate ; - qudt:hasUnit unit:FT3-PER-MIN . - -bldg:supply-fan-in_abb99a4f a ns1:InletConnectionPoint ; - ns1:cnx bldg:c4_0e62a6f4 ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:supply-fan-in-mapsto_12bc9069 . - -bldg:supply-fan-out_1bf3a48b a ns1:OutletConnectionPoint ; - ns1:cnx bldg:c5_ade0daff ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:supply-fan-out-mapsto_e85b4b5a . - -bldg:temp_ae43d38d a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -bldg:temp_b606c0d1 a ns1:QuantifiableObservableProperty ; - qudt:hasQuantityKind qudtqk:Temperature ; - qudt:hasUnit unit:DEG_C . - -ns1:EnumerationKind-FlowStatus a ns1:Class, - ns1:EnumerationKind-FlowStatus, - sh:NodeShape ; - rdfs:label "EnumerationKind FlowStatus" ; - rdfs:subClassOf ns1:EnumerationKind . - -bldg:chw-hx-B-out_47e88dde a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:chw-hx-B-out-mapsto_62e61b9e . - -bldg:dwh-dw-hx-B-out_ffb57fe8 a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:dwh-dw-hx-B-out-mapsto_3928dfe5 . - -bldg:hw-hx-B-out_c7a01cdd a ns1:InletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Water ; - ns1:mapsTo bldg:hw-hx-B-out-mapsto_16c199b2 . - -bldg:zone1space1 a ns1:DomainSpace ; - ns1:hasConnectionPoint bldg:in2_05f50949, - bldg:in3_e9e16faa, - bldg:in4_dc6936f9, - bldg:in_f5d6d0fb, - bldg:out2_f9cbc9bc, - bldg:out_601c5e77 ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasProperty bldg:relative-humidity_e209fa0f, - bldg:temp_ae43d38d . - -bldg:zone2space1 a ns1:DomainSpace ; - ns1:hasConnectionPoint bldg:in2_77ef1d95, - bldg:in3_66889df9, - bldg:in4_3c7955de, - bldg:in_fc06aec0, - bldg:out2_f57eb827, - bldg:out_c7190ab6 ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasProperty bldg:relative-humidity_748d3e6d, - bldg:temp_b606c0d1 . - -ns1:EnumerationKind-Override a ns1:Class, - ns1:EnumerationKind-Override, - sh:NodeShape ; - rdfs:label "EnumerationKind Override" ; - rdfs:subClassOf ns1:EnumerationKind . - -bldg:air-out_3c792c08 a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:air-out-mapsto_42c66088 . - -bldg:air-out_6111b6de a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:air-out-mapsto_5b5afa7c . - -bldg:domain-space-physical-space_e8147069 a ns1:PhysicalSpace ; - ns1:encloses bldg:domain-space_40dae464 ; - ns1:hasProperty bldg:domain-space-exhaust-air-flow_9a388f83, - bldg:domain-space-supply-air-flow_8f08e951 . - -bldg:domain-space-physical-space_ed69877b a ns1:PhysicalSpace ; - ns1:encloses bldg:domain-space_4037724c ; - ns1:hasProperty bldg:domain-space-exhaust-air-flow_cdada376, - bldg:domain-space-supply-air-flow_98160808 . - -bldg:domain-space_4037724c a ns1:DomainSpace ; - ns1:hasConnectionPoint bldg:domain-space-in2_dc299af6, - bldg:domain-space-in3_7d353da8, - bldg:domain-space-in4_fafcb4be, - bldg:domain-space-in_8a40c5b6, - bldg:domain-space-out2_6689ab51, - bldg:domain-space-out_2a870beb ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasProperty bldg:domain-space-relative-humidity_1899d8c6, - bldg:domain-space-temp_f7f96441 . - -bldg:domain-space_40dae464 a ns1:DomainSpace ; - ns1:hasConnectionPoint bldg:domain-space-in2_b99fe9ba, - bldg:domain-space-in3_8a81b4dc, - bldg:domain-space-in4_e4e22371, - bldg:domain-space-in_ee890be0, - bldg:domain-space-out2_ba02ac1a, - bldg:domain-space-out_701f6b63 ; - ns1:hasDomain ns1:Domain-HVAC ; - ns1:hasProperty bldg:domain-space-relative-humidity_4f98e899, - bldg:domain-space-temp_912679db . - -bldg:physical-space_715b2c9d a ns1:PhysicalSpace ; - ns1:encloses bldg:zone2space1 ; - ns1:hasProperty bldg:exhaust-air-flow_df9d99f9, - bldg:supply-air-flow_daf7af70 . - -bldg:physical-space_ab1961f8 a ns1:PhysicalSpace ; - ns1:encloses bldg:zone1space1 ; - ns1:hasProperty bldg:exhaust-air-flow_05e725a4, - bldg:supply-air-flow_360a077f . - -bldg:MAU_Supply a ns1:OutletConnectionPoint ; - ns1:hasMedium ns1:Fluid-Air ; - ns1:mapsTo bldg:air-supply-mapsto_6be44d27 . - -ns1:EnumerationKind-AlarmStatus a ns1:Class, - ns1:EnumerationKind-AlarmStatus, - sh:NodeShape ; - rdfs:label "EnumerationKind AlarmStatus" ; - rdfs:subClassOf ns1:EnumerationKind . - diff --git a/poetry.lock b/poetry.lock index fced16d1a..94395122f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.5 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.1.1 and should not be changed by hand. [[package]] name = "accessible-pygments" @@ -6,6 +6,7 @@ version = "0.0.5" description = "A collection of accessible pygments styles" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "accessible_pygments-0.0.5-py3-none-any.whl", hash = "sha256:88ae3211e68a1d0b011504b2ffc1691feafce124b845bd072ab6f9f66f34d4b7"}, {file = "accessible_pygments-0.0.5.tar.gz", hash = "sha256:40918d3e6a2b619ad424cb91e556bd3bd8865443d9f22f1dcdf79e33c8046872"}, @@ -24,6 +25,7 @@ version = "0.7.16" description = "A light, configurable Sphinx theme" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92"}, {file = "alabaster-0.7.16.tar.gz", hash = "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65"}, @@ -35,6 +37,7 @@ version = "1.15.1" description = "A database migration tool for SQLAlchemy." optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "alembic-1.15.1-py3-none-any.whl", hash = "sha256:197de710da4b3e91cf66a826a5b31b5d59a127ab41bd0fc42863e2902ce2bbbe"}, {file = "alembic-1.15.1.tar.gz", hash = "sha256:e1a1c738577bca1f27e68728c910cd389b9a92152ff91d902da649c192e30c49"}, @@ -54,6 +57,7 @@ version = "4.8.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "anyio-4.8.0-py3-none-any.whl", hash = "sha256:b5011f270ab5eb0abf13385f851315585cc37ef330dd88e27ec3d34d651fd47a"}, {file = "anyio-4.8.0.tar.gz", hash = "sha256:1d9fe889df5212298c0c0723fa20479d1b94883a2df44bd3897aa91083316f7a"}, @@ -67,7 +71,7 @@ typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""} [package.extras] doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21)"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "trustme", "truststore (>=0.9.1) ; python_version >= \"3.10\"", "uvloop (>=0.21) ; platform_python_implementation == \"CPython\" and platform_system != \"Windows\" and python_version < \"3.14\""] trio = ["trio (>=0.26.1)"] [[package]] @@ -76,6 +80,8 @@ version = "0.1.4" description = "Disable App Nap on macOS >= 10.9" optional = false python-versions = ">=3.6" +groups = ["main", "dev"] +markers = "platform_system == \"Darwin\"" files = [ {file = "appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c"}, {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, @@ -87,6 +93,7 @@ version = "23.1.0" description = "Argon2 for Python" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, @@ -107,6 +114,7 @@ version = "21.2.0" description = "Low-level CFFI bindings for Argon2" optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, @@ -144,6 +152,7 @@ version = "1.3.0" description = "Better dates & times for Python" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, @@ -163,6 +172,7 @@ version = "3.0.0" description = "Annotate AST trees with source code positions" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "asttokens-3.0.0-py3-none-any.whl", hash = "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2"}, {file = "asttokens-3.0.0.tar.gz", hash = "sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7"}, @@ -178,6 +188,7 @@ version = "2.0.4" description = "Simple LRU cache for asyncio" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, @@ -192,18 +203,19 @@ version = "25.1.0" description = "Classes Without Boilerplate" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "attrs-25.1.0-py3-none-any.whl", hash = "sha256:c75a69e28a550a7e93789579c22aa26b0f5b83b75dc4e08fe092980051e1090a"}, {file = "attrs-25.1.0.tar.gz", hash = "sha256:1c97078a80c814273a76b2a298a932eb681c87415c11dee0a6921de7f1b02c3e"}, ] [package.extras] -benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +benchmark = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +cov = ["cloudpickle ; platform_python_implementation == \"CPython\"", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +dev = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] -tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] +tests = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\""] [[package]] name = "babel" @@ -211,13 +223,14 @@ version = "2.17.0" description = "Internationalization utilities" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "babel-2.17.0-py3-none-any.whl", hash = "sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2"}, {file = "babel-2.17.0.tar.gz", hash = "sha256:0c54cffb19f690cdcc52a3b50bcbf71e07a808d1c80d549f2459b9d2cf0afb9d"}, ] [package.extras] -dev = ["backports.zoneinfo", "freezegun (>=1.0,<2.0)", "jinja2 (>=3.0)", "pytest (>=6.0)", "pytest-cov", "pytz", "setuptools", "tzdata"] +dev = ["backports.zoneinfo ; python_version < \"3.9\"", "freezegun (>=1.0,<2.0)", "jinja2 (>=3.0)", "pytest (>=6.0)", "pytest-cov", "pytz", "setuptools", "tzdata ; sys_platform == \"win32\""] [[package]] name = "bac0" @@ -225,6 +238,7 @@ version = "22.9.21" description = "BACnet Scripting Framework for testing DDC Controls" optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "BAC0-22.9.21-py3-none-any.whl", hash = "sha256:7a8b5b16c1b15a515aecc96b9d5ead696de4131d87020d4ad3d2ede6e0323a6b"}, {file = "BAC0-22.9.21.tar.gz", hash = "sha256:c0d5558704b6fe2f801adbd77270ea87c14d5336efb388fc8b876a853722fc71"}, @@ -240,6 +254,7 @@ version = "0.19.0" description = "BACnet Communications Library" optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "bacpypes-0.19.0-py3-none-any.whl", hash = "sha256:317fbe440474845978dab134f8aefb5f45a41a13926cbdf87b9b8afe6e79131b"}, ] @@ -250,6 +265,7 @@ version = "4.13.3" description = "Screen-scraping library" optional = false python-versions = ">=3.7.0" +groups = ["dev"] files = [ {file = "beautifulsoup4-4.13.3-py3-none-any.whl", hash = "sha256:99045d7d3f08f91f0d656bc9b7efbae189426cd913d830294a15eefa0ea4df16"}, {file = "beautifulsoup4-4.13.3.tar.gz", hash = "sha256:1bd32405dacc920b42b83ba01644747ed77456a65760e285fbc47633ceddaf8b"}, @@ -272,6 +288,7 @@ version = "22.12.0" description = "The uncompromising code formatter." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "black-22.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eedd20838bd5d75b80c9f5487dbcb06836a43833a37846cf1d8c1cc01cef59d"}, {file = "black-22.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:159a46a4947f73387b4d83e87ea006dbb2337eab6c879620a3ba52699b1f4351"}, @@ -306,6 +323,7 @@ version = "6.2.0" description = "An easy safelist-based HTML-sanitizing tool." optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e"}, {file = "bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f"}, @@ -324,6 +342,7 @@ version = "1.9.0" description = "Fast, simple object-to-object and broadcast signaling" optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc"}, {file = "blinker-1.9.0.tar.gz", hash = "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf"}, @@ -335,6 +354,8 @@ version = "0.3.4a2" description = "Wraps topquadrant's SHACL implementation in a simple Python wrapper" optional = true python-versions = "<4.0,>=3.8.1" +groups = ["main"] +markers = "extra == \"topquadrant\"" files = [ {file = "brick_tq_shacl-0.3.4a2-py3-none-any.whl", hash = "sha256:ac43253e0a56f6fd27c98e48703be6574a413e387c66f90d25998d30a1f74bf5"}, {file = "brick_tq_shacl-0.3.4a2.tar.gz", hash = "sha256:af8f0c5434bf444f2fab49c07c60a8cb27eb3a2b0ad5aa0d0e9e366c69dcef59"}, @@ -349,6 +370,7 @@ version = "2025.1.31" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "certifi-2025.1.31-py3-none-any.whl", hash = "sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe"}, {file = "certifi-2025.1.31.tar.gz", hash = "sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651"}, @@ -360,6 +382,7 @@ version = "1.17.1" description = "Foreign Function Interface for Python calling C code." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, @@ -439,6 +462,7 @@ version = "3.4.0" description = "Validate configuration and produce human readable error messages." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "cfgv-3.4.0-py2.py3-none-any.whl", hash = "sha256:b7265b1f29fd3316bfcd2b330d63d024f2bfd8bcb8b0272f8e19a504856c48f9"}, {file = "cfgv-3.4.0.tar.gz", hash = "sha256:e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560"}, @@ -450,6 +474,7 @@ version = "3.4.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "charset_normalizer-3.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de"}, {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176"}, @@ -551,6 +576,7 @@ version = "8.1.8" description = "Composable command line interface toolkit" optional = false python-versions = ">=3.7" +groups = ["main", "dev"] files = [ {file = "click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2"}, {file = "click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a"}, @@ -565,10 +591,12 @@ version = "0.4.6" description = "Cross-platform colored terminal text." optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +groups = ["main", "dev"] files = [ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] +markers = {main = "sys_platform == \"win32\" or platform_system == \"Windows\""} [[package]] name = "comm" @@ -576,6 +604,7 @@ version = "0.2.2" description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "comm-0.2.2-py3-none-any.whl", hash = "sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3"}, {file = "comm-0.2.2.tar.gz", hash = "sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e"}, @@ -593,6 +622,7 @@ version = "1.3.1" description = "Python library for calculating contours of 2D quadrilateral grids" optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "contourpy-1.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a045f341a77b77e1c5de31e74e966537bba9f3c4099b35bf4c2e3939dd54cdab"}, {file = "contourpy-1.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:500360b77259914f7805af7462e41f9cb7ca92ad38e9f94d6c8641b089338124"}, @@ -666,6 +696,7 @@ version = "7.6.12" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "coverage-7.6.12-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:704c8c8c6ce6569286ae9622e534b4f5b9759b6f2cd643f1c1a61f666d534fe8"}, {file = "coverage-7.6.12-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ad7525bf0241e5502168ae9c643a2f6c219fa0a283001cee4cf23a9b7da75879"}, @@ -736,7 +767,7 @@ files = [ tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.11.0a6\" and extra == \"toml\""} [package.extras] -toml = ["tomli"] +toml = ["tomli ; python_full_version <= \"3.11.0a6\""] [[package]] name = "cycler" @@ -744,6 +775,7 @@ version = "0.12.1" description = "Composable style cycles" optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, @@ -759,6 +791,7 @@ version = "1.8.13" description = "An implementation of the Debug Adapter Protocol for Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "debugpy-1.8.13-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:06859f68e817966723ffe046b896b1bd75c665996a77313370336ee9e1de3e90"}, {file = "debugpy-1.8.13-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb56c2db69fb8df3168bc857d7b7d2494fed295dfdbde9a45f27b4b152f37520"}, @@ -794,6 +827,7 @@ version = "5.2.1" description = "Decorators for Humans" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "decorator-5.2.1-py3-none-any.whl", hash = "sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a"}, {file = "decorator-5.2.1.tar.gz", hash = "sha256:65f266143752f734b0a7cc83c46f4618af75b8c5911b00ccb61d0ac9b6da0360"}, @@ -805,6 +839,7 @@ version = "0.7.1" description = "XML bomb protection for Python stdlib modules" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["dev"] files = [ {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, @@ -816,6 +851,7 @@ version = "0.3.9" description = "Distribution utilities" optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "distlib-0.3.9-py2.py3-none-any.whl", hash = "sha256:47f8c22fd27c27e25a65601af709b38e4f0a45ea4fc2e710f65755fa8caaaf87"}, {file = "distlib-0.3.9.tar.gz", hash = "sha256:a60f20dea646b8a33f3e7772f74dc0b2d0772d2837ee1342a00645c81edf9403"}, @@ -827,6 +863,7 @@ version = "0.18.1" description = "Docutils -- Python Documentation Utilities" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["dev"] files = [ {file = "docutils-0.18.1-py2.py3-none-any.whl", hash = "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c"}, {file = "docutils-0.18.1.tar.gz", hash = "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06"}, @@ -838,6 +875,7 @@ version = "2.0.0" description = "An implementation of lxml.xmlfile for the standard library" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "et_xmlfile-2.0.0-py3-none-any.whl", hash = "sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa"}, {file = "et_xmlfile-2.0.0.tar.gz", hash = "sha256:dab3f4764309081ce75662649be815c4c9081e88f0837825f90fd28317d4da54"}, @@ -849,6 +887,8 @@ version = "1.2.2" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" +groups = ["main", "dev"] +markers = "python_version < \"3.11\"" files = [ {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"}, {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"}, @@ -863,13 +903,14 @@ version = "2.2.0" description = "Get the currently executing AST node of a frame, and other information" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "executing-2.2.0-py2.py3-none-any.whl", hash = "sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa"}, {file = "executing-2.2.0.tar.gz", hash = "sha256:5d108c028108fe2551d1a7b2e8b713341e2cb4fc0aa7dcf966fa4327a5226755"}, ] [package.extras] -tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich ; python_version >= \"3.11\""] [[package]] name = "fastjsonschema" @@ -877,6 +918,7 @@ version = "2.21.1" description = "Fastest Python implementation of JSON schema" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667"}, {file = "fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4"}, @@ -891,6 +933,7 @@ version = "3.17.0" description = "A platform independent file lock." optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "filelock-3.17.0-py3-none-any.whl", hash = "sha256:533dc2f7ba78dc2f0f531fc6c4940addf7b70a481e269a5a3b93be94ffbe8338"}, {file = "filelock-3.17.0.tar.gz", hash = "sha256:ee4e77401ef576ebb38cd7f13b9b28893194acc20a8e68e18730ba9c0e54660e"}, @@ -899,7 +942,7 @@ files = [ [package.extras] docs = ["furo (>=2024.8.6)", "sphinx (>=8.1.3)", "sphinx-autodoc-typehints (>=3)"] testing = ["covdefaults (>=2.3)", "coverage (>=7.6.10)", "diff-cover (>=9.2.1)", "pytest (>=8.3.4)", "pytest-asyncio (>=0.25.2)", "pytest-cov (>=6)", "pytest-mock (>=3.14)", "pytest-timeout (>=2.3.1)", "virtualenv (>=20.28.1)"] -typing = ["typing-extensions (>=4.12.2)"] +typing = ["typing-extensions (>=4.12.2) ; python_version < \"3.11\""] [[package]] name = "flake8" @@ -907,6 +950,7 @@ version = "7.1.2" description = "the modular source code checker: pep8 pyflakes and co" optional = false python-versions = ">=3.8.1" +groups = ["dev"] files = [ {file = "flake8-7.1.2-py2.py3-none-any.whl", hash = "sha256:1cbc62e65536f65e6d754dfe6f1bada7f5cf392d6f5db3c2b85892466c3e7c1a"}, {file = "flake8-7.1.2.tar.gz", hash = "sha256:c586ffd0b41540951ae41af572e6790dbd49fc12b3aa2541685d253d9bd504bd"}, @@ -923,6 +967,7 @@ version = "2.3.3" description = "A simple framework for building complex web applications." optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "flask-2.3.3-py3-none-any.whl", hash = "sha256:f69fcd559dc907ed196ab9df0e48471709175e696d6e698dd4dbe940f96ce66b"}, {file = "flask-2.3.3.tar.gz", hash = "sha256:09c347a92aa7ff4a8e7f3206795f30d826654baf38b873d0744cd571ca609efc"}, @@ -945,6 +990,7 @@ version = "3.1" description = "Browsable web APIs for Flask." optional = false python-versions = "*" +groups = ["main"] files = [ {file = "Flask-API-3.1.tar.gz", hash = "sha256:cb079845f5573eac55c6800a9a142bd7b54fd1227019a21cb2f75dfe5311d44f"}, {file = "Flask_API-3.1-py3-none-any.whl", hash = "sha256:08cb377412ff1b6bea47e8a5ffefc592a149f8686045038df6e116d12ab5d4e9"}, @@ -959,6 +1005,7 @@ version = "4.56.0" description = "Tools to manipulate font files" optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "fonttools-4.56.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:331954d002dbf5e704c7f3756028e21db07097c19722569983ba4d74df014000"}, {file = "fonttools-4.56.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8d1613abd5af2f93c05867b3a3759a56e8bf97eb79b1da76b2bc10892f96ff16"}, @@ -1013,18 +1060,18 @@ files = [ ] [package.extras] -all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "pycairo", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0)", "xattr", "zopfli (>=0.1.4)"] +all = ["brotli (>=1.0.1) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\"", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres ; platform_python_implementation == \"PyPy\"", "pycairo", "scipy ; platform_python_implementation != \"PyPy\"", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0) ; python_version <= \"3.12\"", "xattr ; sys_platform == \"darwin\"", "zopfli (>=0.1.4)"] graphite = ["lz4 (>=1.7.4.2)"] -interpolatable = ["munkres", "pycairo", "scipy"] +interpolatable = ["munkres ; platform_python_implementation == \"PyPy\"", "pycairo", "scipy ; platform_python_implementation != \"PyPy\""] lxml = ["lxml (>=4.0)"] pathops = ["skia-pathops (>=0.5.0)"] plot = ["matplotlib"] repacker = ["uharfbuzz (>=0.23.0)"] symfont = ["sympy"] -type1 = ["xattr"] +type1 = ["xattr ; sys_platform == \"darwin\""] ufo = ["fs (>=2.2.0,<3)"] -unicode = ["unicodedata2 (>=15.1.0)"] -woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] +unicode = ["unicodedata2 (>=15.1.0) ; python_version <= \"3.12\""] +woff = ["brotli (>=1.0.1) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\"", "zopfli (>=0.1.4)"] [[package]] name = "fqdn" @@ -1032,6 +1079,7 @@ version = "1.5.1" description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" optional = false python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +groups = ["dev"] files = [ {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, @@ -1043,6 +1091,8 @@ version = "3.1.1" description = "Lightweight in-process concurrent programming" optional = false python-versions = ">=3.7" +groups = ["main", "dev"] +markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\"" files = [ {file = "greenlet-3.1.1-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:0bbae94a29c9e5c7e4a2b7f0aae5c17e8e90acbfd3bf6270eeba60c39fce3563"}, {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0fde093fb93f35ca72a556cf72c92ea3ebfda3d79fc35bb19fbe685853869a83"}, @@ -1129,6 +1179,7 @@ version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, @@ -1140,6 +1191,7 @@ version = "1.2.1" description = "HTML parser based on the WHATWG HTML specification" optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "html5rdf-1.2.1-py2.py3-none-any.whl", hash = "sha256:1f519121bc366af3e485310dc8041d2e86e5173c1a320fac3dc9d2604069b83e"}, {file = "html5rdf-1.2.1.tar.gz", hash = "sha256:ace9b420ce52995bb4f05e7425eedf19e433c981dfe7a831ab391e2fa2e1a195"}, @@ -1151,6 +1203,7 @@ version = "1.0.7" description = "A minimal low-level HTTP client." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "httpcore-1.0.7-py3-none-any.whl", hash = "sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd"}, {file = "httpcore-1.0.7.tar.gz", hash = "sha256:8551cb62a169ec7162ac7be8d4817d561f60e08eaa485234898414bb5a8a0b4c"}, @@ -1172,6 +1225,7 @@ version = "0.28.1" description = "The next generation HTTP client." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, @@ -1184,7 +1238,7 @@ httpcore = "==1.*" idna = "*" [package.extras] -brotli = ["brotli", "brotlicffi"] +brotli = ["brotli ; platform_python_implementation == \"CPython\"", "brotlicffi ; platform_python_implementation != \"CPython\""] cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] @@ -1196,6 +1250,7 @@ version = "2.6.8" description = "File identification library for Python" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "identify-2.6.8-py2.py3-none-any.whl", hash = "sha256:83657f0f766a3c8d0eaea16d4ef42494b39b34629a4b3192a9d020d349b3e255"}, {file = "identify-2.6.8.tar.gz", hash = "sha256:61491417ea2c0c5c670484fd8abbb34de34cdae1e5f39a73ee65e48e4bb663fc"}, @@ -1210,6 +1265,7 @@ version = "3.10" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, @@ -1224,6 +1280,7 @@ version = "1.4.1" description = "Getting image size from png/jpeg/jpeg2000/gif file" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +groups = ["dev"] files = [ {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, @@ -1235,21 +1292,23 @@ version = "8.6.1" description = "Read metadata from Python packages" optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "importlib_metadata-8.6.1-py3-none-any.whl", hash = "sha256:02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e"}, {file = "importlib_metadata-8.6.1.tar.gz", hash = "sha256:310b41d755445d74569f993ccfc22838295d9fe005425094fad953d7f15c8580"}, ] +markers = {main = "python_version <= \"3.11\""} [package.dependencies] zipp = ">=3.20" [package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] enabler = ["pytest-enabler (>=2.2)"] perf = ["ipython"] -test = ["flufl.flake8", "importlib_resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] +test = ["flufl.flake8", "importlib_resources (>=1.3) ; python_version < \"3.9\"", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] type = ["pytest-mypy"] [[package]] @@ -1258,6 +1317,7 @@ version = "2.0.0" description = "brain-dead simple config-ini parsing" optional = false python-versions = ">=3.7" +groups = ["main", "dev"] files = [ {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, @@ -1269,6 +1329,7 @@ version = "6.29.5" description = "IPython Kernel for Jupyter" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "ipykernel-6.29.5-py3-none-any.whl", hash = "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5"}, {file = "ipykernel-6.29.5.tar.gz", hash = "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215"}, @@ -1302,6 +1363,7 @@ version = "8.33.0" description = "IPython: Productive Interactive Computing" optional = false python-versions = ">=3.10" +groups = ["main", "dev"] files = [ {file = "ipython-8.33.0-py3-none-any.whl", hash = "sha256:aa5b301dfe1eaf0167ff3238a6825f810a029c9dad9d3f1597f30bd5ff65cc44"}, {file = "ipython-8.33.0.tar.gz", hash = "sha256:4c3e36a6dfa9e8e3702bd46f3df668624c975a22ff340e96ea7277afbd76217d"}, @@ -1323,7 +1385,7 @@ typing_extensions = {version = ">=4.6", markers = "python_version < \"3.12\""} [package.extras] all = ["ipython[black,doc,kernel,matplotlib,nbconvert,nbformat,notebook,parallel,qtconsole]", "ipython[test,test-extra]"] black = ["black"] -doc = ["docrepr", "exceptiongroup", "intersphinx_registry", "ipykernel", "ipython[test]", "matplotlib", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "sphinxcontrib-jquery", "tomli", "typing_extensions"] +doc = ["docrepr", "exceptiongroup", "intersphinx_registry", "ipykernel", "ipython[test]", "matplotlib", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "sphinxcontrib-jquery", "tomli ; python_version < \"3.11\"", "typing_extensions"] kernel = ["ipykernel"] matplotlib = ["matplotlib"] nbconvert = ["nbconvert"] @@ -1340,6 +1402,7 @@ version = "8.1.5" description = "Jupyter interactive widgets" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "ipywidgets-8.1.5-py3-none-any.whl", hash = "sha256:3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245"}, {file = "ipywidgets-8.1.5.tar.gz", hash = "sha256:870e43b1a35656a80c18c9503bbf2d16802db1cb487eec6fab27d683381dde17"}, @@ -1361,6 +1424,8 @@ version = "0.7.2" description = "An ISO 8601 date/time/duration parser and formatter" optional = false python-versions = ">=3.7" +groups = ["main"] +markers = "python_version < \"3.11\"" files = [ {file = "isodate-0.7.2-py3-none-any.whl", hash = "sha256:28009937d8031054830160fce6d409ed342816b543597cece116d966c6d99e15"}, {file = "isodate-0.7.2.tar.gz", hash = "sha256:4cd1aa0f43ca76f4a6c6c0292a85f40b35ec2e43e315b59f06e6d32171a953e6"}, @@ -1372,6 +1437,7 @@ version = "20.11.0" description = "Operations with ISO 8601 durations" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, @@ -1386,6 +1452,7 @@ version = "5.13.2" description = "A Python utility / library to sort Python imports." optional = false python-versions = ">=3.8.0" +groups = ["dev"] files = [ {file = "isort-5.13.2-py3-none-any.whl", hash = "sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"}, {file = "isort-5.13.2.tar.gz", hash = "sha256:48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109"}, @@ -1400,6 +1467,7 @@ version = "2.2.0" description = "Safely pass data to untrusted environments and back." optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "itsdangerous-2.2.0-py3-none-any.whl", hash = "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef"}, {file = "itsdangerous-2.2.0.tar.gz", hash = "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173"}, @@ -1411,6 +1479,7 @@ version = "0.19.2" description = "An autocompletion tool for Python that can be used for text editors." optional = false python-versions = ">=3.6" +groups = ["main", "dev"] files = [ {file = "jedi-0.19.2-py2.py3-none-any.whl", hash = "sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9"}, {file = "jedi-0.19.2.tar.gz", hash = "sha256:4770dc3de41bde3966b02eb84fbcf557fb33cce26ad23da12c742fb50ecb11f0"}, @@ -1430,6 +1499,7 @@ version = "3.1.6" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" +groups = ["main", "dev"] files = [ {file = "jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67"}, {file = "jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d"}, @@ -1447,6 +1517,7 @@ version = "0.10.0" description = "A Python implementation of the JSON5 data format." optional = false python-versions = ">=3.8.0" +groups = ["dev"] files = [ {file = "json5-0.10.0-py3-none-any.whl", hash = "sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa"}, {file = "json5-0.10.0.tar.gz", hash = "sha256:e66941c8f0a02026943c52c2eb34ebeb2a6f819a0be05920a6f5243cd30fd559"}, @@ -1461,6 +1532,7 @@ version = "3.0.0" description = "Identify specific nodes in a JSON document (RFC 6901)" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942"}, {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"}, @@ -1472,6 +1544,7 @@ version = "4.23.0" description = "An implementation of JSON Schema validation for Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, @@ -1501,6 +1574,7 @@ version = "2024.10.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "jsonschema_specifications-2024.10.1-py3-none-any.whl", hash = "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf"}, {file = "jsonschema_specifications-2024.10.1.tar.gz", hash = "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272"}, @@ -1515,6 +1589,7 @@ version = "1.1.1" description = "Jupyter metapackage. Install all the Jupyter components in one go." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83"}, {file = "jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a"}, @@ -1534,6 +1609,7 @@ version = "0.15.1" description = "Build a book with Jupyter Notebooks and Sphinx." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "jupyter-book-0.15.1.tar.gz", hash = "sha256:8a1634ec16f7eedee0d116f1e5fb7c48203289ad92da42e09519dc71d956c010"}, {file = "jupyter_book-0.15.1-py3-none-any.whl", hash = "sha256:7671264952abd1ca3f5e713b03e138dda710c92a985c49154f398817fe089968"}, @@ -1571,6 +1647,7 @@ version = "0.6.1" description = "A defined interface for working with a cache of jupyter notebooks." optional = false python-versions = "~=3.8" +groups = ["dev"] files = [ {file = "jupyter-cache-0.6.1.tar.gz", hash = "sha256:26f83901143edf4af2f3ff5a91e2d2ad298e46e2cee03c8071d37a23a63ccbfc"}, {file = "jupyter_cache-0.6.1-py3-none-any.whl", hash = "sha256:2fce7d4975805c77f75bdfc1bc2e82bc538b8e5b1af27f2f5e06d55b9f996a82"}, @@ -1598,6 +1675,7 @@ version = "8.6.3" description = "Jupyter protocol implementation and client libraries" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f"}, {file = "jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419"}, @@ -1612,7 +1690,7 @@ traitlets = ">=5.3" [package.extras] docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko ; sys_platform == \"win32\"", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] [[package]] name = "jupyter-console" @@ -1620,6 +1698,7 @@ version = "6.6.3" description = "Jupyter terminal console" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, @@ -1644,6 +1723,7 @@ version = "5.7.2" description = "Jupyter core package. A base package on which Jupyter projects rely." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "jupyter_core-5.7.2-py3-none-any.whl", hash = "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409"}, {file = "jupyter_core-5.7.2.tar.gz", hash = "sha256:aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9"}, @@ -1664,6 +1744,7 @@ version = "0.12.0" description = "Jupyter Event System library" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "jupyter_events-0.12.0-py3-none-any.whl", hash = "sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb"}, {file = "jupyter_events-0.12.0.tar.gz", hash = "sha256:fc3fce98865f6784c9cd0a56a20644fc6098f21c8c33834a8d9fe383c17e554b"}, @@ -1690,6 +1771,7 @@ version = "2.2.5" description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001"}, {file = "jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da"}, @@ -1704,6 +1786,7 @@ version = "2.15.0" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "jupyter_server-2.15.0-py3-none-any.whl", hash = "sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3"}, {file = "jupyter_server-2.15.0.tar.gz", hash = "sha256:9d446b8697b4f7337a1b7cdcac40778babdd93ba614b6d68ab1c0c918f1c4084"}, @@ -1740,6 +1823,7 @@ version = "0.5.3" description = "A Jupyter Server Extension Providing Terminals." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa"}, {file = "jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269"}, @@ -1759,6 +1843,7 @@ version = "4.3.5" description = "JupyterLab computational environment" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupyterlab-4.3.5-py3-none-any.whl", hash = "sha256:571bbdee20e4c5321ab5195bc41cf92a75a5cff886be5e57ce78dfa37a5e9fdb"}, {file = "jupyterlab-4.3.5.tar.gz", hash = "sha256:c779bf72ced007d7d29d5bcef128e7fdda96ea69299e19b04a43635a7d641f9d"}, @@ -1793,6 +1878,7 @@ version = "0.3.0" description = "Pygments theme using JupyterLab CSS variables" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, @@ -1804,6 +1890,7 @@ version = "2.27.3" description = "A set of server components for JupyterLab and JupyterLab like applications." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4"}, {file = "jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4"}, @@ -1829,6 +1916,7 @@ version = "3.0.13" description = "Jupyter interactive widgets for JupyterLab" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "jupyterlab_widgets-3.0.13-py3-none-any.whl", hash = "sha256:e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54"}, {file = "jupyterlab_widgets-3.0.13.tar.gz", hash = "sha256:a2966d385328c1942b683a8cd96b89b8dd82c8b8f81dda902bb2bc06d46f5bed"}, @@ -1840,6 +1928,7 @@ version = "1.16.7" description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "jupytext-1.16.7-py3-none-any.whl", hash = "sha256:912f9d9af7bd3f15470105e5c5dddf1669b2d8c17f0c55772687fc5a4a73fe69"}, {file = "jupytext-1.16.7.tar.gz", hash = "sha256:fc4e97f0890e22062c4ef10313c7ca960b07b3767246a1fef7585888cc2afe5d"}, @@ -1869,6 +1958,7 @@ version = "1.4.8" description = "A fast implementation of the Cassowary constraint solver" optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"}, {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"}, @@ -1958,6 +2048,7 @@ version = "3.0.0" description = "A lexer and codec to work with LaTeX code in Python." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "latexcodec-3.0.0-py3-none-any.whl", hash = "sha256:6f3477ad5e61a0a99bd31a6a370c34e88733a6bad9c921a3ffcfacada12f41a7"}, {file = "latexcodec-3.0.0.tar.gz", hash = "sha256:917dc5fe242762cc19d963e6548b42d63a118028cdd3361d62397e3b638b6bc5"}, @@ -1969,6 +2060,7 @@ version = "2.0.3" description = "Links recognition library with FULL unicode support." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "linkify-it-py-2.0.3.tar.gz", hash = "sha256:68cda27e162e9215c17d786649d1da0021a451bdc436ef9e0fa0ba5234b9b048"}, {file = "linkify_it_py-2.0.3-py3-none-any.whl", hash = "sha256:6bcbc417b0ac14323382aef5c5192c0075bf8a9d6b41820a2b66371eac6b6d79"}, @@ -1989,6 +2081,7 @@ version = "1.3.9" description = "A super-fast templating language that borrows the best ideas from the existing templating languages." optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "Mako-1.3.9-py3-none-any.whl", hash = "sha256:95920acccb578427a9aa38e37a186b1e43156c87260d7ba18ca63aa4c7cbd3a1"}, {file = "mako-1.3.9.tar.gz", hash = "sha256:b5d65ff3462870feec922dbccf38f6efb44e5714d7b593a656be86663d8600ac"}, @@ -2008,6 +2101,7 @@ version = "2.2.0" description = "Python port of markdown-it. Markdown parsing, done right!" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "markdown-it-py-2.2.0.tar.gz", hash = "sha256:7c9a5e412688bc771c67432cbfebcdd686c93ce6484913dccf06cb5a0bea35a1"}, {file = "markdown_it_py-2.2.0-py3-none-any.whl", hash = "sha256:5a35f8d1870171d9acc47b99612dc146129b631baf04970128b568f190d0cc30"}, @@ -2032,6 +2126,7 @@ version = "3.0.2" description = "Safely add untrusted strings to HTML/XML markup." optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, @@ -2102,6 +2197,7 @@ version = "3.10.1" description = "Python plotting package" optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "matplotlib-3.10.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ff2ae14910be903f4a24afdbb6d7d3a6c44da210fc7d42790b87aeac92238a16"}, {file = "matplotlib-3.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0721a3fd3d5756ed593220a8b86808a36c5031fce489adb5b31ee6dbb47dd5b2"}, @@ -2159,6 +2255,7 @@ version = "0.1.7" description = "Inline Matplotlib backend for Jupyter" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "matplotlib_inline-0.1.7-py3-none-any.whl", hash = "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca"}, {file = "matplotlib_inline-0.1.7.tar.gz", hash = "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90"}, @@ -2173,6 +2270,7 @@ version = "0.7.0" description = "McCabe checker, plugin for flake8" optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, @@ -2184,6 +2282,7 @@ version = "0.3.5" description = "Collection of plugins for markdown-it-py" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "mdit-py-plugins-0.3.5.tar.gz", hash = "sha256:eee0adc7195e5827e17e02d2a258a2ba159944a0748f59c5099a4a27f78fcf6a"}, {file = "mdit_py_plugins-0.3.5-py3-none-any.whl", hash = "sha256:ca9a0714ea59a24b2b044a1831f48d817dd0c817e84339f20e7889f392d77c4e"}, @@ -2203,6 +2302,7 @@ version = "0.1.2" description = "Markdown URL utilities" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, @@ -2214,6 +2314,7 @@ version = "3.1.2" description = "A sane and fast Markdown parser with useful plugins and renderers" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "mistune-3.1.2-py3-none-any.whl", hash = "sha256:4b47731332315cdca99e0ded46fc0004001c1299ff773dfb48fbe1fd226de319"}, {file = "mistune-3.1.2.tar.gz", hash = "sha256:733bf018ba007e8b5f2d3a9eb624034f6ee26c4ea769a98ec533ee111d504dff"}, @@ -2228,6 +2329,7 @@ version = "1.9.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "mypy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8a67616990062232ee4c3952f41c779afac41405806042a8126fe96e098419f"}, {file = "mypy-1.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d357423fa57a489e8c47b7c85dfb96698caba13d66e086b412298a1a0ea3b0ed"}, @@ -2275,6 +2377,7 @@ version = "1.0.0" description = "Type system extensions for programs checked with the mypy type checker." optional = false python-versions = ">=3.5" +groups = ["main", "dev"] files = [ {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, @@ -2286,6 +2389,7 @@ version = "0.17.2" description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "myst-nb-0.17.2.tar.gz", hash = "sha256:0f61386515fab07c73646adca97fff2f69f41e90d313a260217c5bbe419d858b"}, {file = "myst_nb-0.17.2-py3-none-any.whl", hash = "sha256:132ca4d0f5c308fdd4b6fdaba077712e28e119ccdafd04d6e41b51aac5483494"}, @@ -2314,6 +2418,7 @@ version = "0.18.1" description = "An extended commonmark compliant parser, with bridges to docutils & sphinx." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "myst-parser-0.18.1.tar.gz", hash = "sha256:79317f4bb2c13053dd6e64f9da1ba1da6cd9c40c8a430c447a7b146a594c246d"}, {file = "myst_parser-0.18.1-py3-none-any.whl", hash = "sha256:61b275b85d9f58aa327f370913ae1bec26ebad372cc99f3ab85c8ec3ee8d9fb8"}, @@ -2340,6 +2445,7 @@ version = "0.7.4" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." optional = false python-versions = ">=3.7.0" +groups = ["main", "dev"] files = [ {file = "nbclient-0.7.4-py3-none-any.whl", hash = "sha256:c817c0768c5ff0d60e468e017613e6eae27b6fa31e43f905addd2d24df60c125"}, {file = "nbclient-0.7.4.tar.gz", hash = "sha256:d447f0e5a4cfe79d462459aec1b3dc5c2e9152597262be8ee27f7d4c02566a0d"}, @@ -2362,6 +2468,7 @@ version = "7.16.6" description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "nbconvert-7.16.6-py3-none-any.whl", hash = "sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b"}, {file = "nbconvert-7.16.6.tar.gz", hash = "sha256:576a7e37c6480da7b8465eefa66c17844243816ce1ccc372633c6b71c3c0f582"}, @@ -2398,6 +2505,7 @@ version = "5.10.4" description = "The Jupyter Notebook format" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b"}, {file = "nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a"}, @@ -2419,6 +2527,7 @@ version = "1.5.5" description = "Pytest plugin for testing notebooks" optional = false python-versions = ">=3.8.0" +groups = ["main"] files = [ {file = "nbmake-1.5.5-py3-none-any.whl", hash = "sha256:c6fbe6e48b60cacac14af40b38bf338a3b88f47f085c54ac5b8639ff0babaf4b"}, {file = "nbmake-1.5.5.tar.gz", hash = "sha256:239dc868ea13a7c049746e2aba2c229bd0f6cdbc6bfa1d22f4c88638aa4c5f5c"}, @@ -2437,6 +2546,7 @@ version = "1.6.0" description = "Patch asyncio to allow nested event loops" optional = false python-versions = ">=3.5" +groups = ["main", "dev"] files = [ {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, {file = "nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe"}, @@ -2448,6 +2558,7 @@ version = "0.11.0" description = "Portable network interface information." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "netifaces-0.11.0-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:eb4813b77d5df99903af4757ce980a98c4d702bbcb81f32a0b305a1537bdf0b1"}, {file = "netifaces-0.11.0-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:5f9ca13babe4d845e400921973f6165a4c2f9f3379c7abfc7478160e25d196a4"}, @@ -2487,6 +2598,7 @@ version = "3.4.2" description = "Python package for creating and manipulating graphs and networks" optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "networkx-3.4.2-py3-none-any.whl", hash = "sha256:df5d4365b724cf81b8c6a7312509d0c22386097011ad1abe274afd5e9d3bbc5f"}, {file = "networkx-3.4.2.tar.gz", hash = "sha256:307c3669428c5362aab27c8a1260aa8f47c4e91d3891f48be0141738d8d053e1"}, @@ -2506,6 +2618,7 @@ version = "1.9.1" description = "Node.js virtual environment builder" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +groups = ["dev"] files = [ {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, @@ -2517,6 +2630,7 @@ version = "7.3.2" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "notebook-7.3.2-py3-none-any.whl", hash = "sha256:e5f85fc59b69d3618d73cf27544418193ff8e8058d5bf61d315ce4f473556288"}, {file = "notebook-7.3.2.tar.gz", hash = "sha256:705e83a1785f45b383bf3ee13cb76680b92d24f56fb0c7d2136fe1d850cd3ca8"}, @@ -2532,7 +2646,7 @@ tornado = ">=6.2.0" [package.extras] dev = ["hatch", "pre-commit"] docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.27.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] +test = ["importlib-resources (>=5.0) ; python_version < \"3.10\"", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.27.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] [[package]] name = "notebook-shim" @@ -2540,6 +2654,7 @@ version = "0.2.4" description = "A shim layer for notebook traits and config" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef"}, {file = "notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb"}, @@ -2557,6 +2672,7 @@ version = "2.2.3" description = "Fundamental package for array computing in Python" optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "numpy-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:cbc6472e01952d3d1b2772b720428f8b90e2deea8344e854df22b0618e9cce71"}, {file = "numpy-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cdfe0c22692a30cd830c0755746473ae66c4a8f2e7bd508b35fb3b6a0813d787"}, @@ -2621,6 +2737,7 @@ version = "3.1.5" description = "A Python library to read/write Excel 2010 xlsx/xlsm files" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "openpyxl-3.1.5-py2.py3-none-any.whl", hash = "sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2"}, {file = "openpyxl-3.1.5.tar.gz", hash = "sha256:cf0e3cf56142039133628b5acffe8ef0c12bc902d2aadd3e0fe5878dc08d1050"}, @@ -2635,6 +2752,7 @@ version = "7.7.0" description = "A decorator to automatically detect mismatch when overriding a method." optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"}, {file = "overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a"}, @@ -2646,6 +2764,7 @@ version = "7.1.3" description = "A simple implementation of the OWL2 RL Profile, as well as a basic RDFS inference, on top of RDFLib. Based mechanical forward chaining." optional = false python-versions = "<4.0,>=3.8.1" +groups = ["main"] files = [ {file = "owlrl-7.1.3-py3-none-any.whl", hash = "sha256:371076ed3427b7962bf5675aded0bb2d23bee61595b85582f8dce11f75ee10a8"}, {file = "owlrl-7.1.3.tar.gz", hash = "sha256:c9acf66135821ed7a6c4e002387bdb60a5804c86bf0210310df7d5a5da5d2eb1"}, @@ -2660,6 +2779,7 @@ version = "24.2" description = "Core utilities for Python packages" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, @@ -2671,6 +2791,7 @@ version = "2.2.3" description = "Powerful data structures for data analysis, time series, and statistics" optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"}, {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"}, @@ -2757,6 +2878,7 @@ version = "1.5.1" description = "Utilities for writing pandoc filters in python" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +groups = ["dev"] files = [ {file = "pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc"}, {file = "pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e"}, @@ -2768,6 +2890,7 @@ version = "0.8.4" description = "A Python Parser" optional = false python-versions = ">=3.6" +groups = ["main", "dev"] files = [ {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"}, {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"}, @@ -2783,6 +2906,7 @@ version = "0.12.1" description = "Utility library for gitignore style pattern matching of file paths." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, @@ -2794,6 +2918,8 @@ version = "4.9.0" description = "Pexpect allows easy control of interactive console applications." optional = false python-versions = "*" +groups = ["main", "dev"] +markers = "sys_platform != \"win32\" and sys_platform != \"emscripten\"" files = [ {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, @@ -2808,6 +2934,7 @@ version = "11.1.0" description = "Python Imaging Library (Fork)" optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "pillow-11.1.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:e1abe69aca89514737465752b4bcaf8016de61b3be1397a8fc260ba33321b3a8"}, {file = "pillow-11.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c640e5a06869c75994624551f45e5506e4256562ead981cce820d5ab39ae2192"}, @@ -2887,7 +3014,7 @@ docs = ["furo", "olefile", "sphinx (>=8.1)", "sphinx-copybutton", "sphinx-inline fpx = ["olefile"] mic = ["olefile"] tests = ["check-manifest", "coverage (>=7.4.2)", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout", "trove-classifiers (>=2024.10.12)"] -typing = ["typing-extensions"] +typing = ["typing-extensions ; python_version < \"3.10\""] xmp = ["defusedxml"] [[package]] @@ -2896,6 +3023,7 @@ version = "4.3.6" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, @@ -2912,6 +3040,7 @@ version = "1.5.0" description = "plugin and hook calling mechanisms for python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, @@ -2927,6 +3056,7 @@ version = "2.21.0" description = "A framework for managing and maintaining multi-language pre-commit hooks." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "pre_commit-2.21.0-py2.py3-none-any.whl", hash = "sha256:e2f91727039fc39a92f58a588a25b87f936de6567eed4f0e673e0507edc75bad"}, {file = "pre_commit-2.21.0.tar.gz", hash = "sha256:31ef31af7e474a8d8995027fefdfcf509b5c913ff31f2015b4ec4beb26a6f658"}, @@ -2945,6 +3075,7 @@ version = "3.15.1" description = "A simple Python library for easily displaying tabular data in a visually appealing ASCII table format" optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "prettytable-3.15.1-py3-none-any.whl", hash = "sha256:1bb0da7437e904ec879d2998aded19abc722719aa3d384a7faa44dcbe4aeb2e9"}, {file = "prettytable-3.15.1.tar.gz", hash = "sha256:f0edb38060cb9161b2417939bfd5cd9877da73388fb19d1e8bf7987e8558896e"}, @@ -2962,6 +3093,7 @@ version = "0.21.1" description = "Python client for the Prometheus monitoring system." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "prometheus_client-0.21.1-py3-none-any.whl", hash = "sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301"}, {file = "prometheus_client-0.21.1.tar.gz", hash = "sha256:252505a722ac04b0456be05c05f75f45d760c2911ffc45f2a06bcaed9f3ae3fb"}, @@ -2976,6 +3108,7 @@ version = "3.0.50" description = "Library for building powerful interactive command lines in Python" optional = false python-versions = ">=3.8.0" +groups = ["main", "dev"] files = [ {file = "prompt_toolkit-3.0.50-py3-none-any.whl", hash = "sha256:9b6427eb19e479d98acff65196a307c555eb567989e6d88ebbb1b509d9779198"}, {file = "prompt_toolkit-3.0.50.tar.gz", hash = "sha256:544748f3860a2623ca5cd6d2795e7a14f3d0e1c3c9728359013f79877fc89bab"}, @@ -2990,6 +3123,7 @@ version = "7.0.0" description = "Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7." optional = false python-versions = ">=3.6" +groups = ["main", "dev"] files = [ {file = "psutil-7.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:101d71dc322e3cffd7cea0650b09b3d08b8e7c4109dd6809fe452dfd00e58b25"}, {file = "psutil-7.0.0-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:39db632f6bb862eeccf56660871433e111b6ea58f2caea825571951d4b6aa3da"}, @@ -3013,6 +3147,8 @@ version = "2.9.10" description = "psycopg2 - Python-PostgreSQL Database Adapter" optional = true python-versions = ">=3.8" +groups = ["main"] +markers = "extra == \"all\" or extra == \"postgres\"" files = [ {file = "psycopg2-2.9.10-cp310-cp310-win32.whl", hash = "sha256:5df2b672140f95adb453af93a7d669d7a7bf0a56bcd26f1502329166f4a61716"}, {file = "psycopg2-2.9.10-cp310-cp310-win_amd64.whl", hash = "sha256:c6f7b8561225f9e711a9c47087388a97fdc948211c10a4bccbf0ba68ab7b3b5a"}, @@ -3020,6 +3156,7 @@ files = [ {file = "psycopg2-2.9.10-cp311-cp311-win_amd64.whl", hash = "sha256:0435034157049f6846e95103bd8f5a668788dd913a7c30162ca9503fdf542cb4"}, {file = "psycopg2-2.9.10-cp312-cp312-win32.whl", hash = "sha256:65a63d7ab0e067e2cdb3cf266de39663203d38d6a8ed97f5ca0cb315c73fe067"}, {file = "psycopg2-2.9.10-cp312-cp312-win_amd64.whl", hash = "sha256:4a579d6243da40a7b3182e0430493dbd55950c493d8c68f4eec0b302f6bbf20e"}, + {file = "psycopg2-2.9.10-cp313-cp313-win_amd64.whl", hash = "sha256:91fd603a2155da8d0cfcdbf8ab24a2d54bca72795b90d2a3ed2b6da8d979dee2"}, {file = "psycopg2-2.9.10-cp39-cp39-win32.whl", hash = "sha256:9d5b3b94b79a844a986d029eee38998232451119ad653aea42bb9220a8c5066b"}, {file = "psycopg2-2.9.10-cp39-cp39-win_amd64.whl", hash = "sha256:88138c8dedcbfa96408023ea2b0c369eda40fe5d75002c0964c78f46f11fa442"}, {file = "psycopg2-2.9.10.tar.gz", hash = "sha256:12ec0b40b0273f95296233e8750441339298e6a572f7039da5b260e3c8b60e11"}, @@ -3031,6 +3168,7 @@ version = "2.9.10" description = "psycopg2 - Python-PostgreSQL Database Adapter" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "psycopg2-binary-2.9.10.tar.gz", hash = "sha256:4b3df0e6990aa98acda57d983942eff13d824135fe2250e6522edaa782a06de2"}, {file = "psycopg2_binary-2.9.10-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:0ea8e3d0ae83564f2fc554955d327fa081d065c8ca5cc6d2abb643e2c9c1200f"}, @@ -3079,6 +3217,7 @@ files = [ {file = "psycopg2_binary-2.9.10-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:bb89f0a835bcfc1d42ccd5f41f04870c1b936d8507c6df12b7737febc40f0909"}, {file = "psycopg2_binary-2.9.10-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f0c2d907a1e102526dd2986df638343388b94c33860ff3bbe1384130828714b1"}, {file = "psycopg2_binary-2.9.10-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f8157bed2f51db683f31306aa497311b560f2265998122abe1dce6428bd86567"}, + {file = "psycopg2_binary-2.9.10-cp313-cp313-win_amd64.whl", hash = "sha256:27422aa5f11fbcd9b18da48373eb67081243662f9b46e6fd07c3eb46e4535142"}, {file = "psycopg2_binary-2.9.10-cp38-cp38-macosx_12_0_x86_64.whl", hash = "sha256:eb09aa7f9cecb45027683bb55aebaaf45a0df8bf6de68801a6afdc7947bb09d4"}, {file = "psycopg2_binary-2.9.10-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b73d6d7f0ccdad7bc43e6d34273f70d587ef62f824d7261c4ae9b8b1b6af90e8"}, {file = "psycopg2_binary-2.9.10-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ce5ab4bf46a211a8e924d307c1b1fcda82368586a19d0a24f8ae166f5c784864"}, @@ -3107,10 +3246,12 @@ version = "0.7.0" description = "Run a subprocess in a pseudo terminal" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, ] +markers = {main = "sys_platform != \"win32\" and sys_platform != \"emscripten\"", dev = "sys_platform != \"win32\" and sys_platform != \"emscripten\" or os_name != \"nt\""} [[package]] name = "pure-eval" @@ -3118,6 +3259,7 @@ version = "0.2.3" description = "Safely evaluate AST nodes without side effects" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0"}, {file = "pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42"}, @@ -3132,6 +3274,7 @@ version = "21.10.1" description = "PyYAML-based module to produce pretty and readable YAML-serialized data" optional = false python-versions = "*" +groups = ["main"] files = [ {file = "pyaml-21.10.1-py2.py3-none-any.whl", hash = "sha256:19985ed303c3a985de4cf8fd329b6d0a5a5b5c9035ea240eccc709ebacbaf4a0"}, {file = "pyaml-21.10.1.tar.gz", hash = "sha256:c6519fee13bf06e3bb3f20cacdea8eba9140385a7c2546df5dbae4887f768383"}, @@ -3146,6 +3289,7 @@ version = "0.24.0" description = "A BibTeX-compatible bibliography processor in Python" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*" +groups = ["dev"] files = [ {file = "pybtex-0.24.0-py2.py3-none-any.whl", hash = "sha256:e1e0c8c69998452fea90e9179aa2a98ab103f3eed894405b7264e517cc2fcc0f"}, {file = "pybtex-0.24.0.tar.gz", hash = "sha256:818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755"}, @@ -3165,6 +3309,7 @@ version = "1.0.3" description = "A docutils backend for pybtex." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "pybtex-docutils-1.0.3.tar.gz", hash = "sha256:3a7ebdf92b593e00e8c1c538aa9a20bca5d92d84231124715acc964d51d93c6b"}, {file = "pybtex_docutils-1.0.3-py3-none-any.whl", hash = "sha256:8fd290d2ae48e32fcb54d86b0efb8d573198653c7e2447d5bec5847095f430b9"}, @@ -3180,6 +3325,7 @@ version = "2.12.1" description = "Python style guide checker" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "pycodestyle-2.12.1-py2.py3-none-any.whl", hash = "sha256:46f0fb92069a7c28ab7bb558f05bfc0110dac69a0cd23c61ea0040283a9d78b3"}, {file = "pycodestyle-2.12.1.tar.gz", hash = "sha256:6838eae08bbce4f6accd5d5572075c63626a15ee3e6f842df996bf62f6d73521"}, @@ -3191,6 +3337,7 @@ version = "2.22" description = "C parser in Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, @@ -3202,6 +3349,7 @@ version = "0.15.4" description = "Bootstrap-based Sphinx theme from the PyData community" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "pydata_sphinx_theme-0.15.4-py3-none-any.whl", hash = "sha256:2136ad0e9500d0949f96167e63f3e298620040aea8f9c74621959eda5d4cf8e6"}, {file = "pydata_sphinx_theme-0.15.4.tar.gz", hash = "sha256:7762ec0ac59df3acecf49fd2f889e1b4565dbce8b88b2e29ee06fdd90645a06d"}, @@ -3230,6 +3378,7 @@ version = "3.2.0" description = "passive checker of Python programs" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "pyflakes-3.2.0-py2.py3-none-any.whl", hash = "sha256:84b5be138a2dfbb40689ca07e2152deb896a65c3a3e24c251c5c62489568074a"}, {file = "pyflakes-3.2.0.tar.gz", hash = "sha256:1c61603ff154621fb2a9172037d84dca3500def8c8b630657d1701f026f8af3f"}, @@ -3241,6 +3390,7 @@ version = "1.17.0" description = "Python bindings for libgit2." optional = false python-versions = ">=3.10" +groups = ["main"] files = [ {file = "pygit2-1.17.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cbe1a3354a3eff0f4e842abcff73b24455ba7205ac959f146d7cb8dcd63cfa45"}, {file = "pygit2-1.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:578d78fc97d5c16b1ad44c1e2fda093628c3f29793b42be68b93a46ce7a662a0"}, @@ -3284,6 +3434,7 @@ version = "2.19.1" description = "Pygments is a syntax highlighting package written in Python." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c"}, {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"}, @@ -3298,6 +3449,7 @@ version = "3.2.1" description = "pyparsing module - Classes and methods to define and execute parsing grammars" optional = false python-versions = ">=3.9" +groups = ["main"] files = [ {file = "pyparsing-3.2.1-py3-none-any.whl", hash = "sha256:506ff4f4386c4cec0590ec19e6302d3aedb992fdc02c761e90416f158dacf8e1"}, {file = "pyparsing-3.2.1.tar.gz", hash = "sha256:61980854fd66de3a90028d679a954d5f2623e83144b5afe5ee86f43d762e5f0a"}, @@ -3312,6 +3464,7 @@ version = "0.30.0" description = "Python SHACL Validator" optional = false python-versions = "<4,>=3.9" +groups = ["main"] files = [ {file = "pyshacl-0.30.0-py3-none-any.whl", hash = "sha256:093fa7b203bf5ae5f43490f0367ea71933a8b585e300680fcc442d2d6ac62c08"}, {file = "pyshacl-0.30.0.tar.gz", hash = "sha256:449188b07ca46681097d732e9308d42c211ee903784742f8c3e8a0e36e98f728"}, @@ -3340,6 +3493,7 @@ version = "8.3.5" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820"}, {file = "pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845"}, @@ -3362,6 +3516,7 @@ version = "3.0.0" description = "Pytest plugin for measuring coverage." optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "pytest-cov-3.0.0.tar.gz", hash = "sha256:e7f0f5b1617d2210a2cabc266dfe2f4c75a8d32fb89eafb7ad9d06f6d076d470"}, {file = "pytest_cov-3.0.0-py3-none-any.whl", hash = "sha256:578d5d15ac4a25e5f961c938b85a05b09fdaae9deef3bb6de9a6e766622ca7a6"}, @@ -3380,6 +3535,7 @@ version = "2.9.0.post0" description = "Extensions to the standard Python datetime module" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +groups = ["main", "dev"] files = [ {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, @@ -3394,13 +3550,14 @@ version = "3.2.1" description = "JSON Log Formatter for the Python Logging Package" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "python_json_logger-3.2.1-py3-none-any.whl", hash = "sha256:cdc17047eb5374bd311e748b42f99d71223f3b0e186f4206cc5d52aefe85b090"}, {file = "python_json_logger-3.2.1.tar.gz", hash = "sha256:8eb0554ea17cb75b05d2848bc14fb02fbdbd9d6972120781b974380bfa162008"}, ] [package.extras] -dev = ["backports.zoneinfo", "black", "build", "freezegun", "mdx_truly_sane_lists", "mike", "mkdocs", "mkdocs-awesome-pages-plugin", "mkdocs-gen-files", "mkdocs-literate-nav", "mkdocs-material (>=8.5)", "mkdocstrings[python]", "msgspec", "msgspec-python313-pre", "mypy", "orjson", "pylint", "pytest", "tzdata", "validate-pyproject[all]"] +dev = ["backports.zoneinfo ; python_version < \"3.9\"", "black", "build", "freezegun", "mdx_truly_sane_lists", "mike", "mkdocs", "mkdocs-awesome-pages-plugin", "mkdocs-gen-files", "mkdocs-literate-nav", "mkdocs-material (>=8.5)", "mkdocstrings[python]", "msgspec ; implementation_name != \"pypy\" and python_version < \"3.13\"", "msgspec-python313-pre ; implementation_name != \"pypy\" and python_version == \"3.13\"", "mypy", "orjson ; implementation_name != \"pypy\"", "pylint", "pytest", "tzdata", "validate-pyproject[all]"] [[package]] name = "pytz" @@ -3408,6 +3565,7 @@ version = "2022.7.1" description = "World timezone definitions, modern and historical" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "pytz-2022.7.1-py2.py3-none-any.whl", hash = "sha256:78f4f37d8198e0627c5f1143240bb0206b8691d8d7ac6d78fee88b78733f8c4a"}, {file = "pytz-2022.7.1.tar.gz", hash = "sha256:01a0681c4b9684a28304615eba55d1ab31ae00bf68ec157ec3708a8182dbbcd0"}, @@ -3419,6 +3577,8 @@ version = "308" description = "Python for Window Extensions" optional = false python-versions = "*" +groups = ["main", "dev"] +markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\"" files = [ {file = "pywin32-308-cp310-cp310-win32.whl", hash = "sha256:796ff4426437896550d2981b9c2ac0ffd75238ad9ea2d3bfa67a1abd546d262e"}, {file = "pywin32-308-cp310-cp310-win_amd64.whl", hash = "sha256:4fc888c59b3c0bef905ce7eb7e2106a07712015ea1c8234b703a088d46110e8e"}, @@ -3446,6 +3606,8 @@ version = "2.0.15" description = "Pseudo terminal support for Windows from Python." optional = false python-versions = ">=3.9" +groups = ["dev"] +markers = "os_name == \"nt\"" files = [ {file = "pywinpty-2.0.15-cp310-cp310-win_amd64.whl", hash = "sha256:8e7f5de756a615a38b96cd86fa3cd65f901ce54ce147a3179c45907fa11b4c4e"}, {file = "pywinpty-2.0.15-cp311-cp311-win_amd64.whl", hash = "sha256:9a6bcec2df2707aaa9d08b86071970ee32c5026e10bcc3cc5f6f391d85baf7ca"}, @@ -3462,6 +3624,7 @@ version = "6.0.2" description = "YAML parser and emitter for Python" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, @@ -3524,6 +3687,7 @@ version = "26.2.1" description = "Python bindings for 0MQ" optional = false python-versions = ">=3.7" +groups = ["main", "dev"] files = [ {file = "pyzmq-26.2.1-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:f39d1227e8256d19899d953e6e19ed2ccb689102e6d85e024da5acf410f301eb"}, {file = "pyzmq-26.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a23948554c692df95daed595fdd3b76b420a4939d7a8a28d6d7dea9711878641"}, @@ -3645,6 +3809,7 @@ version = "7.1.3" description = "RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information." optional = false python-versions = "<4.0.0,>=3.8.1" +groups = ["main"] files = [ {file = "rdflib-7.1.3-py3-none-any.whl", hash = "sha256:5402310a9f0f3c07d453d73fd0ad6ba35616286fe95d3670db2b725f3f539673"}, {file = "rdflib-7.1.3.tar.gz", hash = "sha256:f3dcb4c106a8cd9e060d92f43d593d09ebc3d07adc244f4c7315856a12e383ee"}, @@ -3668,6 +3833,7 @@ version = "0.5.4" description = "rdflib extension adding SQLAlchemy as an AbstractSQLStore back-end store" optional = false python-versions = "*" +groups = ["main"] files = [ {file = "rdflib-sqlalchemy-0.5.4.tar.gz", hash = "sha256:3ed94286a29535701d82c4376dd9e10fa429e8e102fa1f58ab1ea73463e419dc"}, {file = "rdflib_sqlalchemy-0.5.4-py3-none-any.whl", hash = "sha256:d937e59d5654aa95406834a9485f1165ed7d00b64cbb158f3388cf5520e6a132"}, @@ -3685,6 +3851,7 @@ version = "0.36.2" description = "JSON Referencing + Python" optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "referencing-0.36.2-py3-none-any.whl", hash = "sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0"}, {file = "referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa"}, @@ -3701,6 +3868,7 @@ version = "2.32.3" description = "Python HTTP for Humans." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, @@ -3722,6 +3890,7 @@ version = "0.1.4" description = "A pure python RFC3339 validator" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["dev"] files = [ {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, @@ -3736,6 +3905,7 @@ version = "0.1.1" description = "Pure python rfc3986 validator" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["dev"] files = [ {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, @@ -3747,6 +3917,7 @@ version = "1.3.8" description = "Parsing and validation of URIs (RFC 3986) and IRIs (RFC 3987)" optional = false python-versions = "*" +groups = ["main"] files = [ {file = "rfc3987-1.3.8-py2.py3-none-any.whl", hash = "sha256:10702b1e51e5658843460b189b185c0366d2cf4cff716f13111b0ea9fd2dce53"}, {file = "rfc3987-1.3.8.tar.gz", hash = "sha256:d3c4d257a560d544e9826b38bc81db676890c79ab9d7ac92b39c7a253d5ca733"}, @@ -3758,6 +3929,7 @@ version = "5.7.1" description = "Reveal.js - Jupyter/IPython Slideshow Extension" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4" +groups = ["dev"] files = [ {file = "rise-5.7.1-py2.py3-none-any.whl", hash = "sha256:df8ce9f0e575d334b27ff40a1f91a4c78d9f7b4995858bb81185ceeaf98eae3a"}, {file = "rise-5.7.1.tar.gz", hash = "sha256:641db777cb907bf5e6dc053098d7fd213813fa9a946542e52b900eb7095289a6"}, @@ -3772,6 +3944,7 @@ version = "0.23.1" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "rpds_py-0.23.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2a54027554ce9b129fc3d633c92fa33b30de9f08bc61b32c053dc9b537266fed"}, {file = "rpds_py-0.23.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b5ef909a37e9738d146519657a1aab4584018746a18f71c692f2f22168ece40c"}, @@ -3884,15 +4057,16 @@ version = "1.8.3" description = "Send file to trash natively under Mac OS X, Windows and Linux" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +groups = ["dev"] files = [ {file = "Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9"}, {file = "Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf"}, ] [package.extras] -nativelib = ["pyobjc-framework-Cocoa", "pywin32"] -objc = ["pyobjc-framework-Cocoa"] -win32 = ["pywin32"] +nativelib = ["pyobjc-framework-Cocoa ; sys_platform == \"darwin\"", "pywin32 ; sys_platform == \"win32\""] +objc = ["pyobjc-framework-Cocoa ; sys_platform == \"darwin\""] +win32 = ["pywin32 ; sys_platform == \"win32\""] [[package]] name = "setuptools" @@ -3900,15 +4074,16 @@ version = "73.0.1" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "setuptools-73.0.1-py3-none-any.whl", hash = "sha256:b208925fcb9f7af924ed2dc04708ea89791e24bde0d3020b27df0e116088b34e"}, {file = "setuptools-73.0.1.tar.gz", hash = "sha256:d59a3e788ab7e012ab2c4baed1b376da6366883ee20d7a5fc426816e3d7b1193"}, ] [package.extras] -core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.text (>=3.7)", "more-itertools (>=8.8)", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] +core = ["importlib-metadata (>=6) ; python_version < \"3.10\"", "importlib-resources (>=5.10.2) ; python_version < \"3.9\"", "jaraco.text (>=3.7)", "more-itertools (>=8.8)", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1) ; python_version < \"3.11\"", "wheel (>=0.43.0)"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] -test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "mypy (==1.11.*)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (<0.4)", "pytest-ruff (>=0.2.1)", "pytest-ruff (>=0.3.2)", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21) ; python_version >= \"3.9\" and sys_platform != \"cygwin\"", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "mypy (==1.11.*)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf ; sys_platform != \"cygwin\"", "pytest-ruff (<0.4) ; platform_system == \"Windows\"", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\"", "pytest-ruff (>=0.3.2) ; sys_platform != \"cygwin\"", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] [[package]] name = "six" @@ -3916,6 +4091,7 @@ version = "1.17.0" description = "Python 2 and 3 compatibility utilities" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +groups = ["main", "dev"] files = [ {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, @@ -3927,6 +4103,7 @@ version = "1.3.1" description = "Sniff out which async library your code is running under" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, @@ -3938,6 +4115,7 @@ version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, @@ -3949,6 +4127,7 @@ version = "2.6" description = "A modern CSS selector implementation for Beautiful Soup." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "soupsieve-2.6-py3-none-any.whl", hash = "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9"}, {file = "soupsieve-2.6.tar.gz", hash = "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb"}, @@ -3960,6 +4139,7 @@ version = "5.0.2" description = "Python documentation generator" optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "Sphinx-5.0.2-py3-none-any.whl", hash = "sha256:d3e57663eed1d7c5c50895d191fdeda0b54ded6f44d5621b50709466c338d1e8"}, {file = "Sphinx-5.0.2.tar.gz", hash = "sha256:b18e978ea7565720f26019c702cd85c84376e948370f1cd43d60265010e1c7b0"}, @@ -3986,7 +4166,7 @@ sphinxcontrib-serializinghtml = ">=1.1.5" [package.extras] docs = ["sphinxcontrib-websupport"] lint = ["docutils-stubs", "flake8 (>=3.5.0)", "isort", "mypy (>=0.950)", "types-requests", "types-typed-ast"] -test = ["cython", "html5lib", "pytest (>=4.6)", "typed-ast"] +test = ["cython", "html5lib", "pytest (>=4.6)", "typed-ast ; python_version < \"3.8\""] [[package]] name = "sphinx-book-theme" @@ -3994,6 +4174,7 @@ version = "1.0.1" description = "A clean book theme for scientific explanations and documentation with Sphinx" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "sphinx_book_theme-1.0.1-py3-none-any.whl", hash = "sha256:d15f8248b3718a9a6be0ba617a32d1591f9fa39c614469bface777ba06a73b75"}, {file = "sphinx_book_theme-1.0.1.tar.gz", hash = "sha256:927b399a6906be067e49c11ef1a87472f1b1964075c9eea30fb82c64b20aedee"}, @@ -4014,6 +4195,7 @@ version = "0.0.3" description = "Add comments and annotation to your documentation." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "sphinx-comments-0.0.3.tar.gz", hash = "sha256:00170afff27019fad08e421da1ae49c681831fb2759786f07c826e89ac94cf21"}, {file = "sphinx_comments-0.0.3-py3-none-any.whl", hash = "sha256:1e879b4e9bfa641467f83e3441ac4629225fc57c29995177d043252530c21d00"}, @@ -4033,6 +4215,7 @@ version = "0.5.2" description = "Add a copy button to each of your code cells." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "sphinx-copybutton-0.5.2.tar.gz", hash = "sha256:4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd"}, {file = "sphinx_copybutton-0.5.2-py3-none-any.whl", hash = "sha256:fb543fd386d917746c9a2c50360c7905b605726b9355cd26e9974857afeae06e"}, @@ -4051,6 +4234,7 @@ version = "0.3.0" description = "A sphinx extension for designing beautiful, view size responsive web components." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "sphinx_design-0.3.0-py3-none-any.whl", hash = "sha256:823c1dd74f31efb3285ec2f1254caefed29d762a40cd676f58413a1e4ed5cc96"}, {file = "sphinx_design-0.3.0.tar.gz", hash = "sha256:7183fa1fae55b37ef01bda5125a21ee841f5bbcbf59a35382be598180c4cefba"}, @@ -4074,6 +4258,7 @@ version = "0.3.1" description = "A sphinx extension that allows the site-map to be defined in a single YAML file." optional = false python-versions = "~=3.7" +groups = ["dev"] files = [ {file = "sphinx_external_toc-0.3.1-py3-none-any.whl", hash = "sha256:cd93c1e7599327b2a728db12d9819068ce719c4b037ffc62e47f20ffb6310fb3"}, {file = "sphinx_external_toc-0.3.1.tar.gz", hash = "sha256:9c8ea9980ea0e57bf3ce98f6a400f9b69eb1df808f7dd796c9c8cc1873d8b355"}, @@ -4095,6 +4280,7 @@ version = "0.5.2" description = "Latex specific features for jupyter book" optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "sphinx_jupyterbook_latex-0.5.2-py3-none-any.whl", hash = "sha256:24de689689ddc27c736b15b91c6b9afdcdc31570938572693bb05bfff8f50758"}, {file = "sphinx_jupyterbook_latex-0.5.2.tar.gz", hash = "sha256:da1d3ad028f55ddbf10b9130bb9f24fc60cafb671cbd39dfd95537aafc90972e"}, @@ -4115,6 +4301,7 @@ version = "0.1.3" description = "Supporting continuous HTML section numbering" optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "sphinx-multitoc-numbering-0.1.3.tar.gz", hash = "sha256:c9607671ac511236fa5d61a7491c1031e700e8d498c9d2418e6c61d1251209ae"}, {file = "sphinx_multitoc_numbering-0.1.3-py3-none-any.whl", hash = "sha256:33d2e707a9b2b8ad636b3d4302e658a008025106fe0474046c651144c26d8514"}, @@ -4134,6 +4321,7 @@ version = "0.2.1" description = "Integrate interactive code blocks into your documentation with Thebe and Binder." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "sphinx-thebe-0.2.1.tar.gz", hash = "sha256:f4c8c1542054f991b73fcb28c4cf21697e42aba2f83f22348c1c851b82766583"}, {file = "sphinx_thebe-0.2.1-py3-none-any.whl", hash = "sha256:e8af555c90acba3541fa7108ea5981ae9c4bd406b54d9a242ab054d326ab7441"}, @@ -4152,6 +4340,7 @@ version = "0.3.2" description = "Toggle page content and collapse admonitions in Sphinx." optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "sphinx-togglebutton-0.3.2.tar.gz", hash = "sha256:ab0c8b366427b01e4c89802d5d078472c427fa6e9d12d521c34fa0442559dc7a"}, {file = "sphinx_togglebutton-0.3.2-py3-none-any.whl", hash = "sha256:9647ba7874b7d1e2d43413d8497153a85edc6ac95a3fea9a75ef9c1e08aaae2b"}, @@ -4172,6 +4361,7 @@ version = "2.0.0" description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "sphinxcontrib_applehelp-2.0.0-py3-none-any.whl", hash = "sha256:4cd3f0ec4ac5dd9c17ec65e9ab272c9b867ea77425228e68ecf08d6b28ddbdb5"}, {file = "sphinxcontrib_applehelp-2.0.0.tar.gz", hash = "sha256:2f29ef331735ce958efa4734873f084941970894c6090408b079c61b2e1c06d1"}, @@ -4188,6 +4378,7 @@ version = "2.5.0" description = "Sphinx extension for BibTeX style citations." optional = false python-versions = ">=3.6" +groups = ["dev"] files = [ {file = "sphinxcontrib-bibtex-2.5.0.tar.gz", hash = "sha256:71b42e5db0e2e284f243875326bf9936aa9a763282277d75048826fef5b00eaa"}, {file = "sphinxcontrib_bibtex-2.5.0-py3-none-any.whl", hash = "sha256:748f726eaca6efff7731012103417ef130ecdcc09501b4d0c54283bf5f059f76"}, @@ -4205,6 +4396,7 @@ version = "2.0.0" description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "sphinxcontrib_devhelp-2.0.0-py3-none-any.whl", hash = "sha256:aefb8b83854e4b0998877524d1029fd3e6879210422ee3780459e28a1f03a8a2"}, {file = "sphinxcontrib_devhelp-2.0.0.tar.gz", hash = "sha256:411f5d96d445d1d73bb5d52133377b4248ec79db5c793ce7dbe59e074b4dd1ad"}, @@ -4221,6 +4413,7 @@ version = "2.1.0" description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl", hash = "sha256:166759820b47002d22914d64a075ce08f4c46818e17cfc9470a9786b759b19f8"}, {file = "sphinxcontrib_htmlhelp-2.1.0.tar.gz", hash = "sha256:c9e2916ace8aad64cc13a0d233ee22317f2b9025b9cf3295249fa985cc7082e9"}, @@ -4237,6 +4430,7 @@ version = "1.0.1" description = "A sphinx extension which renders display math in HTML via JavaScript" optional = false python-versions = ">=3.5" +groups = ["dev"] files = [ {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, @@ -4251,6 +4445,7 @@ version = "2.0.0" description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "sphinxcontrib_qthelp-2.0.0-py3-none-any.whl", hash = "sha256:b18a828cdba941ccd6ee8445dbe72ffa3ef8cbe7505d8cd1fa0d42d3f2d5f3eb"}, {file = "sphinxcontrib_qthelp-2.0.0.tar.gz", hash = "sha256:4fe7d0ac8fc171045be623aba3e2a8f613f8682731f9153bb2e40ece16b9bbab"}, @@ -4267,6 +4462,7 @@ version = "2.0.0" description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)" optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl", hash = "sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331"}, {file = "sphinxcontrib_serializinghtml-2.0.0.tar.gz", hash = "sha256:e9d912827f872c029017a53f0ef2180b327c3f7fd23c87229f7a8e8b70031d4d"}, @@ -4283,6 +4479,7 @@ version = "1.4.54" description = "Database Abstraction Library" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +groups = ["main", "dev"] files = [ {file = "SQLAlchemy-1.4.54-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:af00236fe21c4d4f4c227b6ccc19b44c594160cc3ff28d104cdce85855369277"}, {file = "SQLAlchemy-1.4.54-cp310-cp310-manylinux1_x86_64.manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_5_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1183599e25fa38a1a322294b949da02b4f0da13dbc2688ef9dbe746df573f8a6"}, @@ -4336,25 +4533,25 @@ mypy = {version = ">=0.910", optional = true, markers = "python_version >= \"3\" sqlalchemy2-stubs = {version = "*", optional = true, markers = "extra == \"mypy\""} [package.extras] -aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] -aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] -asyncio = ["greenlet (!=0.4.17)"] -asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] -mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)", "mariadb (>=1.0.1,!=1.1.2)"] +aiomysql = ["aiomysql (>=0.2.0) ; python_version >= \"3\"", "greenlet (!=0.4.17) ; python_version >= \"3\""] +aiosqlite = ["aiosqlite ; python_version >= \"3\"", "greenlet (!=0.4.17) ; python_version >= \"3\"", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17) ; python_version >= \"3\""] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4) ; python_version >= \"3\"", "greenlet (!=0.4.17) ; python_version >= \"3\""] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2) ; python_version >= \"3\"", "mariadb (>=1.0.1,!=1.1.2) ; python_version >= \"3\""] mssql = ["pyodbc"] mssql-pymssql = ["pymssql", "pymssql"] mssql-pyodbc = ["pyodbc", "pyodbc"] -mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] -mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] +mypy = ["mypy (>=0.910) ; python_version >= \"3\"", "sqlalchemy2-stubs"] +mysql = ["mysqlclient (>=1.4.0) ; python_version >= \"3\"", "mysqlclient (>=1.4.0,<2) ; python_version < \"3\""] mysql-connector = ["mysql-connector-python", "mysql-connector-python"] -oracle = ["cx_oracle (>=7)", "cx_oracle (>=7,<8)"] +oracle = ["cx_oracle (>=7) ; python_version >= \"3\"", "cx_oracle (>=7,<8) ; python_version < \"3\""] postgresql = ["psycopg2 (>=2.7)"] -postgresql-asyncpg = ["asyncpg", "asyncpg", "greenlet (!=0.4.17)", "greenlet (!=0.4.17)"] -postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)", "pg8000 (>=1.16.6,!=1.29.0)"] +postgresql-asyncpg = ["asyncpg ; python_version >= \"3\"", "asyncpg ; python_version >= \"3\"", "greenlet (!=0.4.17) ; python_version >= \"3\"", "greenlet (!=0.4.17) ; python_version >= \"3\""] +postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0) ; python_version >= \"3\"", "pg8000 (>=1.16.6,!=1.29.0) ; python_version >= \"3\""] postgresql-psycopg2binary = ["psycopg2-binary"] postgresql-psycopg2cffi = ["psycopg2cffi"] -pymysql = ["pymysql", "pymysql (<1)"] -sqlcipher = ["sqlcipher3_binary"] +pymysql = ["pymysql (<1) ; python_version < \"3\"", "pymysql ; python_version >= \"3\""] +sqlcipher = ["sqlcipher3_binary ; python_version >= \"3\""] [[package]] name = "sqlalchemy2-stubs" @@ -4362,6 +4559,7 @@ version = "0.0.2a38" description = "Typing Stubs for SQLAlchemy 1.4" optional = false python-versions = ">=3.6" +groups = ["main", "dev"] files = [ {file = "sqlalchemy2-stubs-0.0.2a38.tar.gz", hash = "sha256:861d722abeb12f13eacd775a9f09379b11a5a9076f469ccd4099961b95800f9e"}, {file = "sqlalchemy2_stubs-0.0.2a38-py3-none-any.whl", hash = "sha256:b62aa46943807287550e2033dafe07564b33b6a815fbaa3c144e396f9cc53bcb"}, @@ -4376,6 +4574,7 @@ version = "0.6.3" description = "Extract data from python stack frames and tracebacks for informative displays" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, @@ -4395,6 +4594,7 @@ version = "0.9.0" description = "Pretty-print tabular data" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "tabulate-0.9.0-py3-none-any.whl", hash = "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f"}, {file = "tabulate-0.9.0.tar.gz", hash = "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c"}, @@ -4409,6 +4609,7 @@ version = "0.18.1" description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0"}, {file = "terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e"}, @@ -4430,6 +4631,7 @@ version = "1.4.0" description = "A tiny CSS parser" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289"}, {file = "tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7"}, @@ -4448,6 +4650,8 @@ version = "2.2.1" description = "A lil' TOML parser" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] +markers = "python_version < \"3.11\"" files = [ {file = "tomli-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678e4fa69e4575eb77d103de3df8a895e1591b48e740211bd1067378c69e8249"}, {file = "tomli-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:023aa114dd824ade0100497eb2318602af309e5a55595f76b626d6d9f3b7b0a6"}, @@ -4489,6 +4693,7 @@ version = "0.13.2" description = "Style preserving TOML library" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "tomlkit-0.13.2-py3-none-any.whl", hash = "sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde"}, {file = "tomlkit-0.13.2.tar.gz", hash = "sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79"}, @@ -4500,6 +4705,7 @@ version = "6.4.2" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e828cce1123e9e44ae2a50a9de3055497ab1d0aeb440c5ac23064d9e44880da1"}, {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:072ce12ada169c5b00b7d92a99ba089447ccc993ea2143c9ede887e0937aa803"}, @@ -4520,6 +4726,7 @@ version = "5.14.3" description = "Traitlets Python configuration system" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f"}, {file = "traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7"}, @@ -4535,6 +4742,7 @@ version = "4.23.0.20241208" description = "Typing stubs for jsonschema" optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "types_jsonschema-4.23.0.20241208-py3-none-any.whl", hash = "sha256:87934bd9231c99d8eff94cacfc06ba668f7973577a9bd9e1f9de957c5737313e"}, {file = "types_jsonschema-4.23.0.20241208.tar.gz", hash = "sha256:e8b15ad01f290ecf6aea53f93fbdf7d4730e4600313e89e8a7f95622f7e87b7c"}, @@ -4549,6 +4757,7 @@ version = "2.9.0.20241206" description = "Typing stubs for python-dateutil" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "types_python_dateutil-2.9.0.20241206-py3-none-any.whl", hash = "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53"}, {file = "types_python_dateutil-2.9.0.20241206.tar.gz", hash = "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb"}, @@ -4560,6 +4769,7 @@ version = "6.0.12.20241230" description = "Typing stubs for PyYAML" optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "types_PyYAML-6.0.12.20241230-py3-none-any.whl", hash = "sha256:fa4d32565219b68e6dee5f67534c722e53c00d1cfc09c435ef04d7353e1e96e6"}, {file = "types_pyyaml-6.0.12.20241230.tar.gz", hash = "sha256:7f07622dbd34bb9c8b264fe860a17e0efcad00d50b5f27e93984909d9363498c"}, @@ -4571,6 +4781,7 @@ version = "4.12.2" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" +groups = ["main", "dev"] files = [ {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, @@ -4582,6 +4793,7 @@ version = "2025.1" description = "Provider of IANA time zone data" optional = false python-versions = ">=2" +groups = ["main"] files = [ {file = "tzdata-2025.1-py2.py3-none-any.whl", hash = "sha256:7e127113816800496f027041c570f50bcd464a020098a3b6b199517772303639"}, {file = "tzdata-2025.1.tar.gz", hash = "sha256:24894909e88cdb28bd1636c6887801df64cb485bd593f2fd83ef29075a81d694"}, @@ -4593,6 +4805,7 @@ version = "1.0.3" description = "Micro subset of unicode data files for linkify-it-py projects." optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "uc-micro-py-1.0.3.tar.gz", hash = "sha256:d321b92cff673ec58027c04015fcaa8bb1e005478643ff4a500882eaab88c48a"}, {file = "uc_micro_py-1.0.3-py3-none-any.whl", hash = "sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5"}, @@ -4607,6 +4820,7 @@ version = "1.3.0" description = "RFC 6570 URI Template Processor" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, @@ -4621,13 +4835,14 @@ version = "2.3.0" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "urllib3-2.3.0-py3-none-any.whl", hash = "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df"}, {file = "urllib3-2.3.0.tar.gz", hash = "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +brotli = ["brotli (>=1.0.9) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\""] h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] @@ -4638,6 +4853,7 @@ version = "20.29.2" description = "Virtual Python Environment builder" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "virtualenv-20.29.2-py3-none-any.whl", hash = "sha256:febddfc3d1ea571bdb1dc0f98d7b45d24def7428214d4fb73cc486c9568cce6a"}, {file = "virtualenv-20.29.2.tar.gz", hash = "sha256:fdaabebf6d03b5ba83ae0a02cfe96f48a716f4fae556461d180825866f75b728"}, @@ -4650,7 +4866,7 @@ platformdirs = ">=3.9.1,<5" [package.extras] docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2,!=7.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] -test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] +test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8) ; platform_python_implementation == \"PyPy\" or platform_python_implementation == \"CPython\" and sys_platform == \"win32\" and python_version >= \"3.13\"", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10) ; platform_python_implementation == \"CPython\""] [[package]] name = "wcwidth" @@ -4658,6 +4874,7 @@ version = "0.2.13" description = "Measures the displayed width of unicode strings in a terminal" optional = false python-versions = "*" +groups = ["main", "dev"] files = [ {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, @@ -4669,6 +4886,7 @@ version = "24.11.1" description = "A library for working with the color formats defined by HTML and CSS." optional = false python-versions = ">=3.9" +groups = ["dev"] files = [ {file = "webcolors-24.11.1-py3-none-any.whl", hash = "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9"}, {file = "webcolors-24.11.1.tar.gz", hash = "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6"}, @@ -4680,6 +4898,7 @@ version = "0.5.1" description = "Character encoding aliases for legacy web content" optional = false python-versions = "*" +groups = ["dev"] files = [ {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, @@ -4691,6 +4910,7 @@ version = "1.8.0" description = "WebSocket client for Python with low level API options" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526"}, {file = "websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da"}, @@ -4707,6 +4927,7 @@ version = "2.3.8" description = "The comprehensive WSGI web application library." optional = false python-versions = ">=3.8" +groups = ["main"] files = [ {file = "werkzeug-2.3.8-py3-none-any.whl", hash = "sha256:bba1f19f8ec89d4d607a3bd62f1904bd2e609472d93cd85e9d4e178f472c3748"}, {file = "werkzeug-2.3.8.tar.gz", hash = "sha256:554b257c74bbeb7a0d254160a4f8ffe185243f52a52035060b761ca62d977f03"}, @@ -4724,6 +4945,7 @@ version = "0.45.1" description = "A built-package format for Python" optional = false python-versions = ">=3.8" +groups = ["dev"] files = [ {file = "wheel-0.45.1-py3-none-any.whl", hash = "sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248"}, {file = "wheel-0.45.1.tar.gz", hash = "sha256:661e1abd9198507b1409a20c02106d9670b2576e916d58f520316666abca6729"}, @@ -4738,6 +4960,7 @@ version = "4.0.13" description = "Jupyter interactive widgets for Jupyter Notebook" optional = false python-versions = ">=3.7" +groups = ["dev"] files = [ {file = "widgetsnbextension-4.0.13-py3-none-any.whl", hash = "sha256:74b2692e8500525cc38c2b877236ba51d34541e6385eeed5aec15a70f88a6c71"}, {file = "widgetsnbextension-4.0.13.tar.gz", hash = "sha256:ffcb67bc9febd10234a362795f643927f4e0c05d9342c727b65d2384f8feacb6"}, @@ -4749,17 +4972,19 @@ version = "3.21.0" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.9" +groups = ["main", "dev"] files = [ {file = "zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931"}, {file = "zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4"}, ] +markers = {main = "python_version <= \"3.11\""} [package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] enabler = ["pytest-enabler (>=2.2)"] -test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] +test = ["big-O", "importlib-resources ; python_version < \"3.9\"", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] type = ["pytest-mypy"] [extras] @@ -4771,6 +4996,6 @@ topquadrant = ["brick-tq-shacl"] xlsx-ingress = [] [metadata] -lock-version = "2.0" +lock-version = "2.1" python-versions = ">=3.10, <3.13" -content-hash = "bd5c7c86aa5ac16fa28780e96e7929ff2f9457a5f61ae832c26b57b400820e9e" +content-hash = "4f60b530cf8f4b62a188b11d2618528458bb804a2f2fb9ae2eaa78ffa157cbfe" diff --git a/pyproject.toml b/pyproject.toml index 2b62b181d..3c5ff1c62 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,6 +41,7 @@ werkzeug="^2.3.7" types-jsonschema = "^4.21.0.20240311" matplotlib = "^3.9.2" pandas = "^2.2.3" +jinja2 = "^3.1.6" [tool.poetry.group.dev.dependencies] black = "^22.3.0" diff --git a/tests/unit/fixtures/inline-dep-test/library.yml b/tests/unit/fixtures/inline-dep-test/library.yml new file mode 100644 index 000000000..f9b9276dd --- /dev/null +++ b/tests/unit/fixtures/inline-dep-test/library.yml @@ -0,0 +1,4 @@ +name: inline-dep-test +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/ipynb_checkpoint_test/library.yml b/tests/unit/fixtures/ipynb_checkpoint_test/library.yml new file mode 100644 index 000000000..1d8ef8f98 --- /dev/null +++ b/tests/unit/fixtures/ipynb_checkpoint_test/library.yml @@ -0,0 +1,4 @@ +name: ipynb_checkpoint_test +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/libary-shape-test/shape.ttl b/tests/unit/fixtures/libary-shape-test/shape.ttl deleted file mode 100644 index 48a7fbcad..000000000 --- a/tests/unit/fixtures/libary-shape-test/shape.ttl +++ /dev/null @@ -1,29 +0,0 @@ -@prefix brick: . -@prefix owl: . -@prefix rdf: . -@prefix rdfs: . -@prefix sh: . -@prefix : . - -: a owl:Ontology . - -:vav_shape a owl:Class, sh:NodeShape ; - sh:targetClass brick:VAV ; - sh:property [ - sh:path brick:hasPoint ; - sh:qualifiedValueShape [ sh:class brick:Air_Flow_Sensor ] ; - sh:qualifiedMinCount 1 ; - sh:minCount 1; - ] ; -. - -:tu_shape a owl:Class, sh:NodeShape ; - sh:targetClass brick:Terminal_Unit ; - sh:property [ - sh:path brick:hasPoint ; - sh:qualifiedValueShape [ sh:class brick:Temperature_Sensor ] ; - sh:qualifiedMinCount 1 ; - sh:minCount 1; - ] ; -. - diff --git a/tests/unit/fixtures/library-shape-test/library.yml b/tests/unit/fixtures/library-shape-test/library.yml new file mode 100644 index 000000000..b032f1e89 --- /dev/null +++ b/tests/unit/fixtures/library-shape-test/library.yml @@ -0,0 +1,4 @@ +name: library-shape-test +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/matching/library.yml b/tests/unit/fixtures/matching/library.yml new file mode 100644 index 000000000..ef080494e --- /dev/null +++ b/tests/unit/fixtures/matching/library.yml @@ -0,0 +1,4 @@ +name: matching +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/optional-inline/library.yml b/tests/unit/fixtures/optional-inline/library.yml new file mode 100644 index 000000000..c831db179 --- /dev/null +++ b/tests/unit/fixtures/optional-inline/library.yml @@ -0,0 +1,4 @@ +name: optional-inline +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/overwrite-test/1/A/library.yml b/tests/unit/fixtures/overwrite-test/1/A/library.yml new file mode 100644 index 000000000..20ee0d552 --- /dev/null +++ b/tests/unit/fixtures/overwrite-test/1/A/library.yml @@ -0,0 +1,4 @@ +name: A +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/overwrite-test/2/A/library.yml b/tests/unit/fixtures/overwrite-test/2/A/library.yml new file mode 100644 index 000000000..20ee0d552 --- /dev/null +++ b/tests/unit/fixtures/overwrite-test/2/A/library.yml @@ -0,0 +1,4 @@ +name: A +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/sample-lib-1/library.yml b/tests/unit/fixtures/sample-lib-1/library.yml new file mode 100644 index 000000000..53cfaa04a --- /dev/null +++ b/tests/unit/fixtures/sample-lib-1/library.yml @@ -0,0 +1,4 @@ +name: sample-lib-1 +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/shape-deps/library.yml b/tests/unit/fixtures/shape-deps/library.yml new file mode 100644 index 000000000..e65acd80b --- /dev/null +++ b/tests/unit/fixtures/shape-deps/library.yml @@ -0,0 +1,4 @@ +name: shape-deps +version: '0.1.0' +description: | + \ No newline at end of file diff --git a/tests/unit/fixtures/templates/library.yml b/tests/unit/fixtures/templates/library.yml new file mode 100644 index 000000000..9d0e47fec --- /dev/null +++ b/tests/unit/fixtures/templates/library.yml @@ -0,0 +1,4 @@ +name: templates +version: '0.1.0' +description: | + \ No newline at end of file