Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

One linerDynamic external data integration through runtime-managed discovery and extensibility services.

Platform → TechnologySupportingTag Provider TagProvider Services | Concept | Reference


Beyond Traditional Tag Management

UNS Services extend the Unified Namespace beyond traditional tag management, enabling dynamic discovery, external storage integration, and third-party module embedding. These services represent a fundamental shift from static configuration to dynamic, runtime-managed connectivity.

Three Service Types:

  • Tag Discovery Service - Dynamic external tag integration
  • Historian Storage Service - Flexible storage locations
  • Module Extension Service - Third-party module embedding

Each service extends FrameworX capabilities while maintaining the unified architecture and consistent user experience.

Table of Contents
maxLevel2
minLevel2
indent10px
excludeSteps
stylenone


Each service extends FrameworX capabilities while maintaining the unified architecture and consistent user experience.Image Added


Service Types

OverviewImage Removed

Three distinct services extend FrameworX capabilities while maintaining unified architecture:

Service TypePurposeKey BenefitExample Use
Tag DiscoveryConnect external tags without mappingRuntime-managed communicationsMQTT, OPC UA, ControlLogix
Historian StorageUse external historians as storageStorage location flexibilityCanary, OSIsoft PI, InfluxDB
Module ExtensionEmbed third-party modulesNative UNS integrationSorba.AI, custom analytics

Tag Discovery Service

The most comprehensive

of the

UNS

Services

Service, enabling three

distinct

patterns for connecting external data

without traditional device mapping.

Key Capabilities

  • Dynamic discovery of external tags
  • Runtime-managed communications
  • Three connection patterns (Local Tags, Linked Tags, Smart-Binding)
  • Auto-activation based on usage

Quick Reference

. The runtime creates actual tags in the real-time database (RTDB) to ensure all modules (alarms, displays, historians) can access the data uniformly.

Connection Patterns

Explicit control neededFlexible sources, stable modelDynamic/temporary connections
PatternWhen CreatedAccess MethodGovernance
Local TagsConfiguration time
PatternWhen to UseAccess Method
Local Tags & Device Points
Tag.TagNameSolution-defined
Linked Tags
Configuration timeTag.TagName
Smart-Binding
Solution structure, external source
Dynamic TagsRuntime on-demandAsset("path")
[Full Tag Discovery Service Documentation →]
External system

Runtime Management

  • Auto-discovery of external namespaces
  • Dynamic tag creation in RTDB when accessed
  • Automatic cleanup when no longer needed
  • No pre-configuration required
  • Resource optimization through on-demand activation

Governance Models

The choice between tag management approaches depends primarily on where namespace governance resides:

Local UNS Governance

  • Tags defined in solution configuration
  • Manual mapping to external sources
  • Full control over namespace structure
  • Traditional SCADA workflow
  • Applies to: Local Tags and Linked Tags

Dynamic External Governance

  • Zero-configuration at runtime
  • Adapts to external source namespaces
  • Automatic discovery and creation
  • Reduced engineering time
  • Applies to: Dynamic Tags

Historian Storage Service

Extends the Historian Module to

use any third-party historian as a storage location while maintaining the same configuration interface and runtime behavior.

How It Works

The Historian Module in FrameworX is

be "storage location agnostic" - the same configuration and runtime logic works regardless of where data is stored:

Historian Configuration
    ??? Historian Tags: what to store. Group tags to a Historian Table
    ??? Historian Tables: when to store (Triggers). The where is a link to Storage Location object.
    ??? Storage Location: where to store. ← UNS Service extends this
        ??? Default: SQLite
        ??? SQL Databases: SQL Server, PostgreSQL
        ??? UNS Service: Canary, PI, InfluxDB, Custom

Architecture

  • Historian Tags - What to store (tag selection)
  • Historian Tables - When to store (triggers and grouping)
  • Storage Location - Where to store:
    • Default: SQLite
    • SQL Databases: SQL Server, PostgreSQL
    • UNS Service: Canary, PI, InfluxDB, Custom

Configuration Comparison

