SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
‫أكاديمية الحكومة اإللكترونية الفلسطينية‬
         The Palestinian eGovernment Academy
                       www.egovacademy.ps




                       Tutorial III:
Process Integration and Service Oriented Architectures


                   Session 15
                     UDDI

                      Prepared By

                 Mohammed Aldasht


                          PalGov © 2011                        1
About

This tutorial is part of the PalGov project, funded by the TEMPUS IV program of the
Commission of the European Communities, grant agreement 511159-TEMPUS-1-
2010-1-PS-TEMPUS-JPHES. The project website: www.egovacademy.ps
Project Consortium:
             Birzeit University, Palestine
                                                           University of Trento, Italy
             (Coordinator )


             Palestine Polytechnic University, Palestine   Vrije Universiteit Brussel, Belgium


             Palestine Technical University, Palestine
                                                           Université de Savoie, France

             Ministry of Telecom and IT, Palestine
                                                           University of Namur, Belgium
             Ministry of Interior, Palestine
                                                           TrueTrust, UK
             Ministry of Local Government, Palestine


Coordinator:
Dr. Mustafa Jarrar
Birzeit University, P.O.Box 14- Birzeit, Palestine
Telfax:+972 2 2982935 mjarrar@birzeit.eduPalGov © 2011
                                                                                                 2
© Copyright Notes
Everyone is encouraged to use this material, or part of it, but should properly
cite the project (logo and website), and the author of that part.


No part of this tutorial may be reproduced or modified in any form or by any
means, without prior written permission from the project, who have the full
copyrights on the material.




                   Attribution-NonCommercial-ShareAlike
                                CC-BY-NC-SA

This license lets others remix, tweak, and build upon your work non-
commercially, as long as they credit you and license their new creations
under the identical terms.

                                    PalGov © 2011                                 3
Tutorial Map



           Intended Learning Objectives
A: Knowledge and Understanding
                                                                                    Title                    T    Name
 3a1: Demonstrate knowledge of the fundamentals of middleware.
 3a2: Describe the concept behind web service protocols.
                                                                     Session0: Syllabus and overview         0   Aldasht
 3a3: Explain the concept of service oriented architecture.          Sesson1: Introduction to SOA            2   Aldasht
 3a4: Explain the concept of enterprise service bus.                 Session2: XML namespaces & XML schema   2   Aldasht
 3a5: Understanding WSDL service interfaces in UDDI.                 Session 3: Xpath & Xquery               4   Romi
B: Intellectual Skills                                               Session4: REST web services             3   M. Melhem
 3b1: Design, develop, and deploy applications based on Service      Session5: Lab2: Practice on REST        3   M. Melhem
 Oriented Architecture (SOA).                                        Session 6: SOAP                         2   Aldasht
 3b2: use Business Process Execution Language (BPEL).                Session 7: WSDL                         3   Aldasht
 3b3: using WSDL to describe web services.
                                                                     Session8: Lab 3: WSDL practice          3   Aldasht
C: Professional and Practical Skills                                 Session9: ESB                           4   Aldasht
 3c1: setup, Invoke, and deploy web services using integrated
                                                                     Session10: Lab4: Practice on ESB        4   Aldasht
 development environment.
                                                                     Session11: integration patterns         4   M. Melhem
 3c2: construct and use REST and SOAP messages for web
 services communication.                                             Session12: Lab5: integration patterns   4   M. Melhem
D: General and Transferable Skills                                   Session13: BPEL                         3   Aldasht
 d1: Working with team.                                              Session14: Lab6: Practice on BPEL       3   Aldasht
 d2: Presenting and defending ideas.                                 Session15: UDDI                         2   Aldasht
 d3: Use of creativity and innovation in problem solving.
 d4: Develop communication skills and logical reasoning abilities.
Session 15: UDDI.
Session ILOs
After completing this module students will
  be understood WSDL service interfaces in
  UDDI




                 PalGov © 2011           5
Session Outlines


   Introduction
   UDDI registry structure
   Linking WSDL documents to a
    UDDI registry
   Private versus public UDDI
    registers




              PalGov © 2011       6
Overview

