Natural Semantics Based Tools for Semantic Web with Application to Product Models Adrian Pop Programming Environments Laboratory (PELAB) Department of.

Slides:



Advertisements
Similar presentations
Dr. Leo Obrst MITRE Information Semantics Information Discovery & Understanding Command & Control Center February 6, 2014February 6, 2014February 6, 2014.
Advertisements

1 ICS-FORTH & Univ. of Crete SeLene November 15, 2002 A View Definition Language for the Semantic Web Maganaraki Aimilia.
Modelling with expert systems. Expert systems Modelling with expert systems Coaching modelling with expert systems Advantages and limitations of modelling.
TU e technische universiteit eindhoven / department of mathematics and computer science Modeling User Input and Hypermedia Dynamics in Hera Databases and.
The 20th International Conference on Software Engineering and Knowledge Engineering (SEKE2008) Department of Electrical and Computer Engineering
CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Debugging Natural Semantics Specifications Adrian Pop and Peter Fritzson Programming Environment Laboratory Department of Computer and Information Science.
Peter Fritzson 1 MetaModelica for Meta-Modeling and Model Transformations Peter Fritzson, Adrian Pop, Peter Aronsson OpenModelica Course at INRIA, 2006.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Using the Semantic Web to Construct an Ontology- Based Repository for Software Patterns Scott Henninger Computer Science and Engineering University of.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
ModelicaXML A Modelica XML representation with Applications Adrian Pop, Peter Fritzson Programming Environments Laboratory Linköping University.
Composition of XML Dialects A ModelicaXML case study Adrian Pop, Ilie Savga, Uwe Aßmann, Peter Fritzson Programming Environments Laboratory Linköping University.
An Eclipse-based Integrated Environment for Developing Executable Structural Operational Semantics Specifications Adrian Pop and Peter Fritzson Programming.
A Portable Debugger for Algorithmic Modelica Code Adrian Pop, Peter Fritzson Programming Environments Laboratory (PELAB) Department of Computer and Information.
An framework for model-driven product design and development using Modelica Adrian Pop, Olof Johansson, Peter Fritzson Programming Environments Laboratory.
Application architectures
An Intelligent Broker Approach to Semantics-based Service Composition Yufeng Zhang National Lab. for Parallel and Distributed Processing Department of.
The Semantic Web Week 12 Term 1 Recap Lee McCluskey, room 2/07 Department of Computing And Mathematical Sciences Module Website:
ReQuest (Validating Semantic Searches) Norman Piedade de Noronha 16 th July, 2004.
February 10, 2004 Overview Adrian Pop  Programming Environments Laboratory  Linköping University  
From SHIQ and RDF to OWL: The Making of a Web Ontology Language
Describing Syntax and Semantics
Contributions to Meta-Modeling Tools and Methods Adrian Pop Programming Environments Laboratory.
Application architectures
Semantic Web Technologies Lecture # 2 Faculty of Computer Science, IBA.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Chapter 1 Introduction Dr. Frank Lee. 1.1 Why Study Compiler? To write more efficient code in a high-level language To provide solid foundation in parsing.
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
MathCore Engineering AB Experts in Modeling & Simulation WTC.
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
Semantic Web and Natural Semantics Adrian Pop IDA/PELAB
©Ferenc Vajda 1 Semantic Grid Ferenc Vajda Computer and Automation Research Institute Hungarian Academy of Sciences.
A Context Model based on Ontological Languages: a Proposal for Information Visualization School of Informatics Castilla-La Mancha University Ramón Hervás.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
Semantically Processing The Semantic Web Presented by: Kunal Patel Dr. Gopal Gupta UNIVERSITY OF TEXAS AT DALLAS.
SKOS. Ontologies Metadata –Resources marked-up with descriptions of their content. No good unless everyone speaks the same language; Terminologies –Provide.
© Geodise Project, University of Southampton, Knowledge Management in Geodise Geodise Knowledge Management Team Barry Tao, Colin Puleston, Liming.
PHS / Department of General Practice Royal College of Surgeons in Ireland Coláiste Ríoga na Máinleá in Éirinn Knowledge representation in TRANSFoRm AMIA.
Mining the Biomedical Research Literature Ken Baclawski.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
1 Class exercise II: Use Case Implementation Deborah McGuinness and Peter Fox CSCI Week 8, October 20, 2008.
SSQSA present and future Gordana Rakić, Zoran Budimac Department of Mathematics and Informatics Faculty of Sciences University of Novi Sad
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Software Development Introduction
Ontology-Based Interoperability Service for HL7 Interfaces Implementation Carolina González, Bernd Blobel and Diego López eHealth Competence Center, Regensurg.
A Portrait of the Semantic Web in Action Jeff Heflin and James Hendler IEEE Intelligent Systems December 6, 2010 Hyewon Lim.
CS223: Software Engineering
WonderWeb. Ontology Infrastructure for the Semantic Web. IST Project Review Meeting, 11 th March, WP2: Tools Raphael Volz Universität.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
FUNCTIONAL PROGRAMING AT WORK - HASKELL AND DOMAIN SPECIFIC LANGUAGES Dr. John Peterson Western State Colorado University.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
2000 Research Overview Dr. Kim Mens Programming Technology Lab Vrije Universiteit Brussel.
Mathematical Service Matching Using Description Logic and OWL Kamelia Asadzadeh Manjili
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
1 Ontological Foundations For SysML Henson Graves September 2010.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Web Ontology Language for Service (OWL-S)
Evaluating Compuware OptimalJ as an MDA tool
Software Architecture & Design
Presentation transcript:

