Build With EMDS
Extend EMDS with custom connectors, automate workflows, and integrate decision logic into your own applications using Python, C#, R, and more.
Connect Any Data Source
EMDS connectors bridge your data sources to the analytical suite. A connector translates raw spatial or tabular data into inputs that NetWeaver, CDP, BayesFusion, and VisiRule can consume.
from emds import Connector, DataLayer
class MyForestConnector(Connector):
name = "Forest Condition Layer"
def compute(self, context) -> DataLayer:
# Load your spatial data
gdf = context.load_vector("forest_stands.shp")
# Transform to EMDS scale [0, 1]
gdf["condition"] = normalize(
gdf["basal_area"], method="zscore"
)
return DataLayer.from_geodataframe(gdf, "condition")using EmdsFramework.Connectors;
using EmdsFramework.Layers;
public class ForestConnector : IEmdsConnector
{
public string Name => "Forest Condition";
public DataLayer Compute(EmdsContext ctx)
{
var fc = ctx.OpenFeatureClass("ForestStands");
var values = fc.Select("BasalArea")
.Normalize(NormMethod.ZScore);
return new DataLayer("condition", values);
}
}Wexflow Integration
Complex EMDS processing pipelines can be orchestrated using Wexflow, an open-source workflow engine. Define multi-step processing graphs that chain connectors, analytical engines, and output tasks.
Wexflow integration enables:
- Scheduled and event-driven analysis runs
- Multi-step connector chains with conditional branching
- Error handling and retry logic
- Integration with external data pipelines
- Audit trails for regulatory compliance
Wexflow Quick Setup
Add EMDS tasks to a Wexflow XML workflow definition:
<Workflow id="1" name="Forest Assessment">
<Tasks>
<Task id="1" name="LoadData"
description="Load forest inventory">
<Setting name="connector"
value="ForestConnector" />
</Task>
<Task id="2" name="RunNetWeaver"
description="Run logic network">
<Setting name="model"
value="ConditionAssessment.nwm" />
</Task>
</Tasks>
</Workflow>Write in the Language You Know
Python
Full connector SDK. Supported on ArcGIS Pro and QGIS. Primary connector language for QGIS.
Full SupportC#
Native connector development for ArcGIS Pro. Deepest integration and highest performance.
ArcGIS ProR
Statistical computing connectors for research-grade ecological modeling and analysis.
Connector SupportJavaScript
Web connector framework for EMDS Online integrations and custom browser-based tools.
Online OnlyReady to build?
Download EMDS, explore the documentation, or get in touch with the team for developer support.