• A service discovery platform UDDI, offers a global
  repository containing [2]:
  – Service endpoint implementation.
  – Interface information
  – Business-level information.
• A UDDI registry may refer to WSDL document
                  Web Services Application Code

              UDDI API     WSDL API        SOAP API

               UDDI          WSDL           SOAP

               XML / XML namespace / XML Schema

                           Source, [2]

                           PalGov © 2011              7
Introduction

• Universal Description, Discovery and Integration (UDDI)
  is a platform-independent, (XML)-based registry for
  businesses worldwide to list themselves on the Internet [1].
• UDDI is an open industry initiative, sponsored by the
  Organization for the Advancement of Structured Information
  Standards (OASIS).
• UDDI originally proposed as a core Web service standard.
• UDDI provides a mechanism to register and locate web
  service applications.




                          PalGov © 2011                     8
Introduction, cont.

• UDDI is designed to be interrogated by SOAP
  messages and to provide access to WSDL
  documents.
• UDDI registry may offer [2]:
  – Info about businesses and organizations offering
    web services.
  – Descriptions of web services that these
    organizations provide.
  – Info about technical interfaces to these web
    services.


                     PalGov © 2011                9
Session Outlines


   Introduction
   UDDI registry structure
   Linking WSDL documents to a
    UDDI registry
   Private versus public UDDI
    registers




              PalGov © 2011       10
UDDI registry structure

• UDDI service registry data model provides two types of
  info:
   – Business info about web services and provider.
   – Technical info about web service binding.
• It is composed of 5 hierarchically organized data types:
   – business entity: a top object contains info about web
     service provider, like name.
   – business service: a data structure to represent a
     collection of correlated web services.
   – binding template: exposes a service endpoint address
     to access a distinct web service.
   – tModel: exposes web service interface information.
   – publisher assertion: supports publishing of business
     relationships between business entities.

                            PalGov © 2011                    11
Containment and reference relationship of
       UDDI data structures
• In the UDDI data model hierarchy:
   – One binding template may refer to several tModel
     “Technical Model” entities.
   – Different binding templates may refer to the same tModel
     entities




                           Source, [2]
                           PalGov © 2011                        12
Identification of Information Entities

• Individual UDDI information entities must be
  uniquely identified through the value of a key
  attribute.
• The table below lists the key attribute names for
  the main UDDI information entities.
• UDDI defines a specific data type for these key
  attributes.
  – Called Universal Unique Identifier (UUID)



                       PalGov © 2011                  13
Identification of Information Entities, cont.

• A UUID is basically a hex string [2],
  – Automatically generated by the UDDI server when
    an entity is saved for the first time.
  – It is a dash-separated character sequence.
  – e.g. “8-4-4-4-12”, the generation algorithm assures
    uniqueness of these IDs
          Information entity              Key attribute name
       businessEntity              businessKey
       businessService             serviceKey
       bindingTemplate             bindingKey
       tModel                      tModelKey


                          PalGov © 2011                        14
The Identifier Bag

• In addition to the descriptive information about businesses
  and their services, a formal identifiers are needed.
• A formal identification helps a consumer to find out who
  is offering a service.
• Important for deciding whether to invoke a service or not.
• e.g. on identification systems:
   – Data Universal Numbering System (D-U-N-S): uses 9-unique
     digits
   – Global Location Numbers (GLNs): uses 13-digit identification
     sequences.



                            PalGov © 2011                       15
Examples


e.g. on identifier bag, to be linked to namespace URI urn:uddi-org:api_v2:
<element name=“identifierBag” type=“uddi:identifierBag” />
<complexType name=“identifierBag”>
  <sequence>
    <element ref=“uddi:keyedReference” maxOccurs=“unbounded” />
  </sequence>
</complexType>


A keyed reference data type represents the triplet:

<element name=“keyedReference” type=“uddi:keyedReference” />
<complexType name=“keyedReference”>
  <attribute name=“tModelKey” type=“uddi:tModelKey” use=“optional” />
  <attribute name=“keyName” type=“string” use=“optional” />
  <attribute name=“keyValue” type=“string” use=“required” />
</complexType>



                                       PalGov © 2011                         16
Identifier bag of a business entity