Configuration

Configure Historian Tags grouping into the tables

Keep the Storage Location to TagHistorian  the TagHistorian as needed a Storage Location using UNS ServicesDefine Historian Tables to use that Historian Tags those Storage managed by external system
Standard SQL StorageUNS Service Storage
Configure Historian Tables
Group tags into tables
Use Dataset.DB.
TagHistorian
Customize
SQL connection
Create
UNS Service location
Tables reference service location
Add
tags to
tables
External system manages storage

Benefits

  • Leverage existing
infrastructure - Use
  • enterprise historians
already deployed
  • Mixed storage
- Different groups can use different storage locations
  • strategies per table
  • Seamless migration
- Change storage without reconfiguring groups
  • Native integration - External historians appear as standard options
    • between storage types
    • Native integration with external systems

    Supported External Historians

    • Canary Historian
    • OSIsoft PI
    • InfluxDB
    • Custom implementations via API

    Module Extension Service

    Enables third-party modules to integrate

    directly into the UNS, appearing

    as native FrameworX components with full Designer support

    .

    Use Cases

    This service addresses scenarios where

    :

  • Third-party integration requires custom configuration beyond standard connectors
  • The module needs to appear in the UNS tree with custom properties
  • Integration

    should feel native to FrameworX users
  • Configuration and execution should remain within FrameworX
  • How It Works

    ac:layout <ac:layout-section ac:type="single"> ac:layout-cell

    Integration

    Process

    :

    1. Partner creates XML descriptor and .NET DLL
    2. Files placed in FrameworX extensions folder
    3. Module appears in Designer under UNS → Service Connections
    User configures
    1. Configure connection settings
    Module
    1. Add module elements
    can be added
    1. to Asset Tree
    </ac:layout-cell> </ac:layout-section> </ac:layout>

    Example: Sorba.AI Integration

    Once configured, the Sorba.AI module

    extension allows

    elements appear in the Asset Tree:

    Code Block
    UNS Asset Tree
    ??? Plant
    ?   ??? Area1
    ?   ?   ??? SorbaModel (Module Extension)
    ?   ?       ??? Predictions
    ?   ?       ??? Anomalies
    ?   ?       ??? Parameters
    ?   ?       ??? ModelStatus
    • Plant
      • Area1
        • SorbaModel (Module Extension)
          • Predictions
          • Anomalies
          • Parameters
          • ModelStatus

    The module exposes all properties through standard UNS access patterns, accessible via namespaces like any native module.


    Common Characteristics

    All Services Share:

    • Auto-discovery - Resources discovered at runtime

    The SorbaModel object exposes all necessary properties and methods to interact with Sorba.AI directly through the UNS, including:

    • Model predictions as tag values
    • Anomaly detection results
    • Configuration parameters
    • Performance metrics

    Benefits

    • Native feel - Third-party modules appear as built-in components
    • Unified configuration - All settings in Designer
    • Standard access - Use Tag.Path syntax for module data
    • Full integration - Alarms, historian, displays work normally

    Common Characteristics

    All UNS Services share fundamental behaviors:

    Runtime Management

    Auto-discovery - Services discover available resources
  • Enable service in UNS → Service Connections
  • Configure connection parameters
  • Service auto-populates available resources
  • Use resources through standard FrameworX methods
    • On-demand activation - Resources allocated only when needed
    • Unified interface - Consistent configuration approach
    • Performance optimization - Automatic resource management

    Configuration Approach

    • RTDB integration - All data flows through real-time database

    Protocol Requirements

    TypeProtocol RequirementsMust support browsing, etc.Must implement storage Must provide integration API 
    Service
    Required Capability
    Tag Discovery
    Browsing/discovery protocol (MQTT, OPC UA
    )
    Historian Storage
    Storage API interface implementation
    Module Extension
    .NET
    assembly or REST
    API

    Implementation Considerations

    When to Use

    UNS Services

    Each Approach

    Use Standard
    Approach When:
    ConfigurationUse UNS Services
    -
    Full control over
    communication
    timing
    is
    required
    Working with legacy
    - Legacy protocols without discovery
    - Regulatory compliance demands
    explicit configuration

    - Offline configuration
    is
    mandatory

    Use UNS Services When:

    • External systems support discovery protocols
    • Storage infrastructure already exists
    • Third-party modules need deep integration
    • Dynamic connectivity is beneficial

    Performance Impact

    • Tag Discovery: Minimal overhead, on-demand activation
    • Historian Storage: Performance depends on external system
    • Module Extension: Varies by implementation
    - Namespace governance internal- Discovery protocols supported
    - Existing storage infrastructure
    - Third-party integration needed
    - Dynamic connectivity beneficial
    - External namespace governance

    Performance Impact

    ServiceImpactOptimization Strategy
    Tag DiscoveryMinimal overheadOn-demand tag creation, automatic cleanup
    Historian StorageDepends on externalBatch operations, connection pooling
    Module ExtensionVaries by implementationResource pooling, lazy loading

    Security Architecture

    Security Considerations

    • Services inherit FrameworX security model
    • External connections use service-specific authentication
    • Access control applies uniformly to all
    • service
    • data
    • Audit trail includes service operations

    Best Practices

    Service Selection

    • Evaluate each data source independently
    • Consider long-term maintenance requirements
    • Assess existing infrastructure
    • Plan for mixed configurations

    Common Configurations

    • Dynamic tags respect same security as local tags

    Deployment Patterns

    Enterprise System

    Enterprise System:

    • Local Tags for control logic
    • Tag Discovery
    • and setpoints
    • Linked Tags for equipment with multiple sources
    • Dynamic Tags for enterprise/MES data
    • Historian Storage to corporate
    • historian
    • infrastructure
    • Module Extensions for analytics and AI

    Edge Device

    :

    • Local Tags for field devices
    • Smart-Binding for diagnostics
    • Dynamic Tags for diagnostic access
    • Local historian storage (SQLite)
    • Minimal external services

    Migration Strategy

    Hybrid Architecture

    • Mix governance models per subsystem
    • Critical control: Local Tags
    • Enterprise data: Dynamic Tags
    • Flexible equipment: Linked Tags

    Decision Strategy

    1. Assessment - Identify data governance requirements
    2. Pilot - Test
    3. Identify candidates - Which data fits service model?
    4. Pilot testing - Start
    5. with non-critical
    6. data
    7. subsystem
    8. Performance validation
    9. Validation - Verify performance meets requirements
    10. Gradual rollout
    11. Rollout - Expand
    12. usage
    13. systematically

    Terminology Evolution

    1. by area or function
    2. Optimization - Tune resource allocation

    <ac:structured-macro ac:name="info"> <ac:parameter ac:name="title">Terminology Evolution</ac:parameter> ac:rich-text-body

    Historical Context:

    Info
    titleTagProvider terminology
    Historical Context

    • Legacy Term: "TagProvider" or "Dynamic TagProvider"
    • Current Term: "UNS Services" (FrameworX 10.1+)
    , specifically the Tag Discovery Service.
    • Key Patterns: Dynamic Tags (runtime-created in RTDB)

    The terminology evolved as functionality expanded

    Functionality: Expanded

    beyond simple tag provisioning

    The new terminology better reflects the comprehensive nature of these services, which now include storage, modules, and discovery capabilities.

    Next Steps

    Detailed Documentation

    • [Tag Discovery Service →] - Complete guide to three connection patterns
    • [Historian Configuration →] - Storage setup procedures
    • [Module Development →] - Creating extensions

    Related Concepts

    • [P1: UNS Foundation →] - Core UNS concepts
    • [Devices Module →] - Traditional mapping approach
    • [Runtime Execution →] - How services execute
    UNS Services represent the extensibility layer of FrameworX, enabling seamless integration with external systems while maintaining the platform's unified architecture and ease of use. Choose services based on your infrastructure and operational requirements

    to include storage services and module extensions.


    In this section...

    Page Tree
    root@parent
    spaces93DRAF