SlideShare a Scribd company logo
1 of 13
Exploiting UML and Acceleo for
Developing Semantic Web Services
                 Jabu. Mtsweni
             School of Computing
       University of South Africa, Pretoria
            mtswejs@unisa.ac.za
Presentation Outline
1. INTRODUCTION

2. BACKGROUND

3. PROPOSED SOLUTION

4. USE CASE SCENARIO

5. DEMONSTRATION

6. RELATED WORK

7. CONCLUSION
1. INTRODUCTION
• Semantic Web Services (SWS) = Web Services (WS) +
  Semantic Web (SW)

• Ontologies (formal representation of knowledge) plays a key
  role in SWS.


• SWS promise a number of benefits:

   • Improved representation, sharing, searching,
     reasoning, and re-use of data and services on the Web
   • Automation of various tasks on the Web, such as service
     discovery, selection, execution, and monitoring
2.1 BACKGROUND

 SWS rely on semantic descriptions for automation
 Semantic descriptions describe non-functional and
  functional (capability and behaviour) aspects of
  services
 Semantic descriptions are normally derived from
  ontologies
 Models such as WSMO, OWL-S based on ontology
  languages (e.g. WSML and OWL) are available
 Other light-weight approaches, such as WSMO-Lite
  and SAWSDL are also available to define ontologies
  and descriptions
2.2 BACKGROUND (CHALLENGES)

 Steep learning curve of emerging semantic models
 Complex textual semantic description languages
 Current tools are tightly-coupled to specific
  languages
 Lack of support for the development of semantic
  services
 Lack of unified semantic service development tools
 Lack of Standardization (e.g. no common standard
  for defining semantic descriptions)
3. PROPOSED SOLUTION

• The development process of semantic services
  comprises a number of tasks
   • service implementation
   • syntactic descriptions
   • semantic descriptions
   • Deployment
   • Publication

• Without the necessary tools to support these tasks
  the development process of semantic services
  could be prolonged
