SlideShare a Scribd company logo
1 of 75
Dynamic and Agile SOA
 using Semantic Web
       Services
      karthik gomadam,
       Ph.D Candidate,
       kno.e.sis center,
   Wright State University.
Evolution of the enterprise
Complex

Dynamic

Autonomous organizations

On the fly environment
Service Oriented Architectures
Complex software by integrating services
http://thewebserviceblog.co.uk/
Increased agility

Reuse

Easier integration
Check inventory
             Packaging                    Identify components                           levels
            and shipping


                                                                                       Inventory
             Inspection                                                                level low?
                                               Are there
             and Testing                                         NO
                                               suppliers?
                                                                Select suppliers
                                                                 from internal     Order components
             Assembly
                                                  YES               registry         from existing
             operations
                                                                                        supplier
                                          Order Components
                                            from supplier
          Get components
           from inventory                                                                Can
                                                                                                                 Select alternate
                                                                                       supplier        NO
                                           Update inventory                                                          supplier
                                                                                       supply?

              Identify
            components                                                                    YES
                                           Add to production
                                                  flow
                                                                                                               Order components
            Obtain order                                                           Update inventory
                                                                                                            from alternate supplier
            information

Production flow         Production flow                 Add a new product line                  Inventory Management
                  (a)                             (b)                                     (c)
Agility nirvana
Semantic Web Services
Description

Discovery

Data mediation

Dynamic integration
Semantic Web + Web Services =

• Semantic markup of service description
• Use of reasoning for discovery and integration
Syntactic
                            interface
                           agreement
                            required!
                                                                                 Manufacturer 1                                            Manufacturer 1
                                                                            Create and publish semantic                            Create and publish semantic
      Manufacturer 1                             Manufacturer 2           interface contract 1 in SAWSDL                         interface contract 2 in SAWSDL
 Create and publish service                 Create and publish service        annotated with concepts                                annotated with concepts
interface contract 1 in WSDL               interface contract 2 in WSDL           from the ontology                                      from the ontology


   Service Provider 1                          Service Provider 2              Service Provider 1                                       Service Provider 2
    private registry                            private registry                private registry                                         private registry


         Publish service 1 that         Publish service 2 that
         adhere to the service          adhere to the service                        Publish service 1 that
                                        interface contracts of                                                                    Publish service 1 that
         interface contracts of                                                     adhere to the ontology
                                           manufacturer 2                                                                        adhere to the ontology
            manufacturer 1




                           Service Provider                                                                   Service Provider
Semantics enriched services environment
Execution             Data
Event Identification, Not just model,
    Adaptation        Express your data




    Non-
  Functional          Functional
  Response time,       What does the
 Cost, QoS Metrics     service offer?
If I send my order, will they supply
the product ? What if they fail? Is
this all secure? Can they ship in 5
business days?
Description
SAWSDL: Semantic annotation for WSDL and
XML SCHEMA
Agnostic

REUSE

Span Domains
Jacek Kopeck!, Tomas Vitvar, Carine Bournez, Joel Farrell,SAWSDL: Semantic Annotations for WSDL and XML Schema.IEEE Internet Computing 11(6): 60-67 (2007)
Resourceful Web
described in X/HTML
SA-REST*:

semantic microformat for resource markup.
inline semantic annotations that refer to a rich
semantic model
hRESTs: Extension of SA-REST for RESTful APIs



Add reference to WI 08 paper
NCBO example
Capturing requirements
Impact
Discovery and Ranking
Finding right partners plays an important role in
process outcome
Key word based paradigms



Interface based techniques
SEMRE: Semantic Services ReGISTRY
native support for semantics
Support for publishing non-functional
capabilities
Flexibility
Descriptive requirements
SEMRE data Model
Semantic service interface
                S= (MS , θ)
Interface relationship
           IR (Si , Sj ) = (R , R , R )
                           S    θ   D
RequestPurchaseOrderOutput
                                                                                                          QueryOrder
                                                                                                                       is_followed_by
                                         RequestPurchaseOrderInput                                          Status
                                                                                has_output
                                                                    has_input            is_followed_by

                                                   is_followed_by          RequestPurchaseOrder     is_followed_by      CancelOrder     is_followed_by

                                                                                ISA               ISA

                                                            RequestPurchaseOrderStorage           RequestPurchaseOrderIODevices

                                                           ISA                         ISA
                                                                                                                              ISA                ISA
                                                                        ISA       RequestPurchaseOrderMemoryKey
                                  RequestPurchaseOrderHardDisk                                                                RequestPurchaseOrderMouse   RequestPurchaseOrderKeyBoard
                                                                                Is_Equivalent
                      has_input       has_output
                                                     RequestPurchaseOrderUSBMemory
