An interactive tag-registration template that captures a canonical tag name (built from segments), required metadata, ownership, change-control details, and MES/ERP mappings. Use it to register trustworthy, discoverable IIoT/MES tags in a data catalog and reduce naming inconsistency, duplication, and noisy signals.
{
"Title": "Tag creation & naming template",
"IntroductionHtml": "
Why this template matters
Consistent, discoverable tags are the foundation for reliable dashboards, analytics, MES/AI, and operator trust. Use this form to create a canonical tag entry that contains naming, ownership, source, sample characteristics, retention, and mappings so your signals are auditable and reusable.
Recommended naming convention
Use an underscore-separated, segment-based name: SITE_LINE_ASSET_SIGNAL_UNIT (prefer uppercase for visual consistency). Typical segments:
- SITE — short plant code (e.g., PLT1)
- LINE — production line or cell (e.g., LINEA)
- ASSET — equipment identifier (e.g., PUMP01)
- SIGNAL — measured item or metric (e.g., FLOW, TEMP)
- UNIT — measurement unit or code (e.g., LPM, C, PSI)
Example: PLT1_LINEA_PUMP01_FLOW_LPM
Recommended pattern (guideline): ^[A-Z0-9]+_[A-Z0-9-]+_[A-Z0-9-]+_[A-Z0-9-]+_[A-ZA-Z0-9%]+$. Adapt to local constraints but keep the segment structure and document any deviations.
How to use
Complete the fields below to create a canonical tag. The system will compose the canonical tag name from the segment fields unless you specify a pre-built name. Required metadata helps analytics, auditing, and future integrations with MES/ERP systems. If your organization copies this template into an enterprise or plant domain, tailor the pattern and required approvals to local standards.
",
"SubmitLabel": "Register Tag",
"SuccessMessage": "Tag metadata saved. Add the new tag to the data catalog and notify the owner. If change-control was required, attach approval documentation to the catalog entry.",
"DataType": "TagMetadata",
"SchemaVersion": "1.0",
"Fields": [
{
"Key": "use_prebuilt_name",
"Label": "Do you have a prebuilt canonical tag name?",
"FieldType": "yesno",
"Required": true,
"HelpText": "Choose 'No' to compose the canonical name from the segment fields below. Choose 'Yes' if you already have a finalized name to enter."
},
{
"Key": "canonical_tag_name",
"Label": "Canonical tag name (full)",
"FieldType": "text",
"Required": false,
"HelpText": "Enter the finalized tag name only if you selected 'Yes' above. Otherwise leave blank and the system will assemble the name from the segment fields.",
"Placeholder": "PLT1_LINEA_PUMP01_FLOW_LPM"
},
{
"Key": "site",
"Label": "Site code (SITE)",
"FieldType": "text",
"Required": true,
"HelpText": "Short plant or site code (e.g., PLT1). Keep it consistent with enterprise site master data."
},
{
"Key": "line",
"Label": "Line or cell (LINE)",
"FieldType": "text",
"Required": true,
"HelpText": "Production line or cell identifier (e.g., LINEA)."
},
{
"Key": "asset",
"Label": "Asset or equipment ID (ASSET)",
"FieldType": "text",
"Required": true,
"HelpText": "Equipment identifier (e.g., PUMP01, OVEN3). Use existing asset tags when available."
},
{
"Key": "signal",
"Label": "Signal name (SIGNAL)",
"FieldType": "text",
"Required": true,
"HelpText": "Short, standardized metric name (e.g., FLOW, TEMP, PRESSURE, RUN_STATE). Prefer canonical vocabulary used across the plant."
},
{
"Key": "unit_segment",
"Label": "Unit segment (UNIT)",
"FieldType": "text",
"Required": true,
"HelpText": "Measurement unit code used in the tag name (e.g., LPM, C, PSI, BOOL). If percentage, use PCT or % per your local standard."
},
{
"Key": "owner_name",
"Label": "Tag owner (name)",
"FieldType": "text",
"Required": true,
"HelpText": "Person or role responsible for the signal (e.g., Maintenance Lead, Controls Engineer). Ownership ensures someone is accountable for correctness."
},
{
"Key": "owner_email",
"Label": "Owner contact (email)",
"FieldType": "text",
"Required": true,
"HelpText": "Owner contact email so reviewers and integrators can follow up."
},
{
"Key": "source_system",
"Label": "Source system",
"FieldType": "select",
"Required": true,
"HelpText": "Where the data originates.",
"Options": [
{ "Value": "PLC", "Label": "PLC" },
{ "Value": "SCADA", "Label": "SCADA" },
{ "Value": "IIoT Gateway", "Label": "IIoT Gateway" },
{ "Value": "Historian", "Label": "Historian (PI/OSISoft)" },
{ "Value": "MES", "Label": "MES" },
{ "Value": "Manual", "Label": "Manual Entry" },
{ "Value": "Other", "Label": "Other" }
]
},
{
"Key": "sample_rate_seconds",
"Label": "Sample rate (seconds)",
"FieldType": "number",
"Required": true,
"HelpText": "Typical sampling interval. Use 0 for event or discrete values. Important for downstream rollups and analytics."
},
{
"Key": "data_type",
"Label": "Data type",
"FieldType": "select",
"Required": true,
"HelpText": "Choose the most appropriate type for storage and analytics.",
"Options": [
{ "Value": "float", "Label": "Float (continuous numeric)" },
{ "Value": "integer", "Label": "Integer" },
{ "Value": "boolean", "Label": "Boolean / Discrete" },
{ "Value": "string", "Label": "String / Status" },
{ "Value": "timestamp", "Label": "Timestamp / Datetime" }
]
},
{
"Key": "unit",
"Label": "Measurement unit (for metadata)",
"FieldType": "text",
"Required": true,
"HelpText": "Human-readable unit for dashboards and labels (e.g., L/min, °C, psi)."
},
{
"Key": "retention_days",
"Label": "Retention (days)",
"FieldType": "number",
"Required": true,
"HelpText": "How long raw data must be kept before archiving/deletion. Helps storage planning and compliance.",
"Placeholder": "365"
},
{
"Key": "retention_policy",
"Label": "Retention policy",
"FieldType": "select",
"Required": true,
"HelpText": "What happens after retention expires.",
"Options": [
{ "Value": "archive", "Label": "Archive (store in cold storage)" },
{ "Value": "rollup", "Label": "Roll up to summary and delete raw" },
{ "Value": "delete", "Label": "Delete raw data" }
]
},
{
"Key": "mes_mapping",
"Label": "MES mapping / field name",
"FieldType": "text",
"Required": false,
"HelpText": "Optional mapping to MES field or tag for cross-system joins."
},
{
"Key": "erp_mapping",
"Label": "ERP mapping / field name",
"FieldType": "text",
"Required": false,
"HelpText": "Optional mapping to ERP master data if relevant (e.g., material, batch)."
},
{
"Key": "change_control_required",
"Label": "Is change-control/approval required?",
"FieldType": "yesno",
"Required": true,
"HelpText": "Indicate whether this tag creation requires a formal approval (recommended for process-critical signals)."
},
{
"Key": "change_control_ticket",
"Label": "Change-control ticket or approval reference",
"FieldType": "text",
"Required": false,
"HelpText": "Enter a ticket number, approval ID, or attach reference to approval documentation."
},
{
"Key": "description",
"Label": "Short description / purpose",
"FieldType": "textarea",
"Required": true,
"HelpText": "What this signal represents and how it should be used in dashboards or alarms. Explain units, expected range, and known quirks."
},
{
"Key": "keywords",
"Label": "Keywords / tags for search",
"FieldType": "textarea",
"Required": false,
"HelpText": "Helpful keywords (e.g., 'flow', 'pump', 'production', 'quality') to improve discoverability in the data catalog."
},
{
"Key": "notes",
"Label": "Notes / special handling",
"FieldType": "textarea",
"Required": false,
"HelpText": "Document any filtering, smoothing, known noise sources, or required preprocessing."
}
]
}