320 likes | 335 Views
Towards a Proxy Architecture for Semantic Web Services. Eric Rozell, Tetherless World Constellation ( http://bit.ly/erozell ). Workshop Scenario.
E N D
Towards a Proxy Architecture for Semantic Web Services Eric Rozell, Tetherless World Constellation (http://bit.ly/erozell)
Workshop Scenario • Scenario 1: Company A is hosting services on multiple Cloud instances on different continents, and needs to adapt its resource consumption through the different cloud management interfaces. It needs to create an uniform view of those computing resources
Heterogeniety in Web Service Semantics • Different cloud management systems likely provide heterogeneous syntax and semantics for their Web Service offerings • Syntactic Descriptions (w/ Annotations) • SAWSDL, OpenSearch, OData, … • Ontologies • OWL-S, SWSO, WSMO, … • This is a good thing! • Choice of Syntax and Semantics α Potential Use Cases
Motivation for Proxy Architecture • Clients designed for specific syntactic descriptions and ontologies • What if new syntactic description uses “understood” ontology? • Why require clients to understand syntactic descriptions?
S2S Framework • Part of NSF funded Semantic eScience Framework Project (SeSF Project) • Originally designed for oceanographic “data dashboard” • Used heterogeneous data and services • IOBIS: service for biogeographic data [DiGIR] • HydroBase: database of hydrographic profiles [cmd line] • BCO-DMO: data and metadata services for biological and chemical oceanography [SQL] • Interridge: hydrothermal vents database [Excel] • Designed an ontology around common “operations” used across each data source/service
S2S Syntactic Description Example • In OpenSearch… <Url type=“application/json” rel=“s2s-core:DatasetTableQuery” template=“http://aquarius.tw.rpi.edu/s2s/BCO-DMO/search.php?request=dataTable&bbox={geo:box?}&startDate={time:start?}&endDate={time:end?} …” />
S2S Syntactic Description Example • In SAWSDL… <wsdl:description … > <wsdl:types> <xs:element name=“input> <xs:element name=“bbox” … sawsdl:modelReference=“geo:box” /> <xs:element name=“startTime” … sawsdl:modelReference=“time:start” /> … </xs:element> <xs:element name=“output” … sawsdl:modelReference=“s2s-core:HtmlTable” /> </wsdl:types> <wsdl:interface> <wsdl:operation … sawsdl:modelReference=“s2s-core:DatasetTableQuery”> <wsdl:input element=“input”/> <wsdl:output element=“output” /> </wsdl:operation> </wsdl:interface> </wsdl:description>
S2S Framework • Goal: Keep client-server interaction as simple as possible • Used OpenSearch for description of Web services (w/ semantic annotations) • Designed precursor to proxy architecture • Facilitated reuse of UI “widgets” for search and visualization • Limited to stateless search and retrieval
Towards a More General Proxy Architecture • Given that the S2S paradigm is limited to stateless search and retrieval… • Is this “proxy architecture” applicable more generally to Semantic Web Services?
Benefits • Reduces complexity of clients • Not required to “understand” syntactic descriptions of Web Services • Fewer requests made by clients • Extensibility • Adaptable to multiple syntactic descriptions (provided compatibility with SWS ontology)
Things to Consider for W3C • Recommending communication protocol for Semantic Web Service proxies • RDF or JSON • Vocabulary considerations (would a generic architecture would adapt to new ontologies?) • Defining HTTP methods • Soliciting implementations for the proxy architecture • Semantic Automated Discovery and Integration (SADI) • OWL-S API
Conclusion • S2S proxy architecture has shifted much of the burden for Web Service interaction away from the client • A more general proxy architecture may be useful to increase adoption and use of Semantic Web Services • There is a need for W3C recommendations for this to move forward
Questions? • Thanks for listening!
S2S Resources • Faceted browser for Biological and Chemical Oceanography Data Management Office (BCO-DMO) [http://bit.ly/bcodmo-demo] • Faceted browser for International Open Government Data Search (IOGDS) [http://bit.ly/twiogdc] • S2S Project Page [http://bit.ly/twcs2s]