IEC 62714 AutomationML & CAEX Plant Topology (.aml, .caex, .amlx)
@modelscript/automationml (languages/automationml) provides native WebAssembly parsing, CAEX 2.15 / 3.0 hierarchy and InternalLink validation, discrete-event virtual commissioning simulation, DAEBuilder lowering, and SSP / SysML v2 / Modelica projections for IEC 62714 AutomationML industrial automation and mechatronic plant engineering models.
Supported Extensions & Standards
| Extension | Format | Description |
|---|---|---|
.aml | IEC 62714 AutomationML | XML document combining CAEX plant topology, COLLADA 3D geometry/kinematics references, and PLCopen logic links |
.caex | IEC 62424 CAEX | Computer Aided Engineering Exchange XML (CAEX 2.15 & 3.0) |
.amlx | AutomationML Container | Packaged AutomationML archive bundling .aml topologies with referenced .dae and .plcxml artifacts |
Key Capabilities
1. Four-Pillar CAEX Plant Architecture
- Parses and validates all four CAEX object-oriented libraries inside
CAEXFile:InstanceHierarchy: Concrete plant cells, robots, conveyors, sensors, and PLC controllers (InternalElement).SystemUnitClassLib: Reusable mechatronic equipment templates and vendor device catalogs.RoleClassLib: Semantic engineering roles (Resource,Product,Process,MechatronicAssembly).InterfaceClassLib: Typed external connectors (ExternalInterface:COLLADAInterface,PLCopenXmlInterface,SignalInterface,Order).
2. Virtual Commissioning & Scan-Cycle Simulation
- Executes deterministic discrete-time scan-cycle virtual commissioning (
runAmlVirtualCommissioning) across linked actuators, sensors, and controller interfaces. - Lowers continuous and discrete mechatronic state equations directly into
@modelscript/runtime'sDAEBuilderlinear memory arena.
3. Multi-Domain Projections (SSP, SysML v2, Modelica)
- SSP 1.0 (
amlToSsp): GeneratesSystemStructure.ssdco-simulation topologies from AutomationMLInstanceHierarchyandInternalLinkconnections. - OMG SysML v2 (
amlToSysML2): MapsInternalElementhierarchies andExternalInterfaceports to SysML v2partandportusages. - Modelica 3.x (
amlToModelica): Synthesizes connected acausal Modelica plant models.
Pre-Flight Diagnostics
7 rules6 error1 warning
| Code | Rule | Severity | Message |
|---|---|---|---|
M8301 | aml-unresolved-base-class | error | Base class reference '<path>' in '<elementName>' does not resolve to a declared or standard AutomationML class. |
M8302 | aml-inheritance-cycle | error | Circular inheritance detected in class '<className>': '<cyclePath>'. |
M8303 | aml-invalid-internal-link | error | InternalLink '<linkName>' endpoint '<partnerRef>' does not resolve to a valid InternalElement and ExternalInterface. |
M8304 | aml-port-direction-conflict | error | InternalLink '<linkName>' connects incompatible ports: <detail>. |
M8305 | aml-unsatisfied-role-requirement | error | InternalElement '<elementName>' is missing required <missingItem> mandated by RoleRequirement '<rolePath>'. |
M8306 | aml-broken-external-ref-uri | warning | External reference URI '<uri>' on interface '<interfaceName>' in '<elementName>' is empty or unresolved. |
M8307 | aml-invalid-frame-transform | error | Invalid 6-DOF Frame transformation on InternalElement '<elementName>': <reason>. |
Generated from languages/automationml/src/lints/rules.ts. All languages →
CLI Usage
bash
# Inspect CAEX instance hierarchies, role libraries, and interfaces
msx aml inspect RoboticAssemblyCell.aml
# Run pre-flightIEC 62714 / CAEX linting and link validation
msx aml lint RoboticAssemblyCell.aml
# Run scan-cycle virtual commissioning simulation
msx aml commission RoboticAssemblyCell.aml --cycles=50 --dt=10
# Project plant topology to SSP 1.0, SysML v2, or Modelica
msx aml to-ssp RoboticAssemblyCell.aml -o SystemStructure.ssd
msx aml to-sysml RoboticAssemblyCell.aml -o PlantArchitecture.sysml
msx aml to-modelica RoboticAssemblyCell.aml -o PlantModel.mo
