1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI Week 9, October 27, 2008
Contents Review of reading, questions, comments Technology and how to use it Summary Next week 2
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 Infrastructure Rapid Prototype Open World: Evolve, Iterate, Redesign, Redeploy Use Tools Science/Expert Review & Iteration Develop model/ ontology Evaluation
Architecture Importance of state –Grids –Web Existing infrastructure –Catalogs –Data sources –User interfaces –Services Wrapping these syntactic interface 4
Inventory Refer to the Resources –Files –Databases –Catalogs –Existing UI –Services –User database/ security –Logging –Backup/ archive 5
… … Geo App 1 Geo App 2 App 3 DB 2 DB 3 DB n DB 1 WSCommo n Web Coverage Service Web Feature Service Web Mapping Service Limited interoperability
Fox WHOI: Semantic Data Frameworks March 20, The Astronomy approach; data- types as a service … … VO App 1 VO App 2 VO App 3 DB 2 DB 3 DB n DB 1 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
… … Web Portal Web Serv. API DB 2 DB 3 DB … DB 1 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 query, hypothesis and inference Semantic interoperability Data as Service
Implementing Let’s take an example –VSTO –Representative but does not exercise all semantic web capabilities 9
Fox RPI: Semantic Data Frameworks May 14, Web Service
11
12
13
14
15
16 2
Additional middleware Web server, Tomcat are essential (Axis) MySQL (or similar) is very handy to have OPeNDAP – for data access and transport 17
Fox RPI: Semantic Data Frameworks May 14, Web Service
20 Infrastructure Protégé-OWL-API – dex.htmlhttp://protege.stanford.edu/plugins/owl/api/in dex.html – uide.htmlhttp://protege.stanford.edu/plugins/owl/api/g uide.html Jena (Java API for RDF and OWL) – integration.htmlhttp://protege.stanford.edu/plugins/owl/jena- integration.html – –Migrate to other triple stores when needed
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
Examine some of the code Java Factory class Code stubs and ‘myclass’ VSTO code base will be made available for browsing 22
Jena 23
Infrastructure Reasoner – DIG/Pellet – ReasonerAPIhttp://protegewiki.stanford.edu/index.php/Protege ReasonerAPI SPARQL – lementationshttp:// lementations Spring (Application Framework - optional) – Eclipse (IDE) – 24
Infrastructure Rules –SWRL – plug-in for Protégé –Jess rules –Jess rules engine
Software development Junit (generated in Eclipse) – protege.stanford.edu/repos/protege/owl/trunk/juni t.properties.templatehttp://smi- protege.stanford.edu/repos/protege/owl/trunk/juni t.properties.template Faceted browsing – mspace 26
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
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
Fox RPI: Semantic Data Frameworks May 14, Semantic Web Services
Fox RPI: Semantic Data Frameworks May 14, Semantic Web Services OWL document returned using VSTO ontology - can be used both syntactically or semantically
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
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
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
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