当前位置: 首页 > news >正文

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)是什么?

文章目录一、前言二、定义三、来历四、举例说明一、前言 我第一次见到消融实验&#xff08;Ablation Study&#xff09;这个概念是在论文《Faster R-CNN》中。 消融实验类似于我们熟悉的“控制变量法”。 假设在某目标检测系统中&#xff0c;使用了A&#xff0c;B&#xff0…...

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 编写一个函数&#xff0c;令其接受两个参数&#xff1a;一个是int型的数&#xff0c;另一个是int指针。函数比较int的值和指针所指的值&#xff0c;返回较大的那个。在该函…...

SLAM算法之HectorSLAM,Gmapping,KartoSLAM,CoreSLAM和LagoSLAM

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

phpstorm断点调试

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

做一个前端网页送给女朋友~轮播图+纪念日

文章目录1. 轮播图框架2. 轮播图大盒子实现1. 盒子及图片的可视化2. 将图片重叠起来并放入轮播图盒子中...相对定位与绝对定位3. 添加左右按钮4. 点击按钮跳转图片5. 鼠标离开图片轮播图按钮隐藏6. 添加小圆点按钮7. 点击小圆点跳转图片并且该小圆点变色8. 自动轮播9. 最后一步…...

CSDN 编程竞赛三十九期题解

竞赛总览 CSDN 编程竞赛三十九期&#xff1a;比赛详情 (csdn.net) 竞赛题解 题目1、圆小艺 最近小艺酱渐渐变成了一个圆滑的形状球&#xff0c;小艺酱开始变得喜欢上球&#xff01;小艺酱得到n个同心圆。小艺酱对着n个同心圆进行染色&#xff0c;相邻的圆范围内不能有相同的…...

ChatGPT来了你慌了吗?

文章目录一、ChatGPT是什么&#xff1f;一、ChatGPT到底多强大&#xff1f;三、各平台集成了ChatGPT插件&#xff1a;四、ChatGPT能否取代程序员&#xff1f;一、ChatGPT是什么&#xff1f; ChatGPT&#xff08;全名&#xff1a;Chat Generative Pre-trained Transformer&…...

Dijkstra 算法

Dijkstra 算法&#xff08; 迪杰斯特拉算法&#xff09;&#xff0c; 又叫最短路径算法&#xff0c; 这是常见的图论中的最短路径算法&#xff0c; 由 Edsger W.Dijkstra 在 1959 年发表。 这种算法能够给定一个图中的源节点&#xff08; Source Node&#xff09;&#xff0c; …...

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…...

静态通讯录动态通讯录制作详解

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

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索&#xff08;基于物理空间 广播范围&#xff09;2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

4. TypeScript 类型推断与类型组合

一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式&#xff0c;自动确定它们的类型。 这一特性减少了显式类型注解的需要&#xff0c;在保持类型安全的同时简化了代码。通过分析上下文和初始值&#xff0c;TypeSc…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是&#xff0c;要注意以下几点&#xff1a; Django的表单验证与null无关&#xff1a;null参数控制的是数据库层面字段是否可以为NULL&#xff0c;而blank参数控制的是Django表单验证时字…...

Vue3中的computer和watch

computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...

归并排序:分治思想的高效排序

目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法&#xff0c;由约翰冯诺伊曼在1945年提出。其核心思想包括&#xff1a; 分割(Divide)&#xff1a;将待排序数组递归地分成两个子…...

大模型真的像人一样“思考”和“理解”吗?​

Yann LeCun 新研究的核心探讨&#xff1a;大语言模型&#xff08;LLM&#xff09;的“理解”和“思考”方式与人类认知的根本差异。 核心问题&#xff1a;大模型真的像人一样“思考”和“理解”吗&#xff1f; 人类的思考方式&#xff1a; 你的大脑是个超级整理师。面对海量信…...