Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, November 9, 2009
Download ReportTranscript Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, November 9, 2009
Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI-6962-01 Week 9, November 9, 2009 1 Contents • • • • Review of reading, questions, comments Technology and how to use it Summary Next week 2 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. Adopt Leverage Science/Expert Rapid Technology Open World: Prototype Technology Review & Iteration Approach Infrastructure Evolve, Iterate, Redesign, Redeploy Use Tools Evaluation Analysis Use Case Small Team, mixed skills Develop model/ ontology 3 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 Limited interoperability Geo App1 Geo App2 App3 WSComm on Web Coverage Service Web Feature Service Web Mapping Service DB2 DB1 DB3 ………… DBn The Astronomy approach; datatypes as a service Limited interoperability VO App1 VO App2 VO App3 VOTabl e Simple Image Access Protocol Simple Spectrum Access Protocol VO layer Lightweight semantics Limited meaning, hard coded DB2 DB1 DB3 ………… Limited extensibility Under review Fox WHOI: Semantic Data Frameworks March 20, DBn Simple Time Access 7 Protocol Education, clearinghouses, disciplines, etc. other services, Semantic mediation layer - midupper-level Semantic interoperability Web Serv. Web Portal API Query, access and use of data Semantic query, hypothesis and inference 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, Data as Service testing, explanation, etc. Metadata, schema, data DB1 DB2 DB3 ………… DB… Implementing • Let’s take an example – VSTO – Representative but does not exercise all semantic web capabilities 9 Web Service 10 Fox RPI: Semantic Data Frameworks May 14, 11 12 13 14 15 2 16 Additional middleware • Web server, Tomcat are essential (Axis) • MySQL (or similar) is very handy to have • OPeNDAP – for data access and transport 17 Web Service 18 Fox RPI: Semantic Data Frameworks May 14, Infrastructure • Protégé-OWL-API – http://protege.stanford.edu/plugins/owl/api/in dex.html – http://protege.stanford.edu/plugins/owl/api/g uide.html • Jena (Java API for RDF and OWL) – http://protege.stanford.edu/plugins/owl/jenaintegration.html – http://jena.sourceforge.net/ – Migrate to other triple stores when needed 20 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 – http://protegewiki.stanford.edu/index.php/Protege ReasonerAPI • SPARQL – http://www.w3.org/2001/sw/DataAccess/tests/imp lementations • Spring (Application Framework - optional) – http://www.springframework.org/ • Eclipse (IDE) – http://www.eclipse.org/ 24 Infrastructure • Rules – SWRL – plug-in for Protégé – Jess rules – Jess rules engine http://herzberg.ca.sandia.gov/jess/ 25 Software development • Junit (generated in Eclipse) – http://smiprotege.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 Semantic Web Services 29 Fox RPI: Semantic Data Frameworks May 14, Semantic Web Services OWL document returned using VSTO ontology can be used both syntactically or semantically 30 Fox RPI: Semantic Data Frameworks May 14, 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 2008 Assignments 32 33 34 Orchard Irrigation • External slides 35 Diet exchange • External slides 36 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 37 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 38 Next week • This weeks assignment: – Reading: Evaluation • Next class (week 10 – November 16): – Application Project Evaluation • Office hours this week – Tuesday 11-12, Winslow 2120 • Questions? 39