HardDriveOrderInput
                       HardDriveOrderOutput
Equivalence

generalized

subsumption

n-relationship
Semantic template for capturing requirements
Discovery algorithm
1. semantic interface signature (Semantic Template)

2. identify fulfillment set:         RE ,
                                     S      θ
                                           RE   and    D
                                                      RE
3. all fulfilling interfaces:

4. Interface relation in the set defined above
1. Compute the effective policy of both request and
candidate service

2. Comparison between policies is by comparing
assertions in each alternative

3. If there is no assertion with a matching capability, is
there a rule connecting assertion elements?

4. Aggregate matches.
Matching comparison
                    180


                    160         153


                    140
Number of Matches




                    120


                    100
                                                          87

                     80


                     60

                                                                                 42
                     40


                     20


                      0

                          Data Only Match         Data and Operation   Data and Operation and
                                                                              Domain
300
                                            Service Publication Time
                                                                               With Interfaces published
                                                                               Without Interfaces
                      250
Time - Milliseconds




                      200




                      150




                      100




                       50




                        0
                            0   100   200     300   400     500    600   700            800          900   1000

                                                    Number of services
Discovery Time
                    70



                    60



                    50
Time MilliSeconds




                    40



                    30



                    20



                    10



                    0
                         1   101   201   301     401      501      601   701   801   901

                                                       Iteration
Data mediation
Think Meta!!!
“Anything you can do, I can do Meta”
          Charles Simonyi, Intention Software
semantic match

<wsdl:types>
  (...)                                                     Address
  <complexType name=“Addressquot;>
    <sequence>                                                        hasStreetAddress
      <element name=“StreetAd1“ type=quot;xsd:stringquot;/>                                 StreetAddress
      <element name=“StreetAd2quot; type=quot;xsd:stringquot;/>
      ...........                                                      hasCity
    </sequence>
                                                                                   xsd:string
  </complexType>
  (...)
                                                                                           hasZip
</wsdl:types>
                                                                                                    xsd:string
WSDL complex type element
                                                         OWL ontology
SearchResponse

      Responses

             Response

                  Results                                                                               ResultSet

                              Result;                                                                            ResultType
                        semre#searchResult                                                                   semre#searchResult
                                                                           SearchResult;
                                                                        semre#searchResult                               URL:
                                                Video
URL:String                                                                                                          semre#URLString
                                                         VideoURL:
                             Image                         String               Photo                                Summary:
      Description:                                                                                                     String
        String                  ImageURL;               Width: Float
                                semre#URL                                               URL: String                 Width: Float
                                  String                Height: Float
                                                                                                                    Height: Float
                                Height: Float           RunningTime:                    Width: Float

        Live                                                 Int                        Height: Float
                                Width: Float
                                                                                                            Yahoo
       Search                                                                                               Image
       Schema                                                                   Target                     Search
      Snapshot              Schema A                                           Schema                                    Schema B
                                                                                                           Schema
How easy is it for me to mediate?
Mediatability
SearchResponse
                0.414
                                      Responses
                    0.278
                                             Response

                            1                     Results
                                                                                              Sea
   SearchResult                                               Result                       semre#
semre#searchResult                                      semre#searchResult

    Photo                                                                                     Ph
                                                                             Video
                                URL:String
            URL: String
                                                             Image                   ...
            Width: Float              Description:
                                        String
            Height: Float                                              ...
      Target
     Schema                              Schema A


                                                                 (a)