Natural Semantics Based Tools for Semantic Web with Application to Product Models Adrian Pop Programming Environments Laboratory (PELAB) Department of Computer and Information Science (IDA) Linköping University (LiU) CUGS thesis proposal

June 07, Outline  Introduction  Research Track  Thesis goals  short term goal  long term goal  Thesis Plan  Conclusions

June 07, Introduction  The research combines several computer science areas  Compilers, Debuggers, Compiler generation for high level declarative programming languages (Natural Semantics)  Semantic Web (Description Logics)  Integrated product design using Modeling and Simulation with Modelica  Involvement in Research Projects  SWEBPROD (Semantic Web for Products)  REWERSE (Reasoning on the web with rules and semantics)  SECD (Systems Engineering & Computational System Design)

June 07, Thesis Goal  short term goal  practical tool implementation for Semantic Web languages using Natural Semantics  long term goal  adapt and integrate Semantic Web technologies into a framework for model- driven product design and development

June 07, Research Track  Preliminary results  Adrian Pop, Peter Fritzson, ModelicaXML: A ModelicaXML representation with Applications, International Modelica Conference, 2003  Adrian Pop, Ilie Savga, Uwe Assmann, Peter Fritzson, Composition and XML dialects: A ModelicaXML case study, Software Composition Workshop, 2004  Adrian Pop, Olof Johansson, Peter Fritzson, An Integrated Framework for Model-Driven Product Design and Development using Modelica, Conference on Simulation and Modeling, 2004  Systems  a Relational Meta-Language (RML) debugger  ModelicaXML toolbox

June 07, Modelica  Declarative language  Equations and mathematical functions allow acausal modeling, high level specification, increased correctness  Multi-domain modeling  Combine electrical, mechanical, thermodynamic, hydraulic, biological, control, event, real-time, etc...  Everything is a class  Strongly typed object-oriented language with a general class concept, Java & Matlab like syntax  Visual component programming  Hierarchical system architecture capabilities  Efficient, non-proprietary  Efficiency comparable to C; advanced equation compilation, e.g equations

June 07, ModelicaXML Modelica code Modelica XML Modelica Parser read output class Test "comment" Real x; Real xdot; equation xdot = der(x); end Test; <definition ident= "Test" comment="comment"> <component ident="x" type="Real" visibility="public" /> <component ident="xdot" type="Real" visibility="public" />... modelicaxm l definition componen t equation

June 07, ModelicaXML  Advantages  Declarative query languages for XML can be used to query the XML representation  The XML representation can be accessed via standard interfaces like Document Object Model (DOM) from practically any programming language  Analysis of Modelica models (model checkers and validators)  Pretty printing (un-parsing)  Translation between Modelica and other modeling languages (interchange)  Query and transformation of Modelica models  Certain models could be translated to and from the Unified Modeling Language (UML)  Shortcommings  XML can represent only structure, no semantics  Initial ideas on using Semantic Web  to represent some of the Modelica semantics

June 07, ModelicaXML composition and transformation  Why the need for Modelica composition and transformation?  Interoperability between existing modeling languages or CAD tools and Modelica  Automatic generation of different version of models from product specifications. Choosing best design based on automatic simulation.  Automatic configuration of models using external sources (XML, databases, files)  Protection of intellectual property through obfuscation  Fine grain support for library developers

