xml query language project dennis petesch mentors and affiliations: lola olsen & gcmd

16
XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Upload: caroline-klein

Post on 27-Mar-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

XML Query Language Project

Dennis Petesch

Mentors and Affiliations: Lola Olsen & GCMD

Page 2: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

What is GCMD?

Global Change Master DirectorySponsored by NasaAccessed OnlineContains Data Sets and PortalsLearning PageHas Docbuilder which aids in submitting

information to the GCMD.

Page 3: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD
Page 4: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Division of Time

Participating in a user testing survey for the Global Change Master Directory website (www.gcmd.nasa.gov). provided insightful knowledge about the website, which

would help future viewers better understand how to use and navigate throughout the site.

Remaining Time was spent on:

* Researching XML Databases * Developing a Java program * Testing * Documentation

Page 5: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Goal

Provide support by implementing a Java-based parser that will query the GCMD Database using XML XPath expressions (Standardized XML based query language) instead of the current in-house query language.

Page 6: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Research Questions XPath? The primary purpose of XPath is to address

certain criteria of an XML document through the hierarchal navigation of an XML document.

Will XPath be sufficient in filtering XML Metadata? Can I use XPath to exactly pinpoint certain information?

Page 7: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Approach

• Practice XML and Java

• Research XPath functionality

• Research Database functionality

• Testing XPath expressions• Black box testing• Open Source XML database from eXist, Xindice

Page 8: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

<?xml version="1.0" encoding="ISO8859-1" ?> <DIF>

<Parameters> <Topic>ATMOSPHERE</Topic> <Term>ATMOSPHERIC PHENOMENA</Term> <Variable>STORMS</Variable></Parameters><Parameters> <Topic>ATMOSPHERE</Topic> <Term>ATMOSPHERIC ANOMOLIES</Term> <Variable>HURRICANES</Variable></Parameters></DIF>

XML EXAMPLE

Page 9: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

GCMD Query Language

[Location:Location_Name=‘NORTH AMERICA’] OR

([Source_Name:Short_Name=‘LANDSAT’] AND

[Project:Short_Name=‘DODS’])

Grouping ()’s

[Location:Location_Name=‘NORTH AMERICA’] AND [Source_Name:Short_Name=‘LANDSAT’]

Boolean Queries

[Entry_ID=‘ZZZ415’]

Simple Queries

Page 10: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

/DIFS/DIF[Entry_ID/text()=‘ds018.0’][Entry_ID=‘ds018.0’]

XPathGCMD Query Language

EXAMPLE

Page 11: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

/DIFS/DIF[Location/Location_Name/

text()=‘NORTHERN HEMISPHERE’ and Data_Set_Language/text()=‘English’]

[Location:Location_Name=

‘NORTHERN HEMISPHERE’ ] AND [Data_Set_Language=‘English’]

XPathGCMD Query Language

Grouping()

Boolean

Page 12: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Database Comparison

Exist Open Source Written in Java Makes use of GUI Supports XPath &

XQuery 2^31 small documents Minimal command line

documentation

XINDICE Open Source Written in Java Makes use of GUI Does not support

XQuery Many small

documents Maintained by Apache

Page 13: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Results

• Xindice XML database fit requirements, plus it made easier use of the command line.

• Use a soap interface to interact with the user. The soap interface would tell the XML database what to search for, and then the formatted results would be displayed to the user on a web page.

Page 14: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Visualization

Page 15: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Summary

Review XML and JavaResearch XPathDevelop test dataBlack box testing on open source

databasesDevelop Java code to interact with

Database

Page 16: XML Query Language Project Dennis Petesch Mentors and Affiliations: Lola Olsen & GCMD

Questions