CN111602115A - 基于本体的应用程序开发的模型驱动方法 - Google Patents
基于本体的应用程序开发的模型驱动方法 Download PDFInfo
- Publication number
- CN111602115A CN111602115A CN201880058388.7A CN201880058388A CN111602115A CN 111602115 A CN111602115 A CN 111602115A CN 201880058388 A CN201880058388 A CN 201880058388A CN 111602115 A CN111602115 A CN 111602115A
- Authority
- CN
- China
- Prior art keywords
- ontology
- internet
- things
- model
- library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000011161 development Methods 0.000 claims abstract description 25
- 238000010801 machine learning Methods 0.000 claims description 7
- 230000009471 action Effects 0.000 claims description 4
- 238000013499 data model Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000013459 approach Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013550 semantic technology Methods 0.000 description 6
- 241000146356 Komma Species 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 230000008676 import Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000009529 body temperature measurement Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
揭露一种本体模型开发的系统及方法。一示例系统及方法可包括:定义一本体模型、基于所述本体模型生成一本体程序库、部署所述本体程序库到一物联网系统、基于部署到所述物联网系统的所述本体程序库生成一本体实例、基于所述本体实例修改一物联网应用程序,以及利用所述物联网应用程序管理所述物联网系统。
Description
技术领域
本揭露的实施例大体上涉及数据处理的方法,并且更具体地涉及基于本体的应用程序开发的模型驱动的方法。
背景技术
物联网(IoT)在例如住宅、商业及工业等多种场所提供多种机会及增值服务。通过物联网中各种“事物”或边缘点之间的连通性与合作可能实现此类机会。但是,许多这样的机会仍然面临这些端点的异质性本质的互操作性挑战。语义技术与链接数据可以很好地解决这些异质性问题及相关的互操作性挑战。从建模与开发到存储与查询,本体软件套件的开发付出许多努力。然而,尽管有潜力及前途,语义技术仍在少数本体专家手中。
基于这挑战,为了在不需要本体专家的情况下加速基于本体的物联网应用程序的采用与开发,需要一种基于本体的模型驱动方法学开发现有的本体程序库与框架。
发明内容
揭露执行本体模型开发的系统、方法及计算机。一示例系统及方法可能包括定义一本体模型、基于所述本体模型生成一本体程序库、部署所述本体程序库到一物联网系统、基于部署到所述物联网系统的所述本体程序库生成一本体实例、基于所述本体实例修改一物联网应用程序、以及利用所述物联网应用程序管理所述物联网系统。
上述系统、方法及计算机的其他实施例设想所述定义的本体模型是由多个本体模型组成,通过一自主系统定义及/或通过一机器学习系统定义所述多个本体模型。
上述系统、方法及计算机的另外的实施例设想所述生成的本体程序库是针对一嵌入式物联网应用程序或基于一云端的物联网应用程序。
进一步的实施例设想包括用于管理数据的多个指令的一处理器可读非暂时性存储介质,其中,通过一个或多个硬件处理器对所述多个指令的执行完成多个动作,所述动作包括定义一本体模型、基于所述本体模型生成一本体程序库、部署所述本体程序库到一物联网系统、基于部署到所述物联网系统的所述本体程序库生成一本体实例、基于所述本体实例修改一物联网应用程序以及利用所述物联网应用程序管理所述物联网系统。
附图说明
这些附图无意按比例绘制。在附图中,在各个附图中说明的每个相同或几乎相同的组件通过线号表示。为了清楚起见,并非在每个附图中都标记每个组件。在附图中:
图1根据基于本体的应用程序开发的模型驱动方法的各个实施例说明本体表示的多个方面;
图2根据基于本体的应用程序开发的模型驱动方法的各个实施例说明流程图的多个方面;
图3根据基于本体的应用程序开发的模型驱动方法的各个实施例说明系统架构的多个方面;
图4根据基于本体的应用程序开发的模型驱动方法的各个实施例说明数据模型图的多个方面;
图5根据基于本体的应用程序开发的模型驱动方法的实施例是通用计算机系统的功能框图;以及
图6根据图5的通用计算机系统是通用存储系统的功能框图。
具体实施方式
本揭露在其应用不限于在以下描述中阐述或通过附图说明的构造细节及组件的设置。本揭露能够具有其他实施例并且能够以各种方式实践或执行。另外,本文所使用的措词及术语是出于描述的目的,并且不应被视为限制。本文中“包括”,“包含”,“具有”,“包含”,“涉及”及其变体的使用是开放式的,即“包括但不限于”。
物联网(IoT)有望大规模互连大量传感器、装置、网关及系统,以应对各种工业中的许多挑战。在设计具有增值服务的工业系统时,这种互连是重要的部分,这些增值服务具低成本的更高能效,同时贡献较佳环境。工业物联网(IoT)的出现所促进的这些好处激增物联网之间互操作性的重要性,以将这愿景变为现实。
物联网应用程序的设计利用对那些“事物”之间交换的数据的共同理解。语义技术是知识表示范围中一个不断发展的领域,有望实现物联网的互操作性。万维网联盟(W3C)定义了一组标准,除此之外,其包括表示与查询语言,提供有益的生态系统来对付物联网中的异质性挑战。在工业环境及自动化范围,语义技术已用于解决各种数据互操作性问题并且提供上下文感知的应用程序与服务。
除了标准化以外,还有几种资源有助于本体软件套件的开发。这些示例包括本体编辑器、存储、推理引擎及/或用于表示、编辑与查询的图形工具。开发人员通常以序列化器(Serializers)的形式利用两种类型的框架,例如RDF4J及对象关系映射器(ORM),例如浪漫网(RomanticWeb)。
语义技术及基于本体的物联网应用程序通常仍仅由本体专家使用。本领域排除其他人的一个潜在原因可能是适当方法学与工具的缺乏,方法学与工具涉及其他主要行动者参与物联网应用程序的设计生命周期,应用程序对其他人是可使用的,而本体系统专家除外。一组提议的解决方案可能包括消除物联网开发人员的障碍并且加速语义技术的采用的模型驱动方法学以及软件模块方法。基于SAREF本体可能验证提出的模块的一个示例。
序列化器可能用于提供对本体文件、SPARQL协议端点及/或持久资源描述框架(RDF)仓库的读/写。资源描述框架序列化器可能用各种编程语言实现,示例包括爪哇(Java)中的OWL API、RDF4J及/或Jackson-Jsonld、在.Net中的dotNetRDF、在C中的Redland以及在Python中的RDFLib。序列化器应用程序编程介面(API)可能提供低水平类别及函数来操作直接映射到资源描述框架语言的概念,而无需任何更高水平的抽象概念。因此,为了实现基于本体的物联网应用程序,对于任何物联网开发人员来说这是有助于了解资源描述框架概念与原理的技术方面及理论。
某些序列化器可能通过插件提供基本程式码生成,插件将本体作为输入并且生成程式码促进器或存根。例如,可能集成在Protégé中的Protégé程式码生成插件基于OWL应用程序编程介面提供Java程式码生成。但是,程式码生成本质上可能是局部的,其中仅提供类别名与介面以及相关的空构造函数。开发人员可以决定依附于例如可以直接映射到资源描述框架(RDF)概念的OWL应用程序编程介面来完成生成的程式码。RDF4J Schema生成器扩展了RDF4J应用程序编程介面,并且从本体提供资源描述框架方案的自动生成。本体的生成的输出可能包含在一个Java文件中,Java文件仅包含本体的每个概念的国际化资源标识符(IRI)。此过程的结果是“扁平”程式码生成,其中生成的元素之间没有类别、关联或约束。然后,开发人员可能手动实现关联、映射及约束。
AutoRDF可以扩展Redland程序库,并且提出一个生成器,生成器采用本体并且生成C++对象导向程式码操纵资源描述框架概念。生成的程式码是包含基于本体类别与关系的一组函数的抽象层,开发人员可用本体类别与关系生成本体实例(A-Box)。
对象关系映射器(ORM)可以建立在序列化器之上,并且提供对象导向抽象层,允许开发人员操作对象而不是资源描述框架(RDF)概念。几种对象关系映射器可用在各种编程语言,例如Java中的KOMMA,Empire及/或AliBaba、.Net中的浪漫网与TrinityRDF,以及Python中的RDFAlchemy。对象关系映射器利用“程式码修饰”,其中开发人员以引用来自本体术语(T-Box)的国际化资源标识符的标签注释程式码。许多Java对象关系映射器(JavaORM)依靠于Java持久化应用程序编程介面(Java Persistence API,JPA),而.Net ORM依靠于实体框架。在应用程序的程式码实现期间,开发人员可以请求实例化本体(A-Box)的一工厂,并且可以依靠.NET域中的SPARQL查询构建器(builder)或适配器(adapter),例如LINQto SPARQL制定SPARQL查询。
以下对象关系映射器提供一些程式码生成功能。例如,AliBaba为本体开发人员提供以下三个有趣的特征。首先,对象服务器通过REST应用程序编程介面曝光对象工厂,将可用对象作为网路上手动注释的资源。其次,允许每个工厂对象拦截方法的Aspect行为器(behaviors)请求及执行特定行为。诸如前置之类的注释提供开发人员对行为执行流程的更好控制。第三,SPARQL在实现动态查询执行的对象的取得者/设定者(getter/setter)上查询修饰。
作为另一个示例,KOMMA依靠于Eclipse建模框架(EMF)。KOMMA提供一个包含三层的统一框架。首先是对象映射持久层。第二,可视化工具。第三,基于EMF能力的本体编辑器。KOMMA详细介绍程式码生成器插件,但是,它没有集成在可视化与编辑层中,因此,介面的映射及实现对于开发人员仍然是手动的。KOMMA的统一方法可能以通用框架中三个层的集成来设定本体开发人员为目标。
利用这种通用方法,图1根据基于本体的应用开发的模型驱动方法的各个实施例说明本体表示的多个方面。实施例可以包括但不限于由各种本体,例如装置类型、数量与单位及/或位置组成的住宅、商业及/或工业系统。
图1基于上述揭露的概念的实施例说明一本体表示的许多潜在示例之一。创建一装置目录(例如建筑物服务器、服务器...)、数量与单位(例如数据源、温度...)及位置(例如建筑物、楼层...)(T-Box)本体。还创建及维护本体模型(A-Box)(例如Bldg A、L2、West2、202A)。此外,这些A-Box可以依附于上一节中描述的可用资源描述框架开发程序库之一制定查询以提取T-Box数据。以此方式,一用户可以确定关于一对象的特定信息,而无需一专家在对象中。例如,一用户可以查询“我的建筑物服务器在哪里?”并收到“A栋2楼西区202A室”的一响应。一用户或系统不再需要一专家去查询与接收可行的信息。
关于这种基于本体的物联网应用程序开发方法,还浮现两个其他因素。首先,在工业背景中基于本体的垂直与水平解决方案的技术可行性。几种本体设计展示垂直与水平部署的好处。在垂直部署或筒仓(silo)中,一传感器到网关或一装置/系统到云端的连接与区域特定应用程序结合一起。一般的例子是当几个端点(例如传感器)与例如网关的通信聚合装置通信时。然后,这网关可能与一云端进行通信。可以基于技术领域(例如,工业系统)、地理位置(例如,建筑物A)、技术领域(例如,温度传感器)及/或所有这些的组合使用各种垂直筒仓。
一水平部署可能包含集成不同筒仓(垂直线),筒仓驱动整体系统与装置之间的互操作性的区域。作为许多示例之一,两个工业系统、一建筑物管理及一电源解决方案系统可能连接到云端。在这些情况下,我们似乎拥有能通过共同的本体相互关联的完全不同的系统。如前所述,本揭露的显着效益是对于用户在所有这些领域不再需要专家就能使用整体系统。
其次,一适配层通过一本体表示暴露所述系统的所述信息,所述本体表示可以被一商务智能层消耗以基于各种商务智能系统提取信息。此外,可以部署基于一云端的联合查询本体及时间序列引擎,实现对业务与机器学习应用程序的大数据查询。另外,在所述工业与标准化机构中出现领域特定本体。例如,在所述智能建筑领域中,已经出现SAREF与扩展,Haystack与Brick等本体。此外,已经提出有关能源建模与存取的努力,例如Siemens Work、SPITFIRE及OptiquePlatform2。
现在,这些组合允许在一用户负责的所述现有系统以及可能存在的任何外部数据(例如数据湖)中的关系的创建与优化。此外,这些关系可能通过向可能之后明确表达变更的一用户的建议、通过自主系统以及/或两者的结合,用于相应的业务运营的管理。最后,基于形成的、优化的、执行的与学习的关系,这些关系及优化的数据可能在其他机器学习系统中使用以进一步优化各个系统。其他有关于本揭露的实施例的益处描述于下。
本体强大地代表内部系统的拓扑,例如所述装置与传感器之间的所述互连性,它们的物理位置以及它们之间的功能互动。尽管利用一对象关系映射器提供一有用的抽象层,通过程式码装饰通常仍然需要一映射。然而,物联网开发人员可能会善用可能引进到一开发环境中的一即时实例化与链接程序库(Just Instantiate and Link library),其中使用所描述的方法提供所述本体模型(T-Box)的所述概念与关系。只要引进此类程序库后,一开发人员可以实例化所述本体概念并且将其链接到一本体实例(A-Box)中。此类程序库可以依靠于,例如现有的SDK与其他可用程序库。这种能力减轻开发人员成为他们正在编程的相关物联网系统中的专家的负担。
各种编程语言可能用于获得本揭露的实施例的益处。不同行业、业务及实施的多样性得益于利用不同的编程语言实施基于物联网应用程序的技能集的多样性。这些应用程序涵盖范围可能从嵌入式装置(c,c++,python)、系统(c++,.Net,java)及/或云端应用程序。因此,有利于支持这种即时实例化与链接程序库支持以及对第三方程序库与编程语言的各种依附性。应当理解,这些仅仅是能在本揭露的各种实施例中使用的编程语言的示例。
可以使用各式各样的查询语言。在本揭露的各种实施例中,在一系统或云端上存储与撷取数据是非常有利的。物联网开发社区通常在使用的查询语言方面有所变化。尽管有些人熟悉SQL或LINQ等查询语言并且主张在基于所述物联网本体的开发中重新使用它们,但其他开发人员将SPARQL用作一不断发展的非表格查询语言。可能使用诸如所述可视化查询构建器(builder)的替代方案通过一可视化工具生成SPARQL,并且将其用于所述物联网开发中。应当理解,这些仅仅是能够在本揭露的各种实施例中使用的查询语言的示例。
图2根据基于本体的应用程序开发的模型驱动方法的各个实施例说明一流程图的多个方面。所述流程图包括一本体专家、一领域专家、一个或多个本体特征、一个或多个本体程序库、一个或多个本体模型、一个或多个物联网系统、一个或多个数据仓库、多个物联网开发人员及/或一个或多个物联网应用程序。应当理解,这些仅仅是一流程图的示例,并且各种元件能够在本揭露的各种实施例中使用。
所述本体专家200可能是通常在所述本体开发工具、语言及存储基础设施中具有经验的一本体从业者。他们的任务的示例可能包括协助一领域专家202捕获要在一特定领域中部署的一物联网应用程序中使用的所述概念。所述领域专家202可能是一产品所有者及/或一技术架构师。他们通常具有如何部署、投入及/或操作一特定系统的全局及/或特定知识。他们可以与所述本体专家200协同工作,并且明确表达一系统与所述本体专家200的概念及/或关系。
应当理解,一些实施例可能不利用这些角色、利用这些角色中的一个或多个,因为一些本体模型(T-box)204可能从存储器中撷取,及/或从一机器学习系统中自动地生成。另外,一个体可以担任多个角色,因为一本体专家200与一领域专家202或团队可以担任这些角色,并且可能创建本体概念与关系以形成如下所述的本体模型(T-Box)204,并且提出用于进一步处理的一本体。
一本体模型(T-Box)204可能提供给一本体程序库生成器(Ontology LibraryGenerAtor,OLGA 206),也在之后图3中详细描述。OLGA 206接收一本体以及它的引进的本体,所述引进的本体与所述期望程序库或框架的一选择一起。OLGA 206然后生成一程序库208以符合先前定义的所述本体模型(T-Box)204。一生成的程序库208抽象化所述本体复杂性,并且使物联网开发人员能够实例化且链接先前由所述本体专家200及域专家202定义的本体类别与关系。一生成的程序库208可能取决于一序列化器或一对象关系映射器程序库。一本体模型(T-Box)204也可能或附加地提供给一资源描述框架(RDF)仓库用于附加的/未来用途。所述本体专家200及/或领域专家202可以迭代、扩展或重用或扩展现有本体模型204。
一嵌入式物联网开发人员214可以使用所述专家200、202先前定义的所述本体模型(T-Box)204实现一嵌入式物联网应用程序216。所述嵌入式物联网应用程序216可能用于一装置及/或系统。所述嵌入式物联网开发人员214可以引进所述生成的程序库208,所述生成的程序库208包含先前定义以实例化所述嵌入式物联网应用程序216的所述本体概念及关系。
一本体实例(A-Box)218可能从所述嵌入式物联网应用程序216导出。一旦集成的所述本体概念链接到一起进入一本体实例(A-Box)218中。一本体实例(A-Box)218也可能或额外地提供给一资源描述框架(RDF)仓库做为附加的/未来用途。
所述云端物联网开发人员210可能使用所述专家200、202先前定义的所述本体模型(T-Box)204实现所述物联网应用程序216。基于所述云端的应用程序212可能用于一个或多个云端系统。所述云物联网开发人员210将引进所述生成的程序库208,所述程序库208包含先前定义以实例化所述模型的所述本体概念及可能关系。所述物联网应用程序216也可以或另外提供给一资源描述框架仓库作以附加的/未来用途。
一物联网开发人员可能引进所述生成的程序库208,并且将所述生成的程序库嵌入到一装置、系统及/或一物联网云端应用程序中。一旦集成到一现有系统或装置中,所述生成的程序库可能会具有多个应用程序。在一示例中,与一建筑物管理系统的调试软件一起使用,其中所述生成的程序库208用于为一给定设施实例化一系统的一本体模型,一本体实例218可以捕获图1中所示的所述系统的多个方面。然后,可能将所述本体实例与所述模型一起发送到一云端存储,在云端存储中,一业务应用程序层或基于一物联网的云端应用程序可以查询与提取有关一特定智能建筑的信息以推动更好的洞察力。在所述云端水平,一开发人员还可以通过所述OLGA 206支持所述编程语言及技术的他们的选择引进一生成的程序库208。一生成的程序库可能符合所述专家定义的相同本体,并且将用于与一资源描述框架仓库互动以载入及查询所述模型的实例以完成所述云端应用程序需求。
所描述的方法学的实施例的一附加益处能够使方面与角色分离,并且将所述复杂性放置在可以通过依靠一适当的工具及领域专长解决的区域中。一领域专家202通常具有关于一特定系统与领域的整体知识及特定知识。一本体专家200可能是一建模从业者,但是可能缺乏所述整体系统视野及领域知识专长。最后,物联网开发人员210、214现在可能通过依靠所述生成的程序库决择他们选择以实现基于本体的物联网应用的编程语言及框架,所述生成的程序库符合不具有所述本体语言的所述复杂性的本体模型。
图3根据基于本体的应用程序开发的模型驱动方法的各个实施例说明一系统架构的多个方面。所述架构的实施例可能包括但不限于一多程序库生成器、引进器、访客、模型、生成器、编译器与打包器,及/或通常用于跨平台创建应用程序的各种工具与资源。
OLGA 206是具有图3所说明的各种实施例的一多程序库程式码生成器。OLGA 206可能接受各种输入,包括一个或多个本体300。值得注意的是,一本体可能取决于其他本体以及一程序库依附性的一选择。各种实施例设想一生成的程序库可能取决于一序列化器或一对象关系映射器(ORM)。OLGA 206可能使用先前存在的程序库与框架。通过为所述物联网开发人员提供多种选择用于基于本体的物联网应用程序的开发,OLGA 216使一物联网开发人员选择与重用现有的开放源程序库(例如序列化器或对象关系映射器)成为可能,同时提供要使用的一抽象概念及程序库,所述抽象概念及程序库符合所述各种领域专家先前指定的一本体模型。
OLGA 206的各种实施例由以下本体程序库生成器子系统310组成。一引进器(Importer)将所述一个或多个输入本体300载入到存储器中,并且将它们加工为一单个优化的本体。一访客横跨所述引进器处理的所述本体的所有元素。所述访客处理一个或多个以下本体元素:类别、对象属性、数据属性、个体、文字及/或用于填充数据模型的各种公理,如图4所说明的示例所示。应当理解,所述引进者及/或访客中的任何一个或两者都可以与OWL应用程序编程介面互动以创建、操纵及/或序列化OWL本体。
一模型允许独立于任何目标程序库或编程语言的所述本体信息(T-Box)的输入。将所述模型与任何目标性的实现分开,可以在支持使用模板的另一种语言或依附程序库上提供OLGA 206灵活性。模型通过所述访客填充,并且由捕获一本体的所有元素的一表示层组成。所述模型的说明在图4中。所述模型的元素继承自所述超类节点,通过一国际化资源标识符(IRI)与一名称参数识别所述超类节点。
基于所述owl:SubClassOf,每个类别可能都没有(owl:Thing)或具有通过所述访客填充的多个超级类别。基于所述程式码生成器的所述类别国际化资源标识符(ClassIRI)提取例如名称空间、打包名称及类别名称的类别。OLGA 206所使用于生成基于浪漫网(RomanticWeb)的程式码的一示例模板可能如下所示:
<#if consolidatedImports??>
<#list consolidatedImports as import>
using${import};
</#list>
</#if>
namespace${Zclass.getPackageName()}
{
[Class(″${Zclass.Iri()}″)]
public interface I${Zclass.ClassName()}
<#if Zclass.SuperZClassList()??>
<#if Zclass.SuperZClassList()?has_content>:
<#list Zclass.SuperZClassList()as
SuperZClassCurrentElementOfList>
I${SuperZClassCurrentElementOfList.ClassName()}<#sep>,
</#list>
<#else>:IEntity
</#if>
</#if>
{
<#if listDataProperties??>
<#list listDataProperties as DataPropertyList>
[Property(″${DataPropertyList.DataProperty()}″)]
${DataPropertyList.RangeXSDType()}
${DataPropertyList
.DataPropertyShortForm()?capitalize}{get;set;}
</#list>
</#if>
}
<#if listObjectProperties??>
...
</#if>
}
在图4中说明的所述数据模型中,一个类别可以没有或有数个对象属性(ObjectProperty)。一访客可以为每个对象属性填充以下参数:一限制类型(owl:AllValuesFrom)、一可选的限制基数(owl:minCardinality)、与所述基数关联的一限制编号、所述属性的可能一个或多个特征(owl:TransitiveProperty)及一个可选表达式(owl:UnionOf)。一对象属性关联以下概念:
·类别对类别:一个或多个范围类别取决于所述限制类型与表达式。例如,一建筑物包含某些楼层。
·类别对个体:一个或几个范围个体取决于所述限制类型与表达式。例如,一温度量测类别(TemperatureMeasure Class)具有单位摄氏温度个体(Unit Degree_CelsiusIndividual)。
·个体对个体:当一个体与另一个体相关联时,所述访客不会填充所述限制类型、基数、表达与特征。例如,一建筑物1包含楼层1。为了所述程式码生成只有所述名称参数用在对象属性(ObjectProperty)。
一个体是一类别的一个实例。一访客基于其国际化资源标识符填充用于所述程式码生成器的名称空间及打包名称(packageName)。当一数据属性(DataProperty)与一个体相关联时,所述访客仅填充所述范围(文字)。但是,当所述数据属性(DataProperty)与一类别相关联时,除了所述先前的参数以外,所述访客还会填充所述限制类型及限制基数。
通过程序库依附性、一序列化器(Jackson-Jsonld,RDF4J)及/或对象关系映射器(浪漫网)可能设置模板。如上面的模板示例所示,每个模板可能根据一编程语言语法(Java,C#,Python或其他语言)包含编写的一程式码段,并且可能保存等待从所述数据模型填充的各种信息,例如与依附程序库相关的软件包(package)的所述引进声明,待生成的类别/介面的名称等。此外,每个所述数据与对象属性将使用取得者/设定者(getter/setter)函数转换为一参数。这些模板将通过所述生成器载入到存储器中,并且根据所述数据模型中填充的所述信息将完成所述程式码片段。
生成器可能基于所选的程序库依附性,其中足够的模板载入到存储器以从所述填充的数据模型启动程式码生成。生成器从所述数据模型将所述信息注入所述模板。所述模型与所述模板之间的分离提供灵活性,并且使支持一额外的程序库成为模板扩展的要事。在一选择的对象关系映射器(ORM)依附性的情况下,所述本体的每个类别与个体可能生成到一介面中。实际上,一对象关系映射器程序库提供允许开发人员将所述介面实例化为对象的一个工厂。OLGA 206通过生成扩展其他介面的介面处理多个继承与组合。因为潜在地仅需要生成所述介面,所以这使得程式码生成更有效。开发人员可能基于所述生成的介面利用所述工厂实例化他们的对象,因此,所述对象关系映射器的工厂将处理所述介面的多个扩展及其声明的函数。
因为一序列化器通常不提供实例化/实施一类别的一工厂,所以在选择的序列化器(Serializer)依附性的事件中,生成多个介面及它们的实施。通过将所述函数的实施从所述扩展介面传播到所述实施的类别中,以及依靠在其他编程语言中的Java(或类似)注释中的重写(Override)注释,OLGA 206处理多种继承与组合。
一旦所述程式码注入所述模板,则可使用编译器与打包器(packager)。一生成器创建包含所述期望的程式码的文件,然后可以开始编译与打包阶段。根据所述选择的程序库320及其编程语言,载入一适当的编译器。成功结束所述编译后,触发已编译的图像的所述打包以准备所述适当的格式(.jar,.dll,.whl或其他格式)。
一旦所述生成的程序库被打包,其可被引进并且准备被任何物联网开发人员使用。之后提供一SAREF生成的程序库的一示例,其中一物联网开发人员可以实例化与链接,引用一Idegree_Celsius,然后创建一室内测量以及链接到一温度传感器的一特定实例。然后,可以所述物联网开发人员实施的此类程式码可能部署在一云端连接的装置或网关上。在更为丰富资源的系统上,例如一建筑物管理服务器,可能使用依附于一对象关系映射器的一生成的程序库,因为此类系统可能主持可以与一本地资源描述框架仓程序库互动的本地应用程序。
图4根据基于本体的应用程序开发的模型驱动方法的各个实施例说明数据模型图的多个方面。图3中所说明的所述系统架构利用的所述数据模型的实施例可能包括捕获一本体的元素的一表示层。
OLGA 206可能部署在任何通用计算机系统上,并且使用多种语言、程序库与选件。一些示例包括引进与合并一个或多个相互依附的本体的所述OWL应用程序编程介面(API)。一访客模块利用所述OWL应用程序编程介面生成所述合并的本体并且填充图4显示的所述数据模型。一生成器使用自由制作者(FreeMarker)模板引擎,并且以自由制作者模板语言编写所述模板。自由制作者提供了一种有益的机制,将所述数据模型中的参数注入所述模板中以生成程式码文件。一编译器与打包器模块利用Maven插件,所述Maven插件取决于所述选则的编程语言、.Net3、Java4与Python5。OLGA 206生成一pom.xml文件,所述文件可与相应的Maven插件一起使用以进行编译与打包。应当理解,这些仅是说明性示例,并且基于采用及可用技术,所述支持的依附程序库预计随时间增长。
生成一本体程序库的SAREF实例化程式码的一示例:
public static void Create_SAREF_Topology()
{
//refer to the unit
Idegree_Celsius degreeCelius=context
.Create<Idegree_Celsius>(new Uri(clientURI+″#1″));
//Create a measurement from the factory
IMeasurement indoorTemperature=context
.Create<IMeasurement>(new Uri(clientURI+″#2″));
indoorTemperature.AddIsmeasuredin_Only_UnitOfMeasure
.Add(degreeCelius);
indoorTemperature.Hasvalue=32;
indoorTemperature.Hastimestamp=DateTime.UtcNow;
//Link it to Temperature
ITemperature temperature=context
.Create<ITemperature>(new Uri(clientURI+″#3″));
temperature.AddRelatestomeasurement_Only_Measurement
.Add(indoorTemperature);
//Create a Temperature Sensor
ITemperatureSensor temperatureSensor=context
.Create<ITemperatureSensor>(new Uri(clientURI+″#4″));
temperatureSensor.Hasmanufacturer=″CompanyA″;
temperatureSensor.Hasmodel=″M321″;
temperatureSensor
.Hasdescription=″Low range Zigee temperature sensor″;
//add its measurement
temperatureSensor.AddMakesmeasurement_Only_Measurement
.Add(indoorTemperature);
//commit data to factory
context.Commit();
}
如先前所详述,在本揭露的各种实施例中使用的任何通用计算机系统举例来说可能是通用计算机,例如基于英特尔奔腾型处理器、摩托罗拉PowerPC、Sun UltraSPARC,惠普PA-RISC处理器或任何其他类型的处理器的计算机。
举例来说,本揭露的各种实施例可能实施为在诸如图5所显示的一通用计算机系统500中执行的专用软件。所述计算机系统500可以包括一处理器520,所述处理器520连接到一个或多个存储装置530,例如一磁盘驱动器、存储器或用于存储数据的其他装置。存储器530通常用于在所述计算机系统500的操作期间存储程序与数据。所述计算机系统500还可以包括提供附加存储容量的一存储系统550。计算机系统500的组件可以通过一互连机制540耦合,所述互连机制可能包括一个或多个总线(bus)(例如,在同一机器内集成的组件之间)及/或一网络(例如,常驻于分开的离散机器上的组件之间)。所述互连机制540使通信(例如数据、指令)能够在系统500的系统组件之间交换。
计算机系统500还包括一个或多个输入设备510,例如一键盘、鼠标、轨迹球、麦克风、触摸屏,以及一个或多个输出设备560,例如打印装置,显示屏、扬声器。另外,计算机系统500可能包含一个或多个介面(未显示),所述介面连接计算机系统500到一通信网络(作为所述互连机制540的补充或替代)。
在图6中更详细地显示的所述存储系统550通常包括一计算机可读与可写的非易失性记录介质610,其中信号存储于所述非易失性记录介质610中,所述信号定义处理器所要执行的一程式,或者定义存储在介质610上或之中所述程式要处理的信息以执行与本文描述的实施例相关联的一个或多个功能。所述介质可能是例如一磁盘或一闪存。通常,在操作中,所述处理器使数据从所述非易失性记录介质610中读取到另一个存储器620中,相较于所述介质610,所述存储器620允许所述处理器更快地存取所述信息。所述存储器620通常是一易失性的随机存取存储器例如一动态随机存取存储器(DRAM)或静态存储器(SRAM)。如所示,它可以位于存储系统600中,或存储器系统530中。所述处理器520通常操纵所述集成电路存储器530、620中的所述数据,然后在处理完成后复制所述数据到所述介质610。已知的各种机制用于管理所述介质610与所述集成电路存储元件530、620之间的数据移动,并且本揭露不限于此。本揭露不限于一特定的存储器系统530或存储系统550。
所述计算机系统可能包括专门编程的专用硬件,例如一专用集成电路(ASIC)。本揭露的各方面可在软件、硬件或固件或其任何组合实施。此外,这样的方法动作、系统、系统元件及其组件可以实施为上述计算机系统的一部分或实施为独立的组件。
尽管通过示例的方式所显示的计算机系统500为可以在其上实践本揭露的各个方面的一种类型的计算机系统,应当理解,本揭露的多个方面不限于在如图6所示在所述计算机系统上实施。可以在具有图6所示的不同架构或组件的一台或多台计算机上实践本揭露的各个方面。此外,本揭露的实施例的功能或过程描述在此(或在权利要求中),当作为在处理器或控制器上执行时,这种描述旨在包括使用超过一个处理器或控制器执行功能的系统。
计算机系统500可以是使用一高级计算机编程语言的可编程的一通用计算机系统。计算机系统500也可能使用专门编程的专用硬件实施。在计算机系统500中,处理器520通常是商业上可用的处理器,例如从英特尔公司获得的众所周知的奔腾级处理器。还有许多其他处理器可用。这样的一个处理器通常执行一操作系统,所述操作系统可能是例如可从微软公司取得的Windows 95、Windows 98、Windows NT、Windows 2000、Windows ME、Windows XP、Vista、Windows 7、Windows 10或后代操作系统、可从苹果电脑公司取得的MACOS System X或后代操作系统、可从Sun Microsystems取得的Solaris操作系统、UNIX、Linux(任何发行版)或可从各种来源取得的后代操作系统。可能使用许多其他操作系统。
所述处理器与操作系统共同定义一个计算机平台,使用高级编程语言为所述计算机平台编写应用程式。应该理解,本揭露的实施例不限于一特定的计算机系统平台、处理器、操作系统或网络。而且,对于本领域技术人员而言显而易见的是,本揭露不限于一特定的编程语言或计算机系统。此外,应当理解,也可以使用其他适当的编程语言及其他适当的计算机系统。
所述计算机系统的一个或多个部分可以分布在耦合到一通信网络的一个或多个计算机系统上。举例来说,如上所述,确定可用功率容量的一计算机系统可以远离一系统管理器放置。这些计算机系统也可能是通用计算机系统。例如,本揭露的各个方面可以分布在一个或多个计算机系统中,所述计算机系统配置为向一个或多个客户端计算机提供一服务(例如,服务器),或者执行一总体任务作为一分布式系统的部分。举例来说,可能在一客户端服务器或多层系统上执行本揭露的各个方面,所述客户端-服务器或多层系统包括分布在一个或多个服务器系统之间的组件,所述服务器系统根据本揭露的各种实施例执行各种功能。这些组件可能是可执行的、中间的(例如,IL)或解译的(例如,Java)程式码,其使用一通信协议(例如,TCP/IP)在一通信网络(例如,网际网络)上进行通信。例如,一个或多个数据程序库服务器可能用于存储设备数据,例如预期的功率消耗,其用于设计与本公开的实施例相关联的布局。
应当理解,本揭露不限于在任何特定系统或系统组上执行。而且,应当理解,本揭露不限于任何特定的分布式架构、网络或通信协议。
可能使用对象导向的编程语言,例如SmallTalk、Java、C++、Ada或C#(C-Sharp)编程本揭露的各种实施例。也可能使用其他对象导向的编程语言。可选替地,可能使用功能、脚本(script)及/或逻辑编程语言,例如BASIC、ForTran、COBoL、TCL或Lua。可能在一非编程环境中实施本揭露的各个方面(例如,当以HTML、XML或XML或其他格式创建的文档在浏览器程序的窗口中查看时,所述文档呈现一图形用户界面(GUI)的多个方面或执行其他功能)。本揭露的各个方面可能实施为编程的或未编程的元件,或其任何组合。
以上讨论的本揭露的实施例中,描述的分析结果为实时提供的。如本领域技术人员所理解的,术语实时的使用并不意味着结果立即可用,而是迅速有效的给予设计者在短时间内尝试多种不同的设计的能力,例如几分钟。
因此,已经描述本揭露的至少一个实施例的几个方面,应当理解,本领域技术人员将容易想到各种改变、修改及改进。这样的改变,修改及改进旨在成为本揭露的部分,并且旨在落入本揭露的精神与范围内。因此,前面的描述与附图仅作为示例。
Claims (19)
1.一种基于本体模型的应用程序开发的方法,其特征在于:所述方法包括:
定义一本体模型;
基于所述本体模型生成一本体程序库;
部署所述本体程序库到一物联网系统;
基于部署到所述物联网系统的所述本体程序库生成一本体实例;
基于所述本体实例修改一物联网应用程序;以及
利用所述物联网应用程序管理所述物联网系统。
2.如权利权利要求1所述的方法,其特征在于:其中所述定义的本体模型由多个本体模型组成。
3.如权利要求1所述的方法,其特征在于:其中通过一自主系统定义所述本体模型。
4.如述权利要求3所述的方法,其特征在于:其中通过一机器学习系统定义所述本体模型。
5.如述权利要求1所述的方法,其特征在于:其中所述生成的本体程序库配置为一嵌入式物联网应用程序。
6.如权利要求1所述的方法,其特征在于:其中所述生成的本体程序库配置为基于一云端的物联网应用程序。
7.一种基于本体模型的应用程序开发的系统,其特征在于:所述系统包括:一处理器配置成:
定义一本体模型;
基于所述本体模型生成一本体程序库;
部署所述本体程序库到一物联网系统;
基于部署到所述物联网系统的所述本体程序库生成一本体实例;
基于所述本体实例修改一物联网应用程序;以及
利用所述物联网应用程序管理所述物联网系统。
8.如权利要求7所述的系统,其特征在于:其中所述定义的本体模型由多个本体模型组成。
9.如权利要求7所述的系统,其特征在于:其中通过一自主系统定义所述本体模型。
10.如权利要求9所述的系统,其特征在于:其中通过一机器学习系统定义所述本体模型。
11.如权利要求7所述的系统,其特征在于:其中所述生成的本体程序库配置为一嵌入式物联网应用程序。
12.如权利要求7所述的系统,其特征在于:其中所述生成的本体程序库配置为一基于云端的物联网应用程序。
13.一种基于本体模型的应用程序开发系统,其特征在于:所述系统包括:一网络计算机,包括:
一收发器,所述收发器通过一网络通信;
一存储器,所述存储器储存至少一指令集;以及
一个或多个处理器装置,所述处理器装置执行指令以完成动作,所述动作包括:
定义一本体模型;
基于所述本体模型生成一本体程序库;
部署所述本体程序库到一物联网系统;
基于部署到所述物联网系统的所述本体程序库生成一本体实例;
基于所述本体实例修改一物联网应用程序;以及
利用所述物联网应用程序管理所述物联网系统。
14.如权利要求13所述的系统,其特征在于:其中所述定义的本体模型由多个本体模型组成。
15.如权利要求13所述的系统,其特征在于:其中通过一自主系统定义所述本体模型。
16.如权利要求15所述的系统,其特征在于:其中通过一机器学习系统定义所述本体模型。
17.如权利要求13所述的系统,其特征在于:其中所述生成的本体程序库配置为一嵌入式物联网应用程序。
18.如权利要求13所述的系统,其特征在于:其中所述生成的本体程序库配置为基于一云端的物联网应用程序。
19.一种处理器可读的非暂时性存储介质,包括用于管理数据的多个指令,其中通过一个或多个硬件处理器对所述多个指令的执行完成多个动作,其特征在于:所述动作包括:
定义一本体模型;
基于所述本体模型生成一本体程序库;
部署所述本体程序库到一物联网系统;
基于部署到所述物联网系统的所述本体程序库生成一本体实例;
基于所述本体实例修改一物联网应用程序;以及
利用所述物联网应用程序管理所述物联网系统。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762530449P | 2017-07-10 | 2017-07-10 | |
US62/530,449 | 2017-07-10 | ||
PCT/US2018/041233 WO2019014101A1 (en) | 2017-07-10 | 2018-07-09 | MODEL-CONTROLLED METHODS FOR ONTOLOGY-BASED APPLICATION DEVELOPMENT |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111602115A true CN111602115A (zh) | 2020-08-28 |
Family
ID=63165452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880058388.7A Pending CN111602115A (zh) | 2017-07-10 | 2018-07-09 | 基于本体的应用程序开发的模型驱动方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11797275B2 (zh) |
EP (1) | EP3652638A1 (zh) |
CN (1) | CN111602115A (zh) |
WO (1) | WO2019014101A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117332069A (zh) * | 2023-11-16 | 2024-01-02 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112106081A (zh) * | 2018-05-07 | 2020-12-18 | 谷歌有限责任公司 | 提供综合机器学习服务的应用开发平台和软件开发套件 |
US11526420B2 (en) | 2019-01-22 | 2022-12-13 | Microsoft Technology Licensing, Llc | Techniques for training and deploying a model based feature in a software application |
EP4141648A1 (en) * | 2021-08-27 | 2023-03-01 | Siemens Aktiengesellschaft | Method and system for generating automation domain objects using knowledge from another automation domain object |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110035418A1 (en) * | 2009-08-06 | 2011-02-10 | Raytheon Company | Object-Knowledge Mapping Method |
CN102609402A (zh) * | 2012-01-12 | 2012-07-25 | 北京航空航天大学 | 一种基于实时策略的本体模型生成及管理装置及方法 |
EP2518620A1 (en) * | 2011-04-29 | 2012-10-31 | General Electric Company | Methods for code generation from semantic models and rules |
CN104699719A (zh) * | 2013-12-10 | 2015-06-10 | 中国科学院沈阳自动化研究所 | 一种物联网终端设备的语义化方法 |
US9335991B1 (en) * | 2015-09-18 | 2016-05-10 | ReactiveCore LLC | System and method for providing supplemental functionalities to a computer program via an ontology instance |
CN105760397A (zh) * | 2014-12-18 | 2016-07-13 | 中兴通讯股份有限公司 | 物联网本体模型处理方法及装置 |
US20160203234A1 (en) * | 2015-01-12 | 2016-07-14 | Verisign, Inc. | Systems and methods for ontological searching in an iot environment |
US20170094592A1 (en) * | 2014-05-20 | 2017-03-30 | Convida Wireless, Llc | Scalable data discovery in an internet of things (iot) system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7099885B2 (en) * | 2001-05-25 | 2006-08-29 | Unicorn Solutions | Method and system for collaborative ontology modeling |
US20140167917A2 (en) * | 2008-12-08 | 2014-06-19 | Infonaut, Inc. | Disease Mapping and Infection Control System and Method |
US8370863B2 (en) * | 2010-05-21 | 2013-02-05 | Nokia Corporation | Method and apparatus for integrating applications on demand to display and manipulate a semantic resource |
US8712947B2 (en) * | 2011-01-27 | 2014-04-29 | International Business Machines Corporation | Collaborative system for capture and reuse of software application knowledge and a method of realizing same |
US8666982B2 (en) * | 2011-10-06 | 2014-03-04 | GM Global Technology Operations LLC | Method and system to augment vehicle domain ontologies for vehicle diagnosis |
US10042619B2 (en) * | 2015-08-25 | 2018-08-07 | Cognizant Technology Solutions India Pvt. Ltd. | System and method for efficiently managing enterprise architecture using resource description framework |
US9864598B2 (en) * | 2015-09-18 | 2018-01-09 | ReactiveCore LLC | System and method for providing supplemental functionalities to a computer program |
US9372684B1 (en) * | 2015-09-18 | 2016-06-21 | ReactiveCore LLC | System and method for providing supplemental functionalities to a computer program via an ontology instance |
TW201715398A (zh) | 2015-10-20 | 2017-05-01 | Insyde Software Corp | 在作業系統下過濾系統資訊的方法及系統 |
US11095727B2 (en) * | 2015-12-22 | 2021-08-17 | Samsung Electronics Co., Ltd. | Electronic device and server for providing service related to internet of things device |
US10528612B2 (en) * | 2017-02-21 | 2020-01-07 | International Business Machines Corporation | Processing request documents |
-
2018
- 2018-07-09 US US16/629,718 patent/US11797275B2/en active Active
- 2018-07-09 CN CN201880058388.7A patent/CN111602115A/zh active Pending
- 2018-07-09 WO PCT/US2018/041233 patent/WO2019014101A1/en unknown
- 2018-07-09 EP EP18752897.1A patent/EP3652638A1/en not_active Withdrawn
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110035418A1 (en) * | 2009-08-06 | 2011-02-10 | Raytheon Company | Object-Knowledge Mapping Method |
EP2518620A1 (en) * | 2011-04-29 | 2012-10-31 | General Electric Company | Methods for code generation from semantic models and rules |
CN102609402A (zh) * | 2012-01-12 | 2012-07-25 | 北京航空航天大学 | 一种基于实时策略的本体模型生成及管理装置及方法 |
CN104699719A (zh) * | 2013-12-10 | 2015-06-10 | 中国科学院沈阳自动化研究所 | 一种物联网终端设备的语义化方法 |
US20170094592A1 (en) * | 2014-05-20 | 2017-03-30 | Convida Wireless, Llc | Scalable data discovery in an internet of things (iot) system |
CN105760397A (zh) * | 2014-12-18 | 2016-07-13 | 中兴通讯股份有限公司 | 物联网本体模型处理方法及装置 |
US20160203234A1 (en) * | 2015-01-12 | 2016-07-14 | Verisign, Inc. | Systems and methods for ontological searching in an iot environment |
US9335991B1 (en) * | 2015-09-18 | 2016-05-10 | ReactiveCore LLC | System and method for providing supplemental functionalities to a computer program via an ontology instance |
Non-Patent Citations (4)
Title |
---|
NUNO FERREIRA等: "An Ontology-based Approach to Model-Driven Software Product Lines", THE FOURTH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING ADVANCES, ICSEA 2009, pages 559 - 564 * |
SHUAI ZHAO等: "An Ontology-Based IoT Resource Model for Resources Evolution and Reverse Evolution", ICSOC\'12: PROCEEDINGS OF THE 10TH INTERNATIONAL CONFERENCE ON SERVICE-ORIENTED COMPUTING, pages 779 * |
丁亚飞;李冠宇;张慧;: "语义物联网中基于语义空间的语义协同方法研究", 计算机应用与软件, no. 02 * |
李志亮;邢国平;崔跃山;孙德翔;: "面向语义的物联网战场感知模型", 兵工自动化, no. 11 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117332069A (zh) * | 2023-11-16 | 2024-01-02 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
CN117332069B (zh) * | 2023-11-16 | 2024-03-19 | 深圳大学 | 基于大语言模型的建筑信息模型智能提取方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US11797275B2 (en) | 2023-10-24 |
WO2019014101A1 (en) | 2019-01-17 |
US20210149647A1 (en) | 2021-05-20 |
EP3652638A1 (en) | 2020-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Anglani et al. | Object-oriented modeling and simulation of flexible manufacturing systems: a rule-based procedure | |
CN111602115A (zh) | 基于本体的应用程序开发的模型驱动方法 | |
CN108027722A (zh) | 在编译和部署中动态更新应用 | |
CN112860260B (zh) | 一种在高校场景下基于web的跨平台应用构建工具及方法 | |
KR20080059561A (ko) | 오브젝트 구성을 위한 방법 및 확장가능 프레임워크 | |
Patel et al. | A model-driven development framework for developing sense-compute-control applications | |
CN115309562A (zh) | 算子调用系统、算子生成方法,电子设备 | |
Banerjee et al. | Programming paradigm and the internet of things | |
El Kaed et al. | A Model Driven Approach Accelerating Ontology-based IoT Applications Development. | |
Camilli et al. | Design-Time to Run-Time Verification of Microservices Based Applications: (Short Paper) | |
Gesing et al. | Workflows in a dashboard: a new generation of usability | |
CN115567526B (zh) | 数据监控方法、装置、设备及介质 | |
Peltonen et al. | LinkEdge: Open-sourced MLOps Integration with IoT Edge | |
CN117709400A (zh) | 层次化系统、运算方法、运算装置、电子设备及存储介质 | |
Dinkloh et al. | A tool for integrated design and implementation of conversations in multiagent systems | |
Harzenetter et al. | An Integrated Management System for Composed Applications Deployed by Different Deployment Automation Technologies | |
Kufner et al. | Restful State Machines and SQL Database | |
Dias | Integration of MLOps with IoT edge | |
Favre et al. | Reverse engineering of object-oriented code: an ADM approach | |
Dias et al. | LinkEdge: open-sourced MLOps integration with IoT edge | |
Saxon et al. | Opening the black-box of model transformation | |
Canzoneri | Exploring extensibility of DevSecOps Modelling Language (DOML) | |
van Sinderen et al. | Design of a model-driven platform for IoT event stream processing | |
Kim | Service Management and Model Driven Management | |
Huang et al. | Lifting Existing Applications to the Cloud: Abstractions, Separation of Responsibilities and Tooling Support. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200908 Address after: Massachusetts, USA Applicant after: SCHNEIDER ELECTRIC USA, Inc. Address before: Massachusetts, USA Applicant before: SCHNEIDER ELECTRIC USA, Inc. Applicant before: Shalbell Joseph Elkade Applicant before: Andre ponoulajadan |
|
TA01 | Transfer of patent application right |