June 07, Semantic Web  The information in the current web:  has meaning for human only  is not machine processable  Semantic Web brings:  semi-structured information  means to add more than structure (semantics/constrains) on data  languages: XML, XMLSchema, RDF, RDFS, OWL  reasoning and inferences services (Description Logics): subsumption, classification, coherence checking, etc  integration and reuse of knowledge by using shared ontologies

June 07, ModelicaXML and Semantic Web  The benefit of using Semantic Web languages for Modelica  Models could be automaticaly translated between modeling tools  Software information systems (SIS) could more easily be constructed for Modelica, facilitating model understanding and information finding  Model consistency could be checked

June 07, Natural Semantics  Based on  Gordon Plotkin's Structural Operational Semantics (SOS)  Gentzen's Sequent Calculus for Natural Deduction.  "Natural Semantics" (NS)  term by Gilles Kahn  formalism widely used for specifications of:  type systems  programming languages

June 07, Natural Semantics - Syntax  Hi are hypotheses (environments)  Ti are terms (pieces of abstract syntax)  Ri are results (types, run-time values, changed environments)  Hj |- Tj : Rj are sequents  Premises or preconditions are above the line  Conclusion is below the line  Condition on the side if exists must be satisfied

June 07, Natural Semantics vs Relational Meta–Language (RML) RML has the same visual syntax as NS rule RelName1(H1,T1) => R1 &... RelNameN(Hn,Tn) => Rn & RelName(H, T) => R RML language properties  Separation of input and output arguments/results  Statically strongly typed  Polymorphic type inference  Efficient compilation of pattern-matching RML debugger  based on source code instrumentation  some support from the runtime system

June 07, Short term goal  reasoning tools for Semantic Web languages (OWL Lite/DL)  implementation in RML of Natural Semantics specifications for Description Logics reasoning tasks  use the RML debugger to output explanation of such tasks  possible problems:  scalability  RML has some limitations (formal arguments to relations, number of constructors in datatypes)  why?  to have our own reasoning toolbox and to be able to experiment with alternative semantics and means to express the dynamic semantics implemented in RML

June 07, Long term goal  integrating Semantic Web technologies with Product Design and Modeling and Simulation tools  model interchange  use of already defined vocabularies (taxonomies) and ontologies in the product design process  facilitating several tasks in the product development management  consistency checking (documents, components, forms, etc)  searching and information retrieval (large distributed libraries)  composition and interoperability  traceability (from requirements to design to product)  comparison (version management etc)

June 07, Thesis Plan DateTask The beginning of PhD studies The ModelicaXML meta-model for Modelica (paper accepted) Composition and transformation of XML dialects: A ModelicaXML case study (paper accepted) Release of the first version of RML debugger (work in progress) An integrated framework for model-driven product design and development using Modelica (paper submitted) RML prototype of basic reasoning tasks in OWL Lite Evaluation of the RML prototype and improvements (also improvements of RML debugger based on feedback from the OpenModelica project) Article on using RML to perform reasoning Lic. thesis Integration of our toolbox with the work of the partners involved in current research projects Research on novel methodologies to improve product design Experimenting with these new methodologies in our framework for product design Thesis

June 07, End Thank you! Questions?

June 07, Relational Meta-Language debugger

June 07, Integrated Product Development

June 07, RML example: the Exp language  Abstract syntax datatype Exp = INTconst of int | PLUSop of Exp * Exp | SUBop of Exp * Exp | MULop of Exp * Exp | DIVop of Exp * Exp | NEGop of Exp Exp: 10 – 12/3 SUBop INTconst DIVop INTconst

June 07, RML example: the Exp language  Relation eval relation eval: Exp => int = axiom eval(INTconst(ival)) => ival rule eval(e1) => v1 & eval(e2) => v2 & int_add(v1,v2) => v eval (PLUSop(e1,e2)) => v3 rule eval(e1) => v1 & eval(e2) => v2 & int_sub(v1,v2) => v eval (SUBop(e1,e2)) => v3 rule eval(e1) => v1 & eval(e2) => v2 & int_mul(v1,v2) => v eval (MULop(e1,e2)) => v3 rule eval(e1) => v1 & eval(e2) => v2 & int_div(v1,v2) => v eval (DIVop(e1,e2)) => v3 rule eval(e) => v1 & int_neg(v1) => v eval (NEGop(e)) => v2 end