ECL@SS学习笔记(3)-概念数据模型
ECL@SS 是产品,服务的分类和描述系统。本文介绍其内部的数据模型。
ECL@SS的作用
ECL@SS 标准的目标是为了实现工业界数据交换的标准化。这个标准主要作用是产品的分类和描述。
分类
为了有效地物料管理,供应链管理和电子商务,需要对物料进行分类和编号。有许多的标准化组织致力于物料分类。
美国通用规范标准(GS1)
联合国标准产品和服务代码(UNSPSC)
描述
仅仅是物品分类是不够的,物料管理和数据交换还需要对产品的描述加以规范和标准化,也就是所谓语义标准化。同样有一些国际标准规范产品描述中的语义,它们包括了产品的特性(技术参数),计量单位,概念进行标准化。形成了标准化的工业物料的字典(Dictionary)。
-IEC61360 -IEC Common Data Dictionary(CDD)
ECL@SS 中的分类码
ECL@SS 标准实现了物料的分类与描述。它包括了45000个产品分类。它们分成了四层:
段(Segment)
主群(Main Group)
群(Group)
子群(Sub-Group ,Commodity Class)
第四层(子群)包含了许多的特征(Property):

分层结构

每个物品都有许多的特性,同样的一个特征可能在许多的物料中被应用(比如功耗,会在电机,电脑等多种物品中使用,在ECL@SS中定义了19000个特征可被引用。
分类的分层架构是使用编码名称(code name ,也称为类编码Class Code)来表示的。使用8位数字表示。每两位表示一层,层的编码名称中,底层编码填零。例如
16-00-00-00 -食品,饮料,烟草
16-04-00-00水果
16-04-03-00 草莓
16-04-03-01 黑莓
ECL@SS 的特征数据模型
ECLASS 的特征数据相对比较复杂一点,不同的物料可能具有相同的特征,比如电机和电脑同样具有功耗,重量等特征。
另外在特征描述中还会包含一些概念,比如计量单位(UNIT)。于是,ECLASS 的特性描述是一种结构化信息模型。它是一种面向对象设计的模型,在ECLASS 的文档中采用了UML 描述:

注:为了便于理解,我标注了类图的关系。
继承(泛化),它指定了子类如何特化父类的所有特征和行为。
关联,就是这个类有一个属性是其他类。
聚合 是一种has-a关联关系
从上面的类图表明:
字典是由各种版本构成的。
每个版本的字典由所谓的结构单元(Structure-Element) 构成。Ecl@ss 中的所有其它概念-数据类都是由结构类型派生出来的。
结构单元的基本特征是有一个唯一的标识符(IRDI),下一节我们将详细讨论IRDI,由于其它的类都继承了结构单元,因此,在ECL@SS 中,每一个数据类都具有一个IRDI。

IRDI 与CodeName 是不同的两种编码,物料使用CodeName 类编码,而属性由IRDI来编码。 每个物料有一个CodeName ,又有一个IRDI,例如27-24-22-19是PLC 的CodeName,而0173-1#01-BAA707#018 是PLC 的IRDI。
结构单元
结构单元是真实世界概念的表示,它关联了一个术语描述信息(Terminologicalinformation),它包含了名称,语言等。

IRDI
IRDI 的全称是国际注册数据标识(International RegistrationData Identifier).它基于 ISO/IEC 11179-6, ISO 29002, 和 ISO 6532国际标准。每一个注册的机构都有一个唯一的编号。ECLASS的编号是0173,它们称为 ICD (International Code Designator) 标识符。
IRDI 的编码方案

ECLASS 的ICD 为0173
Code Space Identifer (CSI) 标识对象的类型
CSI | Category of administered item | Used in ECLASS XML |
CT | concept type | - |
TM | term | - |
DF | definition | - |
IM | image | - |
AB | abbreviation | - |
GS | graphical symbol | - |
TS | textual symbol | - |
LG | language | - |
OG | organization | - |
01 | class | YES |
02 | property | YES |
05 | unit of measure | YES |
07 | property value | YES |
08 | currency | - |
09 | data type | YES |
10 | document | - |
11 | ontology | YES |
Z2 | aspect of conversion | YES |
Z3 | template | YES |
Z4 | quantity | YES |
Z5 | keywords | YES |
Z6 | synonyms | YES |
概念编码为6位字符(图中为Item Code,ECLASS中称为Concept Code)例如AAA123

结构元素
特征(Property)
特征是一个表示一组值的结构单元,它使用一个数据类型或者指向一个枚举类型(例如 property: color, value: red)。

特征有下列几种
量特征(Quantitative Property )
一个表示物理量的数值,数据类型包括s INTEGER_MEASURE, REAL_MEASURE or RATIONAL_MEASURE 。带一个单位(UNIT)。
依赖性特征(Undepending Property )
该特征依赖于另一个值(称为条件)

块(Block)
块是特性的子集。如果将所有特征排列在类的顶层,显然难以阅读,所以将特征加以分块。有点类似于“子目录”的作用。
引用特性(Reference Property)
引用特征指向一个子块(SubBlock)例如:一个引用属性 “环境条件”指向 “环境条件”特征块 。

单位(UNIT)
在ECLASS 7.0 版本之前,单位是一个简单的字符串类型,由此出现了许多问题,之后加以标准化,现在单位(UNIT) 是一个清晰的结构单元。
UNIT的属性

关键字keyword
关键字也是一种结构单元。是分类类(classification Class)的一部分(聚合)。

值(Value)
Value 是一种可能内容的特征,Value会赋予一个数据类型。
值列表(Value List)
一组可能的值的列表的属性。相当于程序设计语言中的枚举类型。
基于ECL@SS 数据模型的字典系统
构建ECLASS 数据工程浩大,给构建企业产品的分类和描述,企业之间的物料信息带来了便捷和标准化,它能够称为一个工业4.0 的字典。对于物料管理,供应链管理,电子商务,设备维护,备品备件库存管理都具有十分重要的意义。但是在笔者看来,ECLASS 也存在一些问题:
ECLASS 是收费的数据。
即便购买了ECLASS 的数据,具体地实施ECLASS 落地也并非易事。国外大多数是通过第三方咨询机构实现的,或者购买相应的软件。
尽管可以参与ECL@SS 数据的开发,但是物料信息维护依赖国外的机构也是不方便的。
因此从长远看,开发国内的物料字典是需要的。当然可以吸取ECLASS 的架构思想,开发相关的软件工具。为企业提供相关的咨询服务。
在此我们研究如何构建ECL@SS 为基础数据字典。
物料模型数据库(Commodity Model Database)
有一点经常会混淆,就是类和对象的关系,类是对象的抽象,对象是类的实例化。类与模型,模板具有类似的含义。
ECLASS 数据字典是物料的数据模型集合,用户访问ECLASS 模型数据库,获取的是物料的模型,而非模型的实例。下面是示意图。

ECLASS 数据库的基本结构
数据库
国际文献上没有过多 ECL@SS 系统实现方案,我们只能自己构想一下:
使用数据库
EClass 系统存储物料和服务的模型,模板数据,因此需要使用数据库来实现ECLASS 字典系统。构建字典,知识图谱方法最好的是采用图数据库技术。但是考虑到系统的可移植性,建议采用NOSQL 文档数据库,例如mongoDB.
数据库包括数据表
class
property
unit
aspect
导出格式
物料模板
工业4.0 管理壳
OPC UA 模型
结束语
理解一个标准最好的办法是尝试实现它。
构建物料分类和描述标准化是智能制造的基础工作,它与当下主张的工业品电商,工业4.0 管理壳,供应链管理是密不可分的。笔者认为这项工作不能完全依赖国外技术和服务。构建中国自己的字典系统是自主可控工业体系的十分重要。也具有商业价值。希望结识更多感兴趣的人共同探讨这个课题。
相关文章:

ECL@SS学习笔记(3)-概念数据模型
ECLSS 是产品,服务的分类和描述系统。本文介绍其内部的数据模型。ECLSS的作用ECLSS 标准的目标是为了实现工业界数据交换的标准化。这个标准主要作用是产品的分类和描述。分类为了有效地物料管理,供应链管理和电子商务,需要对物料进行分类和编…...
206. 反转链表
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head [1,2] 输出:[2,1] 示例 3: 输…...

文心一言 vs GPT-4 —— 全面横向比较
文心一言 vs GPT-4 —— 全面横向比较 3月15日凌晨,OpenAI发布“迄今为止功能最强大的模型”——GPT-4。我第一时间为大家奉上了体验报告《OpenAI 发布GPT-4——全网抢先体验》。 时隔一日,3月16日下午百度发布大语言模型——文心一言。发布会上&#…...
rancher2.6进阶之kubectl安装
rancher2.6进阶之kubectl安装 1.安装kubectl客户端 1.1.1.使用命令行下载安装包: curl -LO https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl Note: 可指定下载版本, 将 ( c u r l − L − s h t t p s : / / d l . k …...

图像基本变换
缩放与裁剪裁剪图像的裁剪,是指将图像的某个区域切割出来。一些常见的应用场景包括:* 感兴趣区域提取* 去除无用信息* 图像增强* 纠偏:去除不规则部分,将图像变得更加整齐事实上,图像裁剪的裁剪通常就是一个numpy矩阵切…...

基于文心一言的底层视觉理解,百度网盘把「猫」换成了「黄色的猫」
随着移动互联网的一路狂飙,手机已经成为人们的新器官。出门不带钥匙可以,不带手机却是万万不可以的。而手机上,小小的摄像头也越来越成为各位「vlogger」的口袋魔方。每天有超过数亿的照片和视频被上传到百度网盘中,这些照片和视频…...

安卓开发的环境配置教程
文章目录事先准备:下载 JDK、Gradle下载安装 Android Studio下载安装 Android SDK下载安装 ADB笔者的环境: Java 17.0.1 Gradle 8.0.1 Android Studio Electric Eel | 2022.1.1 Patch 1 Windows 10 教育版 64位 事先准备:下载 JDK、Gradl…...
【Spring Cloud Alibaba】Spring Cloud Alibaba 搭建教程
文章目录教程适用版本一、简介主要功能组件开源地址二、开始搭建1.项目搭建与依赖管理2.服务注册与发现(Nacos安装)3.创建服务提供者4.创建服务消费者5.创建服务消费者(Feign)6.添加熔断机制(Sentinel)7.Sentinel熔断器仪表盘监控…...
关于自动机器学习flaml训练时的一些报错
一、版本背景flaml 1.1.3sciket-learn 0.23.0二、一路报错2.1、SyntaxError: future feature annotations is not definedTraceback (most recent call last):File "C:/Users/dell/Desktop/AI/run.py", line 151, in <module>model.autoMlArgs(queryDf,targe…...
【计算机视觉】消融实验(Ablation Study)是什么?
文章目录一、前言二、定义三、来历四、举例说明一、前言 我第一次见到消融实验(Ablation Study)这个概念是在论文《Faster R-CNN》中。 消融实验类似于我们熟悉的“控制变量法”。 假设在某目标检测系统中,使用了A,B࿰…...
Java毕业论文参考文献参考例子整理
[1]李庆民.基于java的软件agent开发环境的分析[J].数字技术与应用,2017,01:189. [2]籍慧文.Web应用开发中JAVA编程语言的应用探讨[J].科技创新与应用,2017,07:90. [3]卜令瑞.基于Java软件项目开发岗位的企业实践总结报告[J].职业,2016,32:124-125. [4]肖成金,吕…...
C++ Primer第五版_第六章习题答案(21~30)
文章目录练习6.21练习6.22练习6.23练习6.24练习6.25练习6.26练习6.27练习6.28练习6.29练习6.30练习6.21 编写一个函数,令其接受两个参数:一个是int型的数,另一个是int指针。函数比较int的值和指针所指的值,返回较大的那个。在该函…...

SLAM算法之HectorSLAM,Gmapping,KartoSLAM,CoreSLAM和LagoSLAM
文章将介绍使用的基于机器人操作系统(ROS)框架工作的SLAM算法。 在ROS中提供的五种基于2D激光的SLAM算法分别是:HectorSLAM,Gmapping,KartoSLAM,CoreSLAM和LagoSLAM。当然最后还有比较经典的google开源的ca…...

phpstorm断点调试
环境:win10phpstorm2022phpstudy8lnmp 1、phpinfo(); 查看是否安装xdebug,没有走以下流程 2、phpstudy中切换不同版本php版本,有些版本不支持xdebug(如php8.0.2),有些已经自带了(如php7.3.9&a…...

做一个前端网页送给女朋友~轮播图+纪念日
文章目录1. 轮播图框架2. 轮播图大盒子实现1. 盒子及图片的可视化2. 将图片重叠起来并放入轮播图盒子中...相对定位与绝对定位3. 添加左右按钮4. 点击按钮跳转图片5. 鼠标离开图片轮播图按钮隐藏6. 添加小圆点按钮7. 点击小圆点跳转图片并且该小圆点变色8. 自动轮播9. 最后一步…...
CSDN 编程竞赛三十九期题解
竞赛总览 CSDN 编程竞赛三十九期:比赛详情 (csdn.net) 竞赛题解 题目1、圆小艺 最近小艺酱渐渐变成了一个圆滑的形状球,小艺酱开始变得喜欢上球!小艺酱得到n个同心圆。小艺酱对着n个同心圆进行染色,相邻的圆范围内不能有相同的…...

ChatGPT来了你慌了吗?
文章目录一、ChatGPT是什么?一、ChatGPT到底多强大?三、各平台集成了ChatGPT插件:四、ChatGPT能否取代程序员?一、ChatGPT是什么? ChatGPT(全名:Chat Generative Pre-trained Transformer&…...

Dijkstra 算法
Dijkstra 算法( 迪杰斯特拉算法), 又叫最短路径算法, 这是常见的图论中的最短路径算法, 由 Edsger W.Dijkstra 在 1959 年发表。 这种算法能够给定一个图中的源节点( Source Node), …...
EIgamal 算法实现与解读
EIgamal 算法实现与解读 数学知识1.求原根2.求逆元快速幂求解EIgamal 算法1. Elgamal密钥产生2. Elgamal加密3. Elgamal解密效果如下:数学知识 1.求原根 如果g是p的原根,就是g^(p-1) = 1 (mod P)当且仅当指数为p-1的时候成立.(这里P是素数) 简单来说,g^i mod p ≠ g^j m…...

静态通讯录动态通讯录制作详解
🍕在本期的博客我们来向大家介绍一下静态通讯录的书写以及怎样将我们的静态通讯录更改为动态的模式。 🍔静态通讯录的创建 🍕就像是我们之前进行的完整程序逻辑的书写一样我们同样创建三个文件,两个 .c 文件,一个 .h 文…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...

Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
智能职业发展系统:AI驱动的职业规划平台技术解析
智能职业发展系统:AI驱动的职业规划平台技术解析 引言:数字时代的职业革命 在当今瞬息万变的就业市场中,传统的职业规划方法已无法满足个人和企业的需求。据统计,全球每年有超过2亿人面临职业转型困境,而企业也因此遭…...

快速排序算法改进:随机快排-荷兰国旗划分详解
随机快速排序-荷兰国旗划分算法详解 一、基础知识回顾1.1 快速排序简介1.2 荷兰国旗问题 二、随机快排 - 荷兰国旗划分原理2.1 随机化枢轴选择2.2 荷兰国旗划分过程2.3 结合随机快排与荷兰国旗划分 三、代码实现3.1 Python实现3.2 Java实现3.3 C实现 四、性能分析4.1 时间复杂度…...