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

Post on 27-Mar-2015

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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.

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

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.

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?

Approach

• Practice XML and Java

• Research XPath functionality

• Research Database functionality

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

<?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

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

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

XPathGCMD Query Language

EXAMPLE

/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

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

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.

Visualization

Summary

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

databasesDevelop Java code to interact with

Database

Questions

top related