CFIHOS Handler Plugin
Overview
The CFIHOS Handler is a flexible framework that supports multiple processor implementations for handling CFIHOS industrial standard data. This plugin integrates with Cognite NEAT to process and transform CFIHOS data models.
Installation
Install the package from PyPI using pip:
pip install cognite-neat-cfihos-handler
Architecture
The CFIHOS Handler plugin supports multiple processor implementations. Each processor_type maintains a specific CFIHOS data model in Cognite Data Fusion (CDF), allowing you to choose the processing approach that best fits your use case.
Available Processors
Sparse Properties Processor
The sparse_properties_processor is the currently available processor. It is based on two processing concepts:
- Containers: Processes the complete CFIHOS model into denormalized container structures.
- Views: Processes scoped subsets of the CFIHOS model into CFIHOS view structures based on configured scopes that fit different use cases.
Users select which concept to process by passing the model_type parameter:
model_type="containers"- for container-based processingmodel_type="views"- for view-based processing (requires ascopeparameter)
Configuration
The processor type is specified in the configuration file using the processor_type field:
processor_type: sparse # or other available processor types
The framework will automatically load the corresponding processor based on this configuration.
Example configuration file (config.yaml):
processor_type: sparse
data_model_name: "Your CFIHOS Model"
data_model_external_id: "YOUR_CFIHOS_MODEL_1"
data_model_description: "Generated NEAT Domain Model based on CFIHOS"
container_data_model_space: "sp_your_cfihos_containers"
views_data_model_space: "sp_your_cfihos_views"
model_version: "1"
model_creator: "Your Name"
dms_identifire: "cfihos_name" # or "cfihos_code"
model_processors_config:
# ... processor-specific configuration
Usage Examples
Processing Containers
from cognite.neat import NeatSession, get_cognite_client
client = get_cognite_client(".env")
neat = NeatSession(client)
# Read and process the CFIHOS containers model
neat.plugins.data_model.read(
"cfihos",
model_type="containers",
configurationDir="configuration/config.yaml"
)
# Deploy to CDF
neat.to.cdf.data_model()
Processing Views
from cognite.neat import NeatSession, get_cognite_client
client = get_cognite_client(".env")
neat_views = NeatSession(client)
# Read and process the CFIHOS views model
# NOTE: Always deploy containers before deploying views
neat_views.plugins.data_model.read(
"cfihos",
model_type="views",
scope="Example Centrifugal Pump", # Required for views
configurationDir="configuration/config.yaml",
)
# Deploy to CDF
neat_views.to.cdf.data_model()
Requirements
- Python >= 3.10
- cognite-neat >= 0.123.33
License
Apache-2.0
Metadata
Release files for cognite-neat-cfihos-handler 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cognite_neat_cfihos_handler-0.2.2.tar.gz | 58.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cognite_neat_cfihos_handler-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 114.8 kB
Release files / cognite_neat_cfihos_handler-0.2.2.tar.gz
| Download URL | cognite_neat_cfihos_handler-0.2.2.tar.gz |
|---|---|
| Size | 58.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
10cec520c66ce7c3f712122a9a0745088aa20d67ae80dd03e3a189b8df931074
|
|
BLAKE2b-256 checksum How to use checksums |
35b5512239e2f72dbc9d72394235d15072b1598fc8a0898c817f5ba6100c00d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.8
|
Release files / cognite_neat_cfihos_handler-0.2.2-py3-none-any.whl
| Download URL | cognite_neat_cfihos_handler-0.2.2-py3-none-any.whl |
|---|---|
| Size | 56.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5e51fccdd3fa936f207f76af070611a1f01007074812b94241be66b245be741e
|
|
BLAKE2b-256 checksum How to use checksums |
d84a1636f6b34837d689b1845d64333824d1755d67a7564a8c8c3eb5c630ebef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.8
|