SearchResponse

                                               Responses

                                                      Response

                                                           Results
         SearchResult            NSA (Width,Video/
      semre#searchResult              Width)                           Result
                                                                 semre#searchResult
         Photo                    NSA (Width,Image/                                        Video
                                       Width)
                 URL: String                                            Image                  VideoURL:
...                                                                                           semre#URL
                                                                           ImageURL;             String
                 Width: Float
                                                                           semre#URL
                                                                             String            Width: Float
                 Height: Float
                                                                           Height: Float      Height: Float
             Target
                                                 Schema A                                     RunningTime:
            Schema                                                         Width: Float            Int

                                                                          (b)
Impact: Dynamic Processes
SMart mashups

More Related Content

What's hot

Agile tour 2011 ralph jocham
Agile tour 2011   ralph jochamAgile tour 2011   ralph jocham
Agile tour 2011 ralph jocham
Agora Group
 
Arnaud Simon Service Contract Template
Arnaud  Simon    Service  Contract  TemplateArnaud  Simon    Service  Contract  Template
Arnaud Simon Service Contract Template
SOA Symposium
 
Bitstream and hybrid-based video quality assessment for IPTV monitoring
Bitstream and hybrid-based video quality assessment for IPTV monitoringBitstream and hybrid-based video quality assessment for IPTV monitoring
Bitstream and hybrid-based video quality assessment for IPTV monitoring
Förderverein Technische Fakultät
 

What's hot (9)

Test Objects -- They Just Work
Test Objects -- They Just WorkTest Objects -- They Just Work
Test Objects -- They Just Work
 
Behavioral Constraints for Services
Behavioral Constraints for ServicesBehavioral Constraints for Services
Behavioral Constraints for Services
 
SLC Process for Software Development & Quality Control
SLC Process for Software Development & Quality ControlSLC Process for Software Development & Quality Control
SLC Process for Software Development & Quality Control
 
Agile tour 2011 ralph jocham
Agile tour 2011   ralph jochamAgile tour 2011   ralph jocham
Agile tour 2011 ralph jocham
 
Validation of Service Oriented Computing DEVS Simulation Models
Validation of Service Oriented Computing DEVS Simulation ModelsValidation of Service Oriented Computing DEVS Simulation Models
Validation of Service Oriented Computing DEVS Simulation Models
 
Lean and Kanban Principles for Software Developers
Lean and Kanban Principles for Software DevelopersLean and Kanban Principles for Software Developers
Lean and Kanban Principles for Software Developers
 
Arnaud Simon Service Contract Template
Arnaud  Simon    Service  Contract  TemplateArnaud  Simon    Service  Contract  Template
Arnaud Simon Service Contract Template
 
Bitstream and hybrid-based video quality assessment for IPTV monitoring
Bitstream and hybrid-based video quality assessment for IPTV monitoringBitstream and hybrid-based video quality assessment for IPTV monitoring
Bitstream and hybrid-based video quality assessment for IPTV monitoring
 
ThruPore NSF Final Presentation
ThruPore NSF Final PresentationThruPore NSF Final Presentation
ThruPore NSF Final Presentation
 

Viewers also liked (9)

mabel condemarin
mabel condemarinmabel condemarin
mabel condemarin
 
Final Defense
Final DefenseFinal Defense
Final Defense
 
Semantics Enriched Service Environments
Semantics Enriched Service EnvironmentsSemantics Enriched Service Environments
Semantics Enriched Service Environments
 
Lean 6 Sigma Searchtec
Lean 6 Sigma SearchtecLean 6 Sigma Searchtec
Lean 6 Sigma Searchtec
 
Attitude is Everything
Attitude is EverythingAttitude is Everything
Attitude is Everything
 
Frumos 1
Frumos 1Frumos 1
Frumos 1
 
Pcori2013 (23)
Pcori2013 (23)Pcori2013 (23)
Pcori2013 (23)
 
Millenia Presentation Compressed
Millenia Presentation CompressedMillenia Presentation Compressed
Millenia Presentation Compressed
 
Eastern Urban Center
Eastern Urban CenterEastern Urban Center
Eastern Urban Center
 

Similar to Kgomadam Candidacy

Icsoc Mehandjiev Lecue Wajid Presentationv2
Icsoc Mehandjiev Lecue Wajid Presentationv2Icsoc Mehandjiev Lecue Wajid Presentationv2
Icsoc Mehandjiev Lecue Wajid Presentationv2
Freddy Lecue
 
It governance
It governanceIt governance
It governance
rezaak
 
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentationIcws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Freddy Lecue
 
Azure for the ITPro
Azure for the ITProAzure for the ITPro
Azure for the ITPro
Enrique Lima
 
PHP Day 2011 PHP goes to the cloud
PHP Day 2011 PHP goes to the cloudPHP Day 2011 PHP goes to the cloud
PHP Day 2011 PHP goes to the cloud
pietrobr
 

Similar to Kgomadam Candidacy (20)

Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012
 
Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm Concepts integrationandbiztalksoa andbpm
Concepts integrationandbiztalksoa andbpm
 
Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...
 
Bli.it concepts-regarding-gamp-guide-en
Bli.it concepts-regarding-gamp-guide-enBli.it concepts-regarding-gamp-guide-en
Bli.it concepts-regarding-gamp-guide-en
 
Formal framework for semantic interoperability in Supply Chain networks
Formal framework for semantic interoperability in Supply Chain networksFormal framework for semantic interoperability in Supply Chain networks
Formal framework for semantic interoperability in Supply Chain networks
 
Icsoc Mehandjiev Lecue Wajid Presentationv2
Icsoc Mehandjiev Lecue Wajid Presentationv2Icsoc Mehandjiev Lecue Wajid Presentationv2
Icsoc Mehandjiev Lecue Wajid Presentationv2
 
Software Series 3
Software Series 3Software Series 3
Software Series 3
 
All That Jazz
All That JazzAll That Jazz
All That Jazz
 
It governance
It governanceIt governance
It governance
 
Connected Applications using WF and WCF
Connected Applications using WF and WCFConnected Applications using WF and WCF
Connected Applications using WF and WCF
 
Soa
SoaSoa
Soa
 
Soa
SoaSoa
Soa
 
Soa
SoaSoa
Soa
 
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentationIcws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
Icws10 lecue-gorronogoitia-gonzalez-radzimski-villa-presentation
 
OSGi patterns v1.0.11
OSGi patterns v1.0.11OSGi patterns v1.0.11
OSGi patterns v1.0.11
 
Azure for the ITPro
Azure for the ITProAzure for the ITPro
Azure for the ITPro
 
A Technical Overview of DuraCloud
A Technical Overview of DuraCloudA Technical Overview of DuraCloud
A Technical Overview of DuraCloud
 
Qualipso factory
Qualipso factoryQualipso factory
Qualipso factory
 
PHP Day 2011 PHP goes to the cloud
PHP Day 2011 PHP goes to the cloudPHP Day 2011 PHP goes to the cloud
PHP Day 2011 PHP goes to the cloud
 
Mobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and ChellengesMobile DevOps - Trends and Chellenges
Mobile DevOps - Trends and Chellenges
 

Recently uploaded

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 

Recently uploaded (20)

Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Role Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptxRole Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 

Kgomadam Candidacy

  • 1. Dynamic and Agile SOA using Semantic Web Services karthik gomadam, Ph.D Candidate, kno.e.sis center, Wright State University.
  • 2. Evolution of the enterprise
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 10. Complex software by integrating services
  • 13. Check inventory Packaging Identify components levels and shipping Inventory Inspection level low? Are there and Testing NO suppliers? Select suppliers from internal Order components Assembly YES registry from existing operations supplier Order Components from supplier Get components from inventory Can Select alternate supplier NO Update inventory supplier supply? Identify components YES Add to production flow Order components Obtain order Update inventory from alternate supplier information Production flow Production flow Add a new product line Inventory Management (a) (b) (c)
  • 17. Semantic Web + Web Services = • Semantic markup of service description • Use of reasoning for discovery and integration
  • 18. Syntactic interface agreement required! Manufacturer 1 Manufacturer 1 Create and publish semantic Create and publish semantic Manufacturer 1 Manufacturer 2 interface contract 1 in SAWSDL interface contract 2 in SAWSDL Create and publish service Create and publish service annotated with concepts annotated with concepts interface contract 1 in WSDL interface contract 2 in WSDL from the ontology from the ontology Service Provider 1 Service Provider 2 Service Provider 1 Service Provider 2 private registry private registry private registry private registry Publish service 1 that Publish service 2 that adhere to the service adhere to the service Publish service 1 that interface contracts of Publish service 1 that interface contracts of adhere to the ontology manufacturer 2 adhere to the ontology manufacturer 1 Service Provider Service Provider
  • 20. Execution Data Event Identification, Not just model, Adaptation Express your data Non- Functional Functional Response time, What does the Cost, QoS Metrics service offer?
  • 21. If I send my order, will they supply the product ? What if they fail? Is this all secure? Can they ship in 5 business days?
  • 23. SAWSDL: Semantic annotation for WSDL and XML SCHEMA
  • 25. Jacek Kopeck!, Tomas Vitvar, Carine Bournez, Joel Farrell,SAWSDL: Semantic Annotations for WSDL and XML Schema.IEEE Internet Computing 11(6): 60-67 (2007)
  • 29. inline semantic annotations that refer to a rich semantic model
  • 30. hRESTs: Extension of SA-REST for RESTful APIs Add reference to WI 08 paper
  • 33.
  • 36. Finding right partners plays an important role in process outcome
  • 37. Key word based paradigms Interface based techniques
  • 39. native support for semantics
  • 40. Support for publishing non-functional capabilities
  • 45.
  • 46. Interface relationship IR (Si , Sj ) = (R , R , R ) S θ D
  • 47. RequestPurchaseOrderOutput QueryOrder is_followed_by RequestPurchaseOrderInput Status has_output has_input is_followed_by is_followed_by RequestPurchaseOrder is_followed_by CancelOrder is_followed_by ISA ISA RequestPurchaseOrderStorage RequestPurchaseOrderIODevices ISA ISA ISA ISA ISA RequestPurchaseOrderMemoryKey RequestPurchaseOrderHardDisk RequestPurchaseOrderMouse RequestPurchaseOrderKeyBoard Is_Equivalent has_input has_output RequestPurchaseOrderUSBMemory HardDriveOrderInput HardDriveOrderOutput
  • 49. Semantic template for capturing requirements
  • 51. 1. semantic interface signature (Semantic Template) 2. identify fulfillment set: RE , S θ RE and D RE 3. all fulfilling interfaces: 4. Interface relation in the set defined above
  • 52.
  • 53. 1. Compute the effective policy of both request and candidate service 2. Comparison between policies is by comparing assertions in each alternative 3. If there is no assertion with a matching capability, is there a rule connecting assertion elements? 4. Aggregate matches.
  • 54. Matching comparison 180 160 153 140 Number of Matches 120 100 87 80 60 42 40 20 0 Data Only Match Data and Operation Data and Operation and Domain
  • 55. 300 Service Publication Time With Interfaces published Without Interfaces 250 Time - Milliseconds 200 150 100 50 0 0 100 200 300 400 500 600 700 800 900 1000 Number of services
  • 56. Discovery Time 70 60 50 Time MilliSeconds 40 30 20 10 0 1 101 201 301 401 501 601 701 801 901 Iteration
  • 57.
  • 58.
  • 59.
  • 61. Think Meta!!! “Anything you can do, I can do Meta” Charles Simonyi, Intention Software
  • 62.
  • 63. semantic match <wsdl:types> (...) Address <complexType name=“Addressquot;> <sequence> hasStreetAddress <element name=“StreetAd1“ type=quot;xsd:stringquot;/> StreetAddress <element name=“StreetAd2quot; type=quot;xsd:stringquot;/> ........... hasCity </sequence> xsd:string </complexType> (...) hasZip </wsdl:types> xsd:string WSDL complex type element OWL ontology
  • 64. SearchResponse Responses Response Results ResultSet Result; ResultType semre#searchResult semre#searchResult SearchResult; semre#searchResult URL: Video URL:String semre#URLString VideoURL: Image String Photo Summary: Description: String String ImageURL; Width: Float semre#URL URL: String Width: Float String Height: Float Height: Float Height: Float RunningTime: Width: Float Live Int Height: Float Width: Float Yahoo Search Image Schema Target Search Snapshot Schema A Schema Schema B Schema
  • 65. How easy is it for me to mediate?
  • 67. SearchResponse 0.414 Responses 0.278 Response 1 Results Sea SearchResult Result semre# semre#searchResult semre#searchResult Photo Ph Video URL:String URL: String Image ... Width: Float Description: String Height: Float ... Target Schema Schema A (a)
  • 68. SearchResponse Responses Response Results SearchResult NSA (Width,Video/ semre#searchResult Width) Result semre#searchResult Photo NSA (Width,Image/ Video Width) URL: String Image VideoURL: ... semre#URL ImageURL; String Width: Float semre#URL String Width: Float Height: Float Height: Float Height: Float Target Schema A RunningTime: Schema Width: Float Int (b)
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.

Editor's Notes

  1. I thank the members of CiSOFT for inviting me to USC. (depending on audience, LA sun mention). I am Karthik Gomadam, PhD candidate at knoesis center, wright state. Started phd in UGA and migrated north in 07. Interests include semantic Web, SOA, social computing. This talk has three parts.
  2. My research in semantic web services is largely motivated by the challenges enterprises face, as they evolve and adapt to a global market place.
  3. Let us review what has happened to a farmer Grandpa Joe in an increasingly flat world, within a period two decades. Initially, Joe tilled the farm in his village and Gramma Doe sold the produce to the residents of the village.
  4. As this Small businesses started to grow in a local context; spreading their market to neighboring locations. Soon Granpa Joe started hiring other services such as delivery; but still this was manageable and he had a small service fleet.
  5. and as business expanded even more, there was interplay of many services such as inventory management, delivery, retail
  6. And today we are in a flat world, one where the interplay and synergy is between providers across the world; each offering a service that the other consumes. Many new services such as currency forecasting, market analysis and such started to play a significant role in Grandpa Joes business.
  7. His business is now a global enterprise with partners everywhere.
  8. The market place is a complex dynamic on the fly environment with many players having a significant stake.
  9. To be successful organizations need to be agile and their processes needs to be flexible. This environment has many moving parts, such as currency fluctuations, political climate; not everything can be controlled. SOA is a paradigm that allows one to create applications that are flexible and adaptable to change.
  10. A service refers to a discretely defined set of contiguous and autonomous business or technical functionality.
  11. One can have many kinds of services: Data services that expose and share data; Software as a service: Where a software functionality can be remotely utilized; platform as a service: Where one can provide a suite of tools and expose an integration platform as a service
  12. Changing a particular component can mean just rewiring the system to use a different service provider and addressing data mediation issues with the new provider. SOA also promises reuse, especially data models defined as XML do not have any binding whatsoever to underlying languages/ implementation platforms. Easier integration of services largely due to the standards compliance in description and discoverability; one can find the services one needs and the uniform structure in description will enable easier integration.
  13. what do we mean by agility? Let us consider a production flow of an enterprise in the supply chain domain. This example was created after talking to business managers at IBM, from experiences at Accenture Labs (a colleague of mine is a researcher) and from publications by Dell. We see a production flow of a product in the supply chain. There are two places that require agility. One where a new product line is to be added. How quickly can we identify suppliers, get contracts across and update inventory determines how soon the production can begin. Another example is when the inventory levels are low for a component (especially when a product exceeds forecasting expectation). Can the current supplier handle a request? If not, is there another supplier who can meet the demands?
  14. However, despite the slew of standards and specs agility is still hard. Each organization brings their own business processes and vocabularies, their data formats governed by their legacy systems. Challenges one needs to address include finding the partner services who fulfill functional and non-functional requirements, data mediation, given discrepancies in data definition, what it means and creating processes that are flexible and can adapt to a changing environment .
  15. Semantic Web Services has been an area of research to address these shortcomings.
  16. How does one describe services and data models, capturing their meaning in addition to the structure. How can one find the right set of partners that fulfill both functional and non-functional requirements. While the functional requirements capture the desired functionality, important requirements such as service level agreements, business requirements also need to be fulfilled. An example from the computer manufacturing: I want a supplier for memory chips, 533 MHz DDR 3, minimum quantity: 100000, price.., supply time. data mediation is very important for interoperability; needs to be addressed before interop can be realized; Major promise of SOA; 90% time goes in data mediation. seen usage and learnt. Last challenge is in integration and execution. How does one find and bind partners at run time? What happens say, a partner does not keep his guarantees up? How does one identify what events affect which process instances? Semantic Web technologies play an important role in addressing a significant portion problems. Description semantic metadata, discovery reasoning and contract advertisements, model driven data mediation and optimization and adaptation in dynamic integration.
  17. The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. At the heart of semantic Web is an ontology, a formal representation of a set of concepts within a domain and the relationships between those concepts. It is used to reason about the properties of that domain, and may be used to define the domain.
  18. Semantic interface contract; Contract first;
  19. My research address many aspects of these problems; For my dissertation, I seek to create a flexible and dynamic services environment, leveraging on semantic Web techniques. There has emerged two popular approaches to realizing services; One is Web services approach, with WSDL / SOAP and other standards and specifications. The other approach, the RESTful approach is much more lightweight. I will discuss a few aspects of my work in the RESTful context and conclude the first part of my presentation.
  20. Semantics for services can be classified into four types: Data, Functional, non-functional and execution.
  21. Order : Data ; Supply: Functional; Fail: execution; 5 business days and secure: non-functional
  22. How can one capture the different types of semantics in service descriptions?
  23. WSDL is the standard for service description. Captures the operations, messages and invocation information. But, how does one capture what a service does? SAWSDL is a way for adding semantic metadata to WSDL service descriptions. the metadata captures meaning of an element in WSDL and comes from an ontology. An evolutionary and compatible upgrade of existing Web services standards
  24. agnostic to ontology representation languages (although W3C recommended RDFS or OWL are likely to be often used) reuse of existing domain models (in some domains, usable ontologies have been built, eg life science and health care) allows annotation using multiple ontologies (same or different domain)
  25. Model references are at the heart of SAWSDL. A model reference is an attribute that grounds an WSDL element to a concept in the semantic model.
  26. These services exposed various resources on the Web such as feeds, APIS
  27. easy for humans to read and understand but hard for machines. The problems related to description and interop still remain.
  28. During standardization process of SAWSDL in 2005, we realized that there was an emerging paradigm of services, one that did not necessarily have a WSDL for description.
  29. SA-REST is an approach to add rich semantic markup to web resource descriptions. It builds on top of microformats, which have become an easy way to add semantic markups for calendar entries, contact information etc. I am currently editing the W3C submission of SA-REST, as a part of W3C incubation group for SWS. From these markups, one can extract RDF representation of the resource that can be used in search, data integration (when resources are used in a mashup). (Yahoo already has provision for using RDFa for extracting additional semantic meta information while crawling). Feedbooks allows you to browse using many facets such as theme, author, Let us look at an example markup of a simple Web page.
  30. SA-REST can be extended and microformats can be created to markup a specific kind of resource. We have done this with hRESTs, a microformat for RESTful service markup.
  31. SAWSDL allows for service providers to capture semantics within service descriptions. Two parties in the SOA game are the provider and requestor. How can a requestor describe the requirements?
  32. Semantic Templates A way of capturing data / functional /non-functional /execution semantics for requirements Techniques for adding semantics follow SAWSDL principles Template Term Functional requirement (as Operation) Data requirement (as Inputs and Outputs) Term Policy Non-Functional requirement Assertions and constraints
  33. I will now discuss the impact of Semantic annotations in service discovery, data mediation and execution.
  34. Selecting the best set of business partners, suppliers, and contractors is an indispensable component in business process infrastructure. Ideally, partner selection should take into account both functional requirements that describe what task the partner is expected to perform and non-functional requirements that may include business parameters such as the cost and quality of the service provided by the partner.
  35. the keyword based search paradigm is extremely successful in the context of Web search, keywords are not sufficient to describe the desired functional and non-functional aspects of services. The other paradigm supported by UDDI is interface-based discovery. In this approach, certain popular interfaces can be published in a registry and services conforming to them can be classified as such. This approach has the limitation that the interface itself is treated as a black box and there is no mechanism to compute relationships between the interfaces. Our observation is that a number of services with similar functionality may have syntactically different interfaces, but similar or even equivalent semantic signatures.
  36. SEMRE is a semantic Web services registry based on UDDI, the WS registry standard. There have been many approaches to SWS registries, notably many that use UDDI. The key benefits fo SEMRE include
  37. SEMRE supports semantics natively; many approaches exist that use SWS and UDDI. However, they force-fit semantic metadta into existing UDDI data structures. In SEMRE, we extend UDDI data structures to support semantics, while taking care that their external interfaces do not change. In fact, SEMRE can function as plain old UDDI as well. Plus ontology management is incorporated into the registry,
  38. For the registry to select services based on the functional and non-functional requirements, it must allow service providers to publish their non-functional capabilities.
  39. The criteria for selection must not be too restrictive, since it may be very difficult to find services that exactly match the requirements. The requester must be able to specify the expected level of match for the different aspects of the request, such as data, functional and non-functional requirements.
  40. the requester must be able to create requirements that describe his functional and non-functional requirements. Such a requirement must also allow the requestor to specify the level of match expected for the different elements of the requirement.
  41. captures the semantic annotations of the domain and the operation information of a service interface(SI) or a template term in a semantic template; What does this service offer in what domain. We first calculate the SSI. Ms: is the semantic annotation on the interface Theta_i: a tuple consisting of the annotation on the operation and the data elements
  42. Interface relationship captures the relationship between two semantic interface signatures over a semantic meta-model. Relationship over domain, operation and data models. Fine grained representation of interface relation. For example, two services can offer the same functionality, but one offers a more generic data model. x
  43. For example, if a service is published with RPO for memory, it is added as an instance of semantic service model for RPO Memory. The syntactic label on the operation si not used for indexing but we see the service as an implementation of the RPOMemory concept in the ontology. The interface relationship will capture the fact that this service is related to RPO storage servces via subclass. This calculation is done in a lazy way by the system and the relationships are indexed for efficient search.
  44. We consider four levels of match: Equiv, generalized, subsumtion as well as discovery based on named relationship. in life sciences for example, one must look for services using named relationships. Example from SEMBOWSER or GlYCO
  45. semantic interface signature (Semantic Template) set of domain, operation, and data relationships which must exist between a semantic interface signature; he fulfillment set over domain ($R_F^S$) consists of all domain relationships that are stronger than the expected level of match. The fulfillment set over operations ($R_F^\\theta$) and data elements ($R_F^D$) are similarly defined. We compute this parallelly (each independent of other). Possible optimization also includes map reduce The cartesian product gives a set of all possible domain operation and data properties that fulfill Services that are instances of such interfaces are returned.
  46. Non-functional match. Define policy as a collection of alternatives and each alternative is inturn a collection of assertions. On the set of services that fulfill the functional requirements, we further identify those that fulfill non-functional requirements.
  47. Disjunction of alternatives. For example, production time + shipping time = supply time. A supplier can have an assertion saying supply time is 5 days and shipping time is 3 days. Requestor wants supply time to be less than 10 days. If this rule is modeled captured in the model, we apply the rule to the assertion values. Each operation policy can be independently computed for efficiency and aggregated in the end. JESS rules.
  48. Significant work in SWS discovery has been on IOPE matching. we compared our system. Eval consisted of creating a test scenario where 42 services matched a requirement (only functional, since other approaches do not consider non-functional). IO match yielded 153 services, IOPE did better 87, but IO with operation and domain using our approach was precise. We do note here that we tested on services that are completely annotated. More annotation meant more processing and this test set served well for timing tests. Also we note that all three approaches had the same benefit of high quality annotation.
  49. Discovery time vs no, of interfaces. Note that this is nearly a constant; this is because of the interface relationship precomputation. spikes are in cases when the match criterion was made very flexible.
  50. Discovery and ranking for RESTful services. There are more than few thousand APIs available. How does one find the right APIs for a application apiHUT is a web api search engine for faceted search. Faceted search allows for more directed and fine grained search. I want to find a mapping service that uses the REST protocol and supports JSON. Search either via Web interface or using restful service interface and post semantic templates. Our ranking approach, called Serviut rank, borrows the ideas of inlinks and outlinks from pagerank. Four metrics we consider are: mashups use this service mashups use other services that are same in functionality total services in the domain total mashups in the domain
  51. The SA-REST annotations of the APIs used apiHUT taxonomy, illustrated here as the semantic model; the semantic model available in RDFS. OUr search engine uses a hybrid of bayesian statistics, TF-IDF for text analysis and classification along with available semantic markups.
  52. A key SAWSDL upgrade is a systematic approach to data mediation
  53. Meta approach to data mediation. Rather than
  54. Rather than mediate between individual schemas, one can write reusable mediation scripts between concepts in the metamodel. Once individual schemas are annotated, one can create Lifting schema mapping and lowering schema mapping.
  55. liftingSchemaMapping: This can be used to specify mappings between WSDL Type Definitions in XML and semantic data. loweringSchemaMapping: This can be used to specify mappings between semantic data and WSDL Type Definitions in XML.
  56. Say we have discovered two services for image search: Live search and Yahoo image search. Given my target schema, which one should I choose so that mediation between this service and my mapping service is easier? My mapping service uses the target schema.
  57. A measure of ease of mediation between two schemas for a human Mediatability is a metric that estimates the ease of mediation between two schemas for a human; measure between 0 and 1, where 1 being hard to mediate and 0 being easy to mediate. Much of work in mediation have focussed on automatic mediation. hard and still not satisfactory. we thought it might be better to aid manual mediation.
  58. Two step process.
  59. A dynamic process is one in which partners of the process are bound during the execution. This process is created using semantic templates as process partners. Shown here is an example of a dynamic process in the domain of supply chain. The METEOR-S middleware is a semantic WS middleware capable of executing dynamic processes. This work was published in ICSOC 2005, ICWS 2006.
  60. We divide the process into three states; prebinding, binding and post binding. for each process instance the middleware maintains the state of the process. For each sematic template the middleware instantiates a service manager. the binding information of the service along with constraints is maintained by the service manager. Apache axis 2 and Apache synapse implementations.
  61. Standalone middleware over any bpel engine. proxy based approach.
  62. For mashups, we adopt a declarative paradigm (keeping in mind the scripting dfferences, lightweight paradigm). Snapshot of our first generation integration tool. developed in collaboration with IBM Almaden services research. Available at IBM alpha works.
  63. SMartmashups are appliations generated from a high level specification and are configured during their execution. Housing maps (craigslist + google maps) ; i want to show neighborhood information using street view. Depending on the city the user picks, i will choose that mapping API that shows the street view.