1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox...

34
1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008

Transcript of 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox...

Page 1: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

1

Foundations V: Infrastructure and Architecture, Middleware

Deborah McGuinness and Peter Fox

CSCI-6962-01

Week 9, October 27, 2008

Page 2: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Contents• Review of reading, questions, comments

• Technology and how to use it

• Summary

• Next week

2

Page 3: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

3

Semantic Web Methodology and Technology Development Process

• Establish and improve a well-defined methodology vision for Semantic Technology based application development

• Leverage controlled vocabularies, et c.

Use Case

Small Team, mixed skills

Analysis

Adopt Technology Approach

Leverage Technology Infrastructur

e

Rapid PrototypeOpen World:

Evolve, Iterate, Redesign, Redeploy

Use Tools

Science/Expert Review & Iteration

Develop model/

ontology

EvaluationEvaluation

Page 4: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Architecture• Importance of state

– Grids– Web

• Existing infrastructure– Catalogs– Data sources– User interfaces– Services

• Wrapping these syntactic interface

4

Page 5: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Inventory• Refer to the Resources

– Files– Databases– Catalogs– Existing UI– Services– User database/ security– Logging– Backup/ archive

5

Page 6: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

… … … …

Geo App1Geo App2

App3

DB2 DB3DBn

DB1

WSCommon

Web Coverage Service

Web Feature Service

Web Mapping Service

Limited interoperability

Page 7: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Fox WHOI: Semantic Data Frameworks March 20, 2008

7

The Astronomy approach; data-types as a service

… … … …

VO App1

VO App2VO App3

DB2 DB3DBn

DB1

VOTable

Simple Image

Access Protocol

Simple Spectrum

Access Protocol

Simple Time

Access Protocol

VO layer

Limited interoperability

Lightweight semantics

Limited meaning, hard coded

Limited extensibility

Under review

Page 8: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

… … … …

Web Portal

Web Serv.

API

DB2 DB3DB…

DB1

Semantic mediation layer: Ontology - capturing concepts of Parameters, Instruments, Date/Time, Space, Event, Feature, Data Product (and associated classes, properties) and Service Classes. Maps queries to underlying data. Generates access requests for metadata, data. Allows queries, reasoning, analysis, new hypothesis generation, testing, explanation, etc.

Semantic mediation layer - mid-upper-level

Education, clearinghouses, other services, disciplines, etc.

Metadata, schema, data

Query, access and use of data

Semantic interoperability

Data as Service

Page 9: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Implementing• Let’s take an example

– VSTO– Representative but does not exercise all

semantic web capabilities

9

Page 10: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Fox RPI: Semantic Data Frameworks May 14, 2008

10

Web Service

Page 11: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

11

Page 12: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

12

Page 13: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

13

Page 14: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

14

Page 15: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

15

Page 16: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

16

2

Page 17: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Additional middleware• Web server, Tomcat are essential (Axis)

• MySQL (or similar) is very handy to have

• OPeNDAP – for data access and transport

17

Page 18: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Fox RPI: Semantic Data Frameworks May 14, 2008

18

Web Service

Page 19: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.
Page 20: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

20

Infrastructure• Protégé-OWL-API

– http://protege.stanford.edu/plugins/owl/api/index.html

– http://protege.stanford.edu/plugins/owl/api/guide.html

• Jena (Java API for RDF and OWL)– http://protege.stanford.edu/plugins/owl/jena-

integration.html

– http://jena.sourceforge.net/

– Migrate to other triple stores when needed

Page 21: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Using Protégé• Load VSTO into Protégé 3.4beta

• Generate Java-OWL classes from Tool menu

• Review other tools for generating code stubs

21

Page 22: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Examine some of the code• Java Factory class

• Code stubs and ‘myclass’

• VSTO code base will be made available for browsing

22

Page 23: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Jena

23

Page 24: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Infrastructure• Reasoner – DIG/Pellet

– http://protegewiki.stanford.edu/index.php/ProtegeReasonerAPI

• SPARQL– http://www.w3.org/2001/sw/DataAccess/tests/

implementations

• Spring (Application Framework - optional)– http://www.springframework.org/

• Eclipse (IDE)– http://www.eclipse.org/

24

Page 25: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Infrastructure• Rules

– SWRL – plug-in for Protégé– Jess rules– Jess rules engine -

http://herzberg.ca.sandia.gov/jess/

25

Page 26: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Software development• Junit (generated in Eclipse)

– http://smi-protege.stanford.edu/repos/protege/owl/trunk/junit.properties.template

• Faceted browsing – mspace

26

Page 27: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Metadata• Migrate metadata into ontologies – instances,

choose how you will populate them– Manual – okay to start with sufficient annotation– Scripted – preferred – rdfs_comment: essential

• Choose what you will not, cannot move

27

Page 28: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Services• If you are going to put up services, include an

end-point and a link to your WSDL (or SAWSDL)

• At this point, developing a full services ontology, e.g. in OWL-S may be beyond the initial implementation

28

Page 29: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Fox RPI: Semantic Data Frameworks May 14, 2008

29

Semantic Web Services

Page 30: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Fox RPI: Semantic Data Frameworks May 14, 2008

30

Semantic Web Services

OWL document returned using VSTO ontology - can be used both syntactically or semantically

Page 31: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Result/ outcome• Refer to the use case document

• Check the expected outcome and see if the test (to verify outcome) is complete

• Document all variations, note alternate flows

• Document in sufficient detail that someone else could come along and re-produce your work

• Include URLs for access, etc.

31

Page 32: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Metrics• Next week we will cover evaluation but

already be thinking of things you can measure– Could not do before– Faster, more complete, less mistakes, etc.– Wider range of users

• Estimate the baseline before you start

32

Page 33: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Summary• Architectural design needs to take into

account existing resources that you will leverage

• Keeping it simple is also very important as you begin to implement

• Take time to learn the tools and the supporting APIs; look at existing examples and working code

• Being prepared to iterate is really essential

33

Page 34: 1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, October 27, 2008.

Next week• This weeks assignment:

– Reading: Evaluation– Assignment 3: Team Use Case Implementation

(on the class wiki later today)

• Next class (week 10 – November 3): – Class Presentation II: Use Case Implementation

• Office hours this week – Thursday afternoon 1-2, Winslow 1140

• Questions?

34