3.2 PROPOSED SOLUTION
3.3 PROPOSED SOLUTION
                     Extract of the Acceleo Script (UML2WSMO)

   1.    <%
   2.    metamodel http://www.eclipse.org/uml2/2.0.0/UML
   3.    import org.acceleo.modules.uml2.services.Uml2Services
   4.    import org.acceleo.modules.uml2.services.Common
   5.    %>
   6.    <%--This template generate a WSMO domain ontologies--%>
   7.    <%script type="Class" name="fullFilePath"%>
   8.    <%if (hasStereotype("WSMO") ){%>
   9.    wsml/ontologies/<%name.toLowerCase()%>Ontology.wsml
   10.   <%}%>
   11.   <%script type="Class" name="ontologies" file="<%fullFilePath%>"%>
   12.   <%if (hasStereotype("WSMO") ){%>
   13.   wsmlVariant _http://www.wsmo.org/wsml/wsml-syntax/wsml-flight
   14.   concept <%name%>
   15.   nonFunctionalProperties
   16.   dc#description hasValue "{add description of the concept}"
   17.   endNonFunctionalProperties
   18.   <%for (ownedAttribute) {%>
   19.   <%name%> ofType _<%type.name%>
   20.   <%}%>
   21.   <%for (ownedOperation) {%>
4. USE CASE SCENARIO
5. DEMONSTRATIONS
5. RELATED WORK

• There are a number of solutions that have been proposed to
  date for facilitating the development of semantic services.
   • OWL-S IDE [by Srinivasan, Paolucci, and Sycara ]
      • Translates Java code into WSDL
      • WSDL to skeletal OWL-S ontologies
      • Only Supports OWL-S
      • Generation of Semantic descriptions lacks details
         needed for automation
   • Reverse Engineering [by Bensaber and Malki]
      • Follows model-driven approach
      • WSDL translated to UML class and activity diagrams
      • Diagrams then converted to OWL-S descriptions
      • Relies heavily on syntactic descriptions
6. CONCLUSION
 Semantic services are seen as the main building block for the
  Next Generation of the Web
 The driving philosophy behind WS & SWS development is
  programmer’s productivity.
 Simpler and Efficient tools are then necessary for a facilitating
  the implementation of semantic technologies
 The proposed approach is viewed as one possible solution in
  dealing with the complexities and restrictions involved in
  implementing semantic services
 Further research points to improving the suggested approach
  by incorporating software agents; which are relevant for
  processing the semantic descriptions in an autonomous,
  proactive, and reactive manner on Web
Thank you!

Questions – Comments – Suggestions -
           Collaborations
             Work E-mail: mtswejs@unisa.ac.za
             Private E-mail: mtswenij@gmail.com

                    Twitter: @JabuMTS




                     13

More Related Content

Similar to UML Acceleo Semantic Web Services

Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...
Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...
Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...iosrjce
 
Model-Driven Development of Web Applications
Model-Driven Development of Web ApplicationsModel-Driven Development of Web Applications
Model-Driven Development of Web Applicationsidescitation
 
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software ArchitectureIvano Malavolta
 
Guia 2-examen-de-ingles
Guia 2-examen-de-inglesGuia 2-examen-de-ingles
Guia 2-examen-de-inglesLiz Castro B
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
 
Trending Popular JavaScript Frameworks.pptx
Trending Popular JavaScript Frameworks.pptxTrending Popular JavaScript Frameworks.pptx
Trending Popular JavaScript Frameworks.pptxSophia Adams
 
Jurnal e-learning management system using service oriented architecture
Jurnal   e-learning management system using service oriented architectureJurnal   e-learning management system using service oriented architecture
Jurnal e-learning management system using service oriented architectureRatzman III
 
Stanfy - Crafting Custom Software Systems
Stanfy - Crafting Custom Software SystemsStanfy - Crafting Custom Software Systems
Stanfy - Crafting Custom Software SystemsDmytro Karamshuk
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UI General Methodology for developing UML models from UI
General Methodology for developing UML models from UI ijwscjournal
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 
Soa Driven Project Management
Soa Driven Project ManagementSoa Driven Project Management
Soa Driven Project ManagementTerry Cho
 
Cross-Lingual Web API Classification
Cross-Lingual Web API ClassificationCross-Lingual Web API Classification
Cross-Lingual Web API Classificationmmaleshkova
 
Final Total Preliminary Report
Final Total Preliminary ReportFinal Total Preliminary Report
Final Total Preliminary ReportMrugen Deshmukh
 
SRIRAM THOTA_JAVA_RES
SRIRAM THOTA_JAVA_RESSRIRAM THOTA_JAVA_RES
SRIRAM THOTA_JAVA_RESSriram Thota
 

Similar to UML Acceleo Semantic Web Services (20)

R01765113122
R01765113122R01765113122
R01765113122
 
Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...
Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...
Design and Implementation of SOA Enhanced Semantic Information Retrieval web ...
 
Model-Driven Development of Web Applications
Model-Driven Development of Web ApplicationsModel-Driven Development of Web Applications
Model-Driven Development of Web Applications
 
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
 
Guia 2-examen-de-ingles
Guia 2-examen-de-inglesGuia 2-examen-de-ingles
Guia 2-examen-de-ingles
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture
 
Ashok_Resume
Ashok_ResumeAshok_Resume
Ashok_Resume
 
Trending Popular JavaScript Frameworks.pptx
Trending Popular JavaScript Frameworks.pptxTrending Popular JavaScript Frameworks.pptx
Trending Popular JavaScript Frameworks.pptx
 
Jurnal e-learning management system using service oriented architecture
Jurnal   e-learning management system using service oriented architectureJurnal   e-learning management system using service oriented architecture
Jurnal e-learning management system using service oriented architecture
 
Stanfy - Crafting Custom Software Systems
Stanfy - Crafting Custom Software SystemsStanfy - Crafting Custom Software Systems
Stanfy - Crafting Custom Software Systems
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UI General Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
Resume
ResumeResume
Resume
 
Soa Driven Project Management
Soa Driven Project ManagementSoa Driven Project Management
Soa Driven Project Management
 
Cross-Lingual Web API Classification
Cross-Lingual Web API ClassificationCross-Lingual Web API Classification
Cross-Lingual Web API Classification
 
Final Total Preliminary Report
Final Total Preliminary ReportFinal Total Preliminary Report
Final Total Preliminary Report
 
SRIRAM THOTA_JAVA_RES
SRIRAM THOTA_JAVA_RESSRIRAM THOTA_JAVA_RES
SRIRAM THOTA_JAVA_RES
 
Resume
ResumeResume
Resume
 

UML Acceleo Semantic Web Services

  • 1. Exploiting UML and Acceleo for Developing Semantic Web Services Jabu. Mtsweni School of Computing University of South Africa, Pretoria mtswejs@unisa.ac.za
  • 2. Presentation Outline 1. INTRODUCTION 2. BACKGROUND 3. PROPOSED SOLUTION 4. USE CASE SCENARIO 5. DEMONSTRATION 6. RELATED WORK 7. CONCLUSION
  • 3. 1. INTRODUCTION • Semantic Web Services (SWS) = Web Services (WS) + Semantic Web (SW) • Ontologies (formal representation of knowledge) plays a key role in SWS. • SWS promise a number of benefits: • Improved representation, sharing, searching, reasoning, and re-use of data and services on the Web • Automation of various tasks on the Web, such as service discovery, selection, execution, and monitoring
  • 4. 2.1 BACKGROUND  SWS rely on semantic descriptions for automation  Semantic descriptions describe non-functional and functional (capability and behaviour) aspects of services  Semantic descriptions are normally derived from ontologies  Models such as WSMO, OWL-S based on ontology languages (e.g. WSML and OWL) are available  Other light-weight approaches, such as WSMO-Lite and SAWSDL are also available to define ontologies and descriptions
  • 5. 2.2 BACKGROUND (CHALLENGES)  Steep learning curve of emerging semantic models  Complex textual semantic description languages  Current tools are tightly-coupled to specific languages  Lack of support for the development of semantic services  Lack of unified semantic service development tools  Lack of Standardization (e.g. no common standard for defining semantic descriptions)
  • 6. 3. PROPOSED SOLUTION • The development process of semantic services comprises a number of tasks • service implementation • syntactic descriptions • semantic descriptions • Deployment • Publication • Without the necessary tools to support these tasks the development process of semantic services could be prolonged
  • 8. 3.3 PROPOSED SOLUTION Extract of the Acceleo Script (UML2WSMO) 1. <% 2. metamodel http://www.eclipse.org/uml2/2.0.0/UML 3. import org.acceleo.modules.uml2.services.Uml2Services 4. import org.acceleo.modules.uml2.services.Common 5. %> 6. <%--This template generate a WSMO domain ontologies--%> 7. <%script type="Class" name="fullFilePath"%> 8. <%if (hasStereotype("WSMO") ){%> 9. wsml/ontologies/<%name.toLowerCase()%>Ontology.wsml 10. <%}%> 11. <%script type="Class" name="ontologies" file="<%fullFilePath%>"%> 12. <%if (hasStereotype("WSMO") ){%> 13. wsmlVariant _http://www.wsmo.org/wsml/wsml-syntax/wsml-flight 14. concept <%name%> 15. nonFunctionalProperties 16. dc#description hasValue "{add description of the concept}" 17. endNonFunctionalProperties 18. <%for (ownedAttribute) {%> 19. <%name%> ofType _<%type.name%> 20. <%}%> 21. <%for (ownedOperation) {%>
  • 9. 4. USE CASE SCENARIO
  • 11. 5. RELATED WORK • There are a number of solutions that have been proposed to date for facilitating the development of semantic services. • OWL-S IDE [by Srinivasan, Paolucci, and Sycara ] • Translates Java code into WSDL • WSDL to skeletal OWL-S ontologies • Only Supports OWL-S • Generation of Semantic descriptions lacks details needed for automation • Reverse Engineering [by Bensaber and Malki] • Follows model-driven approach • WSDL translated to UML class and activity diagrams • Diagrams then converted to OWL-S descriptions • Relies heavily on syntactic descriptions
  • 12. 6. CONCLUSION  Semantic services are seen as the main building block for the Next Generation of the Web  The driving philosophy behind WS & SWS development is programmer’s productivity.  Simpler and Efficient tools are then necessary for a facilitating the implementation of semantic technologies  The proposed approach is viewed as one possible solution in dealing with the complexities and restrictions involved in implementing semantic services  Further research points to improving the suggested approach by incorporating software agents; which are relevant for processing the semantic descriptions in an autonomous, proactive, and reactive manner on Web
  • 13. Thank you! Questions – Comments – Suggestions - Collaborations Work E-mail: mtswejs@unisa.ac.za Private E-mail: mtswenij@gmail.com Twitter: @JabuMTS 13

Editor's Notes

  1. Thus, in this paper we propose the approach presented in the Figure as one possible solution for facilitating the process of building semantic services by exploiting existing and matured technologies. Creation of service models representing the structure and behavior of targeted semantic services and domain knowledge. For this purpose, UML tools embedded within Eclipse can be used to design class diagrams and activity diagrams. The designed service models could also be annotated using pre-defined keywords or a generic UML profile that comprises stereotypes and tagged values for different semantic description languages, such as WSMO or OWL-S. In this manner, a single model could be used to generate semantic descriptions based on different languages. (2) After compatible models have been designed using the UML2 SDK for Eclipse or even imported from external sources and annotated; automatic model transformations using Acceleo transformation scripts compatible with the Eclipse environment could follow. Acceleo transformation rules that were implemented for the proposed solution.
  2. Table shows a snippet of an Acceleo script developed for transforming annotated UML class diagrams into WSMO domain ontologies. As it can be noted in Line 8, the script would only generate WSMO-compliant ontologies if the class diagram is annotated with the WSMO keyword. The Acceleo transformation script could also be easily edited to support new requirements (e.g. new semantic description language).
  3. In this section, the value of the proposed approach is demonstrated through a use-case scenario adapted from a Sixth EU Framework Programme project called DIP [29]. The scenario is based on developing semantic services for a Mortgage Comparator Web application. The application is intended to compare mortgage loans offered by different financial institutions for a specific property that an ordinary individual would like to buy. Based on the first step of the suggested solution in the previous slides, an abstract service model in the Figure was designed using the UML2 SDK for Eclipse, and subsequently utilized by the Acceleo transformation scripts for automatically generating all the appropriate skeletons and code stubs. The &lt;&lt;RESTful&gt;&gt; and &lt;&lt;WSMO&gt;&gt; UML stereotypes were exploited to annotate the service model in order to aid the model transformers to automatically generate RESTful services and WSMO descriptions as planned.
  4. This slides demonstrates the Java code, and the partial WSMO domain ontologies generated through the model2semantics transformation script. Only the domain and service ontologies of classes annotated with the keyword &lt;&lt;WSMO&gt;&gt; are generated in this case. The process of generating OWL-S compliant descriptions would only require an annotation of service models with the &lt;&lt;OWL-S&gt;&gt; keywords. Other languages can easily be accommodated by defining additional mappings and transformation rules. These could be integrated within the Eclipse environment without disrupting any previously defined transformation rules.
  5. For more related work refer to the paper.