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