• May contain several keyed references for a business
  entity.
• Each reference identifies the business entity in a different
  identifier system.
• tModels may have an identifier bag supplement.




                           Source, [2]
                           PalGov © 2011                    17
Example on keyed reference
         identification
• Identifying companyx business entity.
• The tModelKey value specifies the identifier system D-U-N-
  S.
• keyName is human readable form of the identifier system
  together with the identified company.
• keyValue holds the nine-digit D-U-N-S identifier of
  companyx Inc.
   – Assuming the company is listed in the identification system
  <!-- The keyValue “nn-nnn-nnnn” stands for an appropriate        -->
  <!-- D-U-N-S identifier, character „n‟ represents a digit.       -->
  <identifierBag>
    <keyedReference
     tModelKey=“uddi:8609C81E-EE1F-4D5A-B202-3EB13AD01823”
     keyName=“D-U-N-S:companyx Inc.”
     keyValue=“nn-nnn-nnnn” />
  </identifierBag>
                                Source, [2]

                                PalGov © 2011                            18
Category Bag

• Consumer must be able to select entities according categories.
   – Helpful, when looking for unknown service.
• Distinct categories like:
   –   Region in which the service provider operates.
   –   The industry it belongs to.
   –   Products it offers to the market.
   –   Technical means required to invoke the service.
• Category bag contains: tModel, keyNames and
  keyValues.
• Some categorization systems:
   – Universal Standard Products and Service Classification system
     (UNSPSC)
   – North American Industry Classification System (NICS)
   – International Standard for Geographical Regions (ISO 3166)


                                 PalGov © 2011                       19
UDDI Binding Template




A      bindingTemplate
    represents        the
    technical description
    of a web service and
    exposes its access
    point    information.
    Source, [2]




                            PalGov © 2011   20
The UDDI tModel




             Source, [2]


             PalGov © 2011   21
Session Outlines


   Introduction
   UDDI registry structure
   Linking WSDL documents to a
    UDDI registry
   Private versus public UDDI
    registers




              PalGov © 2011       22
Linking WSDL documents to a UDDI registry

• A web service consumer navigating through the
  UDDI business entities and services, must:
   – Discover service network address, and
   – Be delegated to an associated WSDL document describing
     the technical conditions for calling the service.
• UDDI bindingTemplates and tModels may
  implement this delegation mechanism.




                         PalGov © 2011                        23
WSDL authoring for UDDI registers

• WSDL import element supports an arbitrary breakup of
  individual WSDL information entities into separate files.
• The term WSDL interface and binding file is used to refer
  to the file containing the portType and binding
  elements.
• The term WSDL implementation file indicates the file
  holding the service and port elements.
• WSDL implementation file imports the interface and
  binding file
• The syntax of XML schema import element is
  semantically equivalent to the WSDL import element.

                         PalGov © 2011                   24
Session Outlines


   Introduction
   UDDI registry structure
   Linking WSDL documents to a
    UDDI registry
   Private versus public UDDI
    registers




              PalGov © 2011       25
Private versus public UDDI registries

  Private UDDI registries                 Public UDDI registries
• Have a limited reach, e.g.         •   Also known as public cloud.
   within     a    company’s         •   Accessible from the Internet.
   intranet or extranet.             •   Any other company can
• Cann’t publish or retrieve             publish or get information
   information from outside              in/from the cloud
   these UDDI registries.            •   Use a replicated UDDI
                                         nodes.
                                     •   e.g. IBM, Microsoft, ...etc.
                                     •   http://www.uddi.org/register.html`




                               PalGov © 2011                                  26
Summary

During this session we have discussed how to
 publish WSDL service interfaces in UDDI; So,
 the following subjects have been covered:
  1. UDDI registry structure
  2. Linking WSDL documents to a UDDI registry
  3. Private versus public UDDI registers




                     PalGov © 2011               27
References

1.   Extracted from: http://en.wikipedia.org/wiki/UDDI, August 2011.
2.   Olaf Zimmermann, Mark Tomlinson, Stefan Peuser, “Perspectives on
     Web services-Applying SOAP, WSDL and UDDI to real-world projects,
     2nd edition, Springer, 2005




                              PalGov © 2011                              28
Thanks
Mohammed Aldasht




   PalGov © 2011   29

Más contenido relacionado

Destacado

Pal gov.tutorial3.session11.integration.patterns
Pal gov.tutorial3.session11.integration.patternsPal gov.tutorial3.session11.integration.patterns
Pal gov.tutorial3.session11.integration.patterns
Mustafa Jarrar
 
Pal gov.tutorial3.session9.esb
Pal gov.tutorial3.session9.esbPal gov.tutorial3.session9.esb
Pal gov.tutorial3.session9.esb
Mustafa Jarrar
 
Pal gov.tutorial3.session4.rest
Pal gov.tutorial3.session4.restPal gov.tutorial3.session4.rest
Pal gov.tutorial3.session4.rest
Mustafa Jarrar
 
Pal gov.tutorial3.session13.bpel
Pal gov.tutorial3.session13.bpelPal gov.tutorial3.session13.bpel
Pal gov.tutorial3.session13.bpel
Mustafa Jarrar
 
Pal gov.tutorial3.session10.lab4
Pal gov.tutorial3.session10.lab4Pal gov.tutorial3.session10.lab4
Pal gov.tutorial3.session10.lab4
Mustafa Jarrar
 
Pal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schemaPal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schema
Mustafa Jarrar
 
Pal gov.tutorial3.session3.xpath & xquery (lab1)
Pal gov.tutorial3.session3.xpath & xquery (lab1)Pal gov.tutorial3.session3.xpath & xquery (lab1)
Pal gov.tutorial3.session3.xpath & xquery (lab1)
Mustafa Jarrar
 
Pal gov.tutorial3.session6.soap
Pal gov.tutorial3.session6.soapPal gov.tutorial3.session6.soap
Pal gov.tutorial3.session6.soap
Mustafa Jarrar
 
Pal gov.tutorial3.session7
Pal gov.tutorial3.session7Pal gov.tutorial3.session7
Pal gov.tutorial3.session7
Mustafa Jarrar
 
Pal gov.tutorial1.session13 14
Pal gov.tutorial1.session13 14Pal gov.tutorial1.session13 14
Pal gov.tutorial1.session13 14
Mustafa Jarrar
 
Business Process Modeling Notation Fundamentals
Business Process Modeling Notation FundamentalsBusiness Process Modeling Notation Fundamentals
Business Process Modeling Notation Fundamentals
Mustafa Jarrar
 

Destacado (11)

Pal gov.tutorial3.session11.integration.patterns
Pal gov.tutorial3.session11.integration.patternsPal gov.tutorial3.session11.integration.patterns
Pal gov.tutorial3.session11.integration.patterns
 
Pal gov.tutorial3.session9.esb
Pal gov.tutorial3.session9.esbPal gov.tutorial3.session9.esb
Pal gov.tutorial3.session9.esb
 
Pal gov.tutorial3.session4.rest
Pal gov.tutorial3.session4.restPal gov.tutorial3.session4.rest
Pal gov.tutorial3.session4.rest
 
Pal gov.tutorial3.session13.bpel
Pal gov.tutorial3.session13.bpelPal gov.tutorial3.session13.bpel
Pal gov.tutorial3.session13.bpel
 
Pal gov.tutorial3.session10.lab4
Pal gov.tutorial3.session10.lab4Pal gov.tutorial3.session10.lab4
Pal gov.tutorial3.session10.lab4
 
Pal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schemaPal gov.tutorial3.session2.xml ns and schema
Pal gov.tutorial3.session2.xml ns and schema
 
Pal gov.tutorial3.session3.xpath & xquery (lab1)
Pal gov.tutorial3.session3.xpath & xquery (lab1)Pal gov.tutorial3.session3.xpath & xquery (lab1)
Pal gov.tutorial3.session3.xpath & xquery (lab1)
 
Pal gov.tutorial3.session6.soap
Pal gov.tutorial3.session6.soapPal gov.tutorial3.session6.soap
Pal gov.tutorial3.session6.soap
 
Pal gov.tutorial3.session7
Pal gov.tutorial3.session7Pal gov.tutorial3.session7
Pal gov.tutorial3.session7
 
Pal gov.tutorial1.session13 14
Pal gov.tutorial1.session13 14Pal gov.tutorial1.session13 14
Pal gov.tutorial1.session13 14
 
Business Process Modeling Notation Fundamentals
Business Process Modeling Notation FundamentalsBusiness Process Modeling Notation Fundamentals
Business Process Modeling Notation Fundamentals
 

Similar a Pal gov.tutorial3.session15.uddi

Pal gov.tutorial3.session0.outline
Pal gov.tutorial3.session0.outlinePal gov.tutorial3.session0.outline
Pal gov.tutorial3.session0.outline
Mustafa Jarrar
 
Pal gov.tutorial2.session12 1.the problem of data integration
Pal gov.tutorial2.session12 1.the problem of data integrationPal gov.tutorial2.session12 1.the problem of data integration
Pal gov.tutorial2.session12 1.the problem of data integration
Mustafa Jarrar
 
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issuesPal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
Mustafa Jarrar
 
Pal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd'sPal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd's
Mustafa Jarrar
 
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdfPal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
Mustafa Jarrar
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
ssauto
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
ssauto
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
ssauto
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
ssauto
 

Similar a Pal gov.tutorial3.session15.uddi (20)

Pal gov.tutorial3.session0.outline
Pal gov.tutorial3.session0.outlinePal gov.tutorial3.session0.outline
Pal gov.tutorial3.session0.outline
 
WEB SERVICES
WEB SERVICESWEB SERVICES
WEB SERVICES
 
Linked USDL
Linked USDLLinked USDL
Linked USDL
 
Pal gov.tutorial2.session12 1.the problem of data integration
Pal gov.tutorial2.session12 1.the problem of data integrationPal gov.tutorial2.session12 1.the problem of data integration
Pal gov.tutorial2.session12 1.the problem of data integration
 
Tee temp
Tee tempTee temp
Tee temp
 
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issuesPal gov.tutorial2.session12 2.architectural solutions for the integration issues
Pal gov.tutorial2.session12 2.architectural solutions for the integration issues
 
LOD2 Webinar: UnifiedViews
LOD2 Webinar: UnifiedViewsLOD2 Webinar: UnifiedViews
LOD2 Webinar: UnifiedViews
 
OCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSOCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSS
 
2011 01-14 (ucm) e madrid griffiths ub oferta de servicios flexibles para ims...
2011 01-14 (ucm) e madrid griffiths ub oferta de servicios flexibles para ims...2011 01-14 (ucm) e madrid griffiths ub oferta de servicios flexibles para ims...
2011 01-14 (ucm) e madrid griffiths ub oferta de servicios flexibles para ims...
 
Pal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd'sPal gov.tutorial2.session2.xml dtd's
Pal gov.tutorial2.session2.xml dtd's
 
Planetdata simpda
Planetdata simpdaPlanetdata simpda
Planetdata simpda
 
PlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web ScalePlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web Scale
 
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdfPal gov.tutorial2.session13 3.data integration and fusion using rdf
Pal gov.tutorial2.session13 3.data integration and fusion using rdf
 
Report : Dpilot - A Cloud Based File Transfer Web Application
Report : Dpilot - A Cloud Based File Transfer Web ApplicationReport : Dpilot - A Cloud Based File Transfer Web Application
Report : Dpilot - A Cloud Based File Transfer Web Application
 
Putting the eGov Core Vocabularies in practice
Putting the eGov Core Vocabularies in practicePutting the eGov Core Vocabularies in practice
Putting the eGov Core Vocabularies in practice
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
 
Iru uddi technical_white_paper
Iru uddi technical_white_paperIru uddi technical_white_paper
Iru uddi technical_white_paper
 

Más de Mustafa Jarrar

Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language Processing
Mustafa Jarrar
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing
Mustafa Jarrar
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql Project
Mustafa Jarrar
 

Más de Mustafa Jarrar (20)

Clustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisClustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment Analysis
 
Classifying Processes and Basic Formal Ontology
Classifying Processes  and Basic Formal OntologyClassifying Processes  and Basic Formal Ontology
Classifying Processes and Basic Formal Ontology
 
Discrete Mathematics Course Outline
Discrete Mathematics Course OutlineDiscrete Mathematics Course Outline
Discrete Mathematics Course Outline
 
Business Process Implementation
Business Process ImplementationBusiness Process Implementation
Business Process Implementation
 
Business Process Design and Re-engineering
Business Process Design and Re-engineeringBusiness Process Design and Re-engineering
Business Process Design and Re-engineering
 
BPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsBPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical Constructs
 
BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs  BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs
 
Introduction to Business Process Management
Introduction to Business Process ManagementIntroduction to Business Process Management
Introduction to Business Process Management
 
Customer Complaint Ontology
Customer Complaint Ontology Customer Complaint Ontology
Customer Complaint Ontology
 
Subset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesSubset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion Rules
 
Schema Modularization in ORM
Schema Modularization in ORMSchema Modularization in ORM
Schema Modularization in ORM
 
On Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineOn Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in Palestine
 
Lessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesLessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online Courses
 
Presentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalPresentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-final
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 Calls
 
Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language Processing
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing
 
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsRiestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
 
Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql Project
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

Pal gov.tutorial3.session15.uddi

  • 1. ‫أكاديمية الحكومة اإللكترونية الفلسطينية‬ The Palestinian eGovernment Academy www.egovacademy.ps Tutorial III: Process Integration and Service Oriented Architectures Session 15 UDDI Prepared By Mohammed Aldasht PalGov © 2011 1
  • 2. About This tutorial is part of the PalGov project, funded by the TEMPUS IV program of the Commission of the European Communities, grant agreement 511159-TEMPUS-1- 2010-1-PS-TEMPUS-JPHES. The project website: www.egovacademy.ps Project Consortium: Birzeit University, Palestine University of Trento, Italy (Coordinator ) Palestine Polytechnic University, Palestine Vrije Universiteit Brussel, Belgium Palestine Technical University, Palestine Université de Savoie, France Ministry of Telecom and IT, Palestine University of Namur, Belgium Ministry of Interior, Palestine TrueTrust, UK Ministry of Local Government, Palestine Coordinator: Dr. Mustafa Jarrar Birzeit University, P.O.Box 14- Birzeit, Palestine Telfax:+972 2 2982935 mjarrar@birzeit.eduPalGov © 2011 2
  • 3. © Copyright Notes Everyone is encouraged to use this material, or part of it, but should properly cite the project (logo and website), and the author of that part. No part of this tutorial may be reproduced or modified in any form or by any means, without prior written permission from the project, who have the full copyrights on the material. Attribution-NonCommercial-ShareAlike CC-BY-NC-SA This license lets others remix, tweak, and build upon your work non- commercially, as long as they credit you and license their new creations under the identical terms. PalGov © 2011 3
  • 4. Tutorial Map Intended Learning Objectives A: Knowledge and Understanding Title T Name 3a1: Demonstrate knowledge of the fundamentals of middleware. 3a2: Describe the concept behind web service protocols. Session0: Syllabus and overview 0 Aldasht 3a3: Explain the concept of service oriented architecture. Sesson1: Introduction to SOA 2 Aldasht 3a4: Explain the concept of enterprise service bus. Session2: XML namespaces & XML schema 2 Aldasht 3a5: Understanding WSDL service interfaces in UDDI. Session 3: Xpath & Xquery 4 Romi B: Intellectual Skills Session4: REST web services 3 M. Melhem 3b1: Design, develop, and deploy applications based on Service Session5: Lab2: Practice on REST 3 M. Melhem Oriented Architecture (SOA). Session 6: SOAP 2 Aldasht 3b2: use Business Process Execution Language (BPEL). Session 7: WSDL 3 Aldasht 3b3: using WSDL to describe web services. Session8: Lab 3: WSDL practice 3 Aldasht C: Professional and Practical Skills Session9: ESB 4 Aldasht 3c1: setup, Invoke, and deploy web services using integrated Session10: Lab4: Practice on ESB 4 Aldasht development environment. Session11: integration patterns 4 M. Melhem 3c2: construct and use REST and SOAP messages for web services communication. Session12: Lab5: integration patterns 4 M. Melhem D: General and Transferable Skills Session13: BPEL 3 Aldasht d1: Working with team. Session14: Lab6: Practice on BPEL 3 Aldasht d2: Presenting and defending ideas. Session15: UDDI 2 Aldasht d3: Use of creativity and innovation in problem solving. d4: Develop communication skills and logical reasoning abilities.
  • 5. Session 15: UDDI. Session ILOs After completing this module students will be understood WSDL service interfaces in UDDI PalGov © 2011 5
  • 6. Session Outlines  Introduction  UDDI registry structure  Linking WSDL documents to a UDDI registry  Private versus public UDDI registers PalGov © 2011 6
  • 7. Overview • A service discovery platform UDDI, offers a global repository containing [2]: – Service endpoint implementation. – Interface information – Business-level information. • A UDDI registry may refer to WSDL document Web Services Application Code UDDI API WSDL API SOAP API UDDI WSDL SOAP XML / XML namespace / XML Schema Source, [2] PalGov © 2011 7
  • 8. Introduction • Universal Description, Discovery and Integration (UDDI) is a platform-independent, (XML)-based registry for businesses worldwide to list themselves on the Internet [1]. • UDDI is an open industry initiative, sponsored by the Organization for the Advancement of Structured Information Standards (OASIS). • UDDI originally proposed as a core Web service standard. • UDDI provides a mechanism to register and locate web service applications. PalGov © 2011 8
  • 9. Introduction, cont. • UDDI is designed to be interrogated by SOAP messages and to provide access to WSDL documents. • UDDI registry may offer [2]: – Info about businesses and organizations offering web services. – Descriptions of web services that these organizations provide. – Info about technical interfaces to these web services. PalGov © 2011 9
  • 10. Session Outlines  Introduction  UDDI registry structure  Linking WSDL documents to a UDDI registry  Private versus public UDDI registers PalGov © 2011 10
  • 11. UDDI registry structure • UDDI service registry data model provides two types of info: – Business info about web services and provider. – Technical info about web service binding. • It is composed of 5 hierarchically organized data types: – business entity: a top object contains info about web service provider, like name. – business service: a data structure to represent a collection of correlated web services. – binding template: exposes a service endpoint address to access a distinct web service. – tModel: exposes web service interface information. – publisher assertion: supports publishing of business relationships between business entities. PalGov © 2011 11
  • 12. Containment and reference relationship of UDDI data structures • In the UDDI data model hierarchy: – One binding template may refer to several tModel “Technical Model” entities. – Different binding templates may refer to the same tModel entities Source, [2] PalGov © 2011 12
  • 13. Identification of Information Entities • Individual UDDI information entities must be uniquely identified through the value of a key attribute. • The table below lists the key attribute names for the main UDDI information entities. • UDDI defines a specific data type for these key attributes. – Called Universal Unique Identifier (UUID) PalGov © 2011 13
  • 14. Identification of Information Entities, cont. • A UUID is basically a hex string [2], – Automatically generated by the UDDI server when an entity is saved for the first time. – It is a dash-separated character sequence. – e.g. “8-4-4-4-12”, the generation algorithm assures uniqueness of these IDs Information entity Key attribute name businessEntity businessKey businessService serviceKey bindingTemplate bindingKey tModel tModelKey PalGov © 2011 14
  • 15. The Identifier Bag • In addition to the descriptive information about businesses and their services, a formal identifiers are needed. • A formal identification helps a consumer to find out who is offering a service. • Important for deciding whether to invoke a service or not. • e.g. on identification systems: – Data Universal Numbering System (D-U-N-S): uses 9-unique digits – Global Location Numbers (GLNs): uses 13-digit identification sequences. PalGov © 2011 15
  • 16. Examples e.g. on identifier bag, to be linked to namespace URI urn:uddi-org:api_v2: <element name=“identifierBag” type=“uddi:identifierBag” /> <complexType name=“identifierBag”> <sequence> <element ref=“uddi:keyedReference” maxOccurs=“unbounded” /> </sequence> </complexType> A keyed reference data type represents the triplet: <element name=“keyedReference” type=“uddi:keyedReference” /> <complexType name=“keyedReference”> <attribute name=“tModelKey” type=“uddi:tModelKey” use=“optional” /> <attribute name=“keyName” type=“string” use=“optional” /> <attribute name=“keyValue” type=“string” use=“required” /> </complexType> PalGov © 2011 16
  • 17. Identifier bag of a business entity • May contain several keyed references for a business entity. • Each reference identifies the business entity in a different identifier system. • tModels may have an identifier bag supplement. Source, [2] PalGov © 2011 17
  • 18. Example on keyed reference identification • Identifying companyx business entity. • The tModelKey value specifies the identifier system D-U-N- S. • keyName is human readable form of the identifier system together with the identified company. • keyValue holds the nine-digit D-U-N-S identifier of companyx Inc. – Assuming the company is listed in the identification system <!-- The keyValue “nn-nnn-nnnn” stands for an appropriate --> <!-- D-U-N-S identifier, character „n‟ represents a digit. --> <identifierBag> <keyedReference tModelKey=“uddi:8609C81E-EE1F-4D5A-B202-3EB13AD01823” keyName=“D-U-N-S:companyx Inc.” keyValue=“nn-nnn-nnnn” /> </identifierBag> Source, [2] PalGov © 2011 18
  • 19. Category Bag • Consumer must be able to select entities according categories. – Helpful, when looking for unknown service. • Distinct categories like: – Region in which the service provider operates. – The industry it belongs to. – Products it offers to the market. – Technical means required to invoke the service. • Category bag contains: tModel, keyNames and keyValues. • Some categorization systems: – Universal Standard Products and Service Classification system (UNSPSC) – North American Industry Classification System (NICS) – International Standard for Geographical Regions (ISO 3166) PalGov © 2011 19
  • 20. UDDI Binding Template A bindingTemplate represents the technical description of a web service and exposes its access point information. Source, [2] PalGov © 2011 20
  • 21. The UDDI tModel Source, [2] PalGov © 2011 21
  • 22. Session Outlines  Introduction  UDDI registry structure  Linking WSDL documents to a UDDI registry  Private versus public UDDI registers PalGov © 2011 22
  • 23. Linking WSDL documents to a UDDI registry • A web service consumer navigating through the UDDI business entities and services, must: – Discover service network address, and – Be delegated to an associated WSDL document describing the technical conditions for calling the service. • UDDI bindingTemplates and tModels may implement this delegation mechanism. PalGov © 2011 23
  • 24. WSDL authoring for UDDI registers • WSDL import element supports an arbitrary breakup of individual WSDL information entities into separate files. • The term WSDL interface and binding file is used to refer to the file containing the portType and binding elements. • The term WSDL implementation file indicates the file holding the service and port elements. • WSDL implementation file imports the interface and binding file • The syntax of XML schema import element is semantically equivalent to the WSDL import element. PalGov © 2011 24
  • 25. Session Outlines  Introduction  UDDI registry structure  Linking WSDL documents to a UDDI registry  Private versus public UDDI registers PalGov © 2011 25
  • 26. Private versus public UDDI registries Private UDDI registries Public UDDI registries • Have a limited reach, e.g. • Also known as public cloud. within a company’s • Accessible from the Internet. intranet or extranet. • Any other company can • Cann’t publish or retrieve publish or get information information from outside in/from the cloud these UDDI registries. • Use a replicated UDDI nodes. • e.g. IBM, Microsoft, ...etc. • http://www.uddi.org/register.html` PalGov © 2011 26
  • 27. Summary During this session we have discussed how to publish WSDL service interfaces in UDDI; So, the following subjects have been covered: 1. UDDI registry structure 2. Linking WSDL documents to a UDDI registry 3. Private versus public UDDI registers PalGov © 2011 27
  • 28. References 1. Extracted from: http://en.wikipedia.org/wiki/UDDI, August 2011. 2. Olaf Zimmermann, Mark Tomlinson, Stefan Peuser, “Perspectives on Web services-Applying SOAP, WSDL and UDDI to real-world projects, 2nd edition, Springer, 2005 PalGov © 2011 28
  • 29. Thanks Mohammed Aldasht PalGov © 2011 29