SlideShare a Scribd company logo
SEARCHING A NATIVE XML WEBSITE USING XML
TECHNOLOGIES
Alex Sumner, Sophomore, Computer Science Major
Mustafa Atay, PhD, Associate Professor
Department of Computer Science
Conclusions
Our developed Basic and Advanced Search modules
showed that an XML website can be successfully
augmented with a client-side search utility using
JavaScript for effective searching. We made use of HTML
DOM and simple Regular Expressions in our search
modules. We plan to extend our research work with the
use complex Regular Expressions for finer filtering, XML
DOM and server side search utility in the future.
References
1. "XSLT Tutorial." XSLT Tutorial. World Wide Web
Consortium, Web. 21 May 2014.
2. "JavaScript Tutorial." JavaScript Tutorial. World Wide
Web Consortium, Web. 21 May 2014.
3. "JavaScript RegExp Object." JavaScript RegExp Object.
World Wide Web Consortium, Web. 21 May 2014.
4. "JavaScript HTML DOM Navigation." JavaScript HTML
DOM Navigation. World Wide Web Consortium, Web.
22 May 2014.
5. "HTML Forms and Input." HTML Forms and Input.
World Wide Web Consortium, Web. 21 May 2014.
Acknowledgement
This project is funded and supported by the NSF HBCU-UP
Implementation Grant: Raising Achievement in
Mathematics and Science (RAMS) with Award #0927905.
In this research we utilized patterns from Regular
Expressions to assist our search utilities. Regular
expressions are used primarily for searching and replacing
functions. It uses modifiers, such as i, which is used for
case insensitive searches.
Example:
var patt = /pattern/modifier
var search = new RegExp(key,’i’);
Regular Expressions
Figure 6: XML Website with the Search
Utility Panel
In this research we utilized both XML and HTML DOM
(Document Object Model). DOM is a W3C standard for
accessing, changing, adding, and deleting XML and HTML
elements.
Document Object Model
Figure 1: Sample DOM Tree
Abstract
Background:
XML (Extensible Markup Language) is a standard to
represent and exchange data. XML separates content
from its style. The separation of content and formatting
should allow web programmers to come up with efficient
document search modules for XML-based websites. In this
research project, we aim to develop a client-side search
module for a native XML website using technologies and
standards such as Extensible Stylesheet Language
Transformations (XSLT), XML Path Language (XPath),
Document Object Model (DOM), Regular Expressions and
JavaScript.
We have developed JavaScript code for client-side
searching which is placed and invoked within XSLT code
files. The JavaScript code navigated the DOM hierarchy of
the underlying document. We have used string match
operator along with regular expressions for effective and
targeted search operations. We used our XML-based
website previously developed for WSSU SURE program as
the test bed. Our developed application and observations
showed that a native XML website can be effectively
searched using XML technologies combined with a
scripting language.
Method of Conduct:
The method of this research project includes the following
steps: (i) Review XML and other technologies and tools
available such as XSLT, XPath and DOM to support
searching a native XML website. (ii) Implement a client-
side search utility using the selected technologies and
tools and a scripting language on a test bed XML website.
(iii) Observe and report the applicability, effectiveness and
challenges of using XML to incorporate a client-side
search utility over XML websites.
• XML
• XSLT
• XPath
• JavaScript
• DOM
• Regular Expressions
• HTML
Technologies Used
Can a native XML (Extensible Markup Language) website
be effectively augmented with a client-side search utility
using XML technologies and a scripting language?
Research Statement
Advanced Search
The other search utility that we introduced is the
Advanced Search. This search has introduced more
options than the Basic Search. With this search the user
is able to choose which column they want to search
through. There is the option of searching through the
advisor’s name, the participant’s name, or even the
research’s discipline. The user can also search through
the three columns at the same time to refine their search.
Once again there is also the option for the search to be
case sensitive or insensitive. In our research the
advanced search was our ultimate goal. This search
utilizes three different HTML input types including: radio
buttons, text boxes, a checkbox, and two buttons. The
radio buttons are in place for the user to search through
the discipline in which the research takes place. The first
text box is used to search through the names of the
advisors. The second text box is used to search through
the names of the participants. Like the basic search, the
advanced search also contains a checkbox with the
capability of making the search case sensitive or
insensitive. The first button is a submit button used to
call the doSearch() function for searching through the
table. The second button is a reset button that calls the
Reset() function for resetting the HTML form.
Figure 4: JavaScript Code Segment for
Advanced Search
Figure 5: XSLT Code Segment
Basic Search
The first contribution to the website is the Basic Search.
This search is exactly as the name implies. The user is
able to search using a keyword from the participants
page. This keyword could be a series of letters or
numbers, the participant’s name, their discipline, the
advisor’s name, or the advisor’s phone number. With this
search is also the option for the search to be case
sensitive or insensitive. The primary concept in the
development of this search utility was to allow the user to
search through all of the text fields using one text box.
The code for the basic search is capable of searching
through all four columns of the table through the user’s
input.
Figure 2: XML Code Segment and Search
Bar
Figure 3: JavaScript Code Segment for
Basic Search

More Related Content

What's hot

Web app development_html_01
Web app development_html_01Web app development_html_01
Web app development_html_01
Hassen Poreya
 
Annotations chicago
Annotations chicagoAnnotations chicago
Annotations chicago
Timothy Cole
 

What's hot (20)

NCompass Live: Here’s What Python Does for Us: What Can it Do for Your Library?
NCompass Live: Here’s What Python Does for Us: What Can it Do for Your Library?NCompass Live: Here’s What Python Does for Us: What Can it Do for Your Library?
NCompass Live: Here’s What Python Does for Us: What Can it Do for Your Library?
 
Full xml
Full xmlFull xml
Full xml
 
Meher ppt (1)
Meher ppt (1)Meher ppt (1)
Meher ppt (1)
 
Web app development_html_01
Web app development_html_01Web app development_html_01
Web app development_html_01
 
Lesson 5
Lesson 5Lesson 5
Lesson 5
 
CTDA Workshop on XML and MODS
CTDA Workshop on XML and MODSCTDA Workshop on XML and MODS
CTDA Workshop on XML and MODS
 
CTDA Workshop on XSL
CTDA Workshop on XSLCTDA Workshop on XSL
CTDA Workshop on XSL
 
93 peter butterfield
93 peter butterfield93 peter butterfield
93 peter butterfield
 
DC-dot
DC-dotDC-dot
DC-dot
 
Extensible stylesheet language (Transformation) or XSLT
Extensible stylesheet language (Transformation) or XSLTExtensible stylesheet language (Transformation) or XSLT
Extensible stylesheet language (Transformation) or XSLT
 
2011linked science4mccuskermcguinnessfinal
2011linked science4mccuskermcguinnessfinal2011linked science4mccuskermcguinnessfinal
2011linked science4mccuskermcguinnessfinal
 
Nadsasa
NadsasaNadsasa
Nadsasa
 
Annotations chicago
Annotations chicagoAnnotations chicago
Annotations chicago
 
Linked dataresearch
Linked dataresearchLinked dataresearch
Linked dataresearch
 
Mods0210
Mods0210Mods0210
Mods0210
 
Implementing the Open Government Directive using the technologies of the Soci...
Implementing the Open Government Directive using the technologies of the Soci...Implementing the Open Government Directive using the technologies of the Soci...
Implementing the Open Government Directive using the technologies of the Soci...
 
Blast
Blast Blast
Blast
 
ISO MLR semantics
ISO MLR semanticsISO MLR semantics
ISO MLR semantics
 
Dublin Core In Practice
Dublin Core In PracticeDublin Core In Practice
Dublin Core In Practice
 
Omitola w3 c_govtlinkeddata
Omitola w3 c_govtlinkeddataOmitola w3 c_govtlinkeddata
Omitola w3 c_govtlinkeddata
 

Viewers also liked

Web Page Authoring 1
Web Page Authoring 1Web Page Authoring 1
Web Page Authoring 1
yht4ever
 
Applications of SOA and Web Services in Grid Computing
Applications of SOA and Web Services in Grid ComputingApplications of SOA and Web Services in Grid Computing
Applications of SOA and Web Services in Grid Computing
yht4ever
 
Xsl Tand X Path Quick Reference
Xsl Tand X Path Quick ReferenceXsl Tand X Path Quick Reference
Xsl Tand X Path Quick Reference
LiquidHub
 
Common DataPower use cases, incl Caching with XC-10 appliance.
Common DataPower use cases, incl Caching with XC-10 appliance.Common DataPower use cases, incl Caching with XC-10 appliance.
Common DataPower use cases, incl Caching with XC-10 appliance.
sflynn073
 

Viewers also liked (20)

treeview
treeviewtreeview
treeview
 
Rendering XML Document
Rendering XML DocumentRendering XML Document
Rendering XML Document
 
WebSphere DataPower B2B Appliance overview
WebSphere DataPower B2B Appliance overviewWebSphere DataPower B2B Appliance overview
WebSphere DataPower B2B Appliance overview
 
XML and XSLT
XML and XSLTXML and XSLT
XML and XSLT
 
Introduction to HTML
Introduction to HTMLIntroduction to HTML
Introduction to HTML
 
Xslt tutorial
Xslt tutorialXslt tutorial
Xslt tutorial
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLT
 
Web Page Authoring 1
Web Page Authoring 1Web Page Authoring 1
Web Page Authoring 1
 
Applications of SOA and Web Services in Grid Computing
Applications of SOA and Web Services in Grid ComputingApplications of SOA and Web Services in Grid Computing
Applications of SOA and Web Services in Grid Computing
 
Rendering XML Documents
Rendering XML DocumentsRendering XML Documents
Rendering XML Documents
 
XSLT
XSLTXSLT
XSLT
 
Learning XSLT
Learning XSLTLearning XSLT
Learning XSLT
 
Xquery
XqueryXquery
Xquery
 
Tracking Message Flows in DataPower With CA APM
Tracking Message Flows in DataPower With CA APMTracking Message Flows in DataPower With CA APM
Tracking Message Flows in DataPower With CA APM
 
XSLT
XSLTXSLT
XSLT
 
XML/XSLT
XML/XSLTXML/XSLT
XML/XSLT
 
Xsl Tand X Path Quick Reference
Xsl Tand X Path Quick ReferenceXsl Tand X Path Quick Reference
Xsl Tand X Path Quick Reference
 
XSLT and XPath - without the pain!
XSLT and XPath - without the pain!XSLT and XPath - without the pain!
XSLT and XPath - without the pain!
 
Common DataPower use cases, incl Caching with XC-10 appliance.
Common DataPower use cases, incl Caching with XC-10 appliance.Common DataPower use cases, incl Caching with XC-10 appliance.
Common DataPower use cases, incl Caching with XC-10 appliance.
 
Intorduction to Datapower
Intorduction to DatapowerIntorduction to Datapower
Intorduction to Datapower
 

Similar to SURE_2014 Poster 2.0

SURE Research Report
SURE Research ReportSURE Research Report
SURE Research Report
Alex Sumner
 
A novel approach towards developing a statistical dependent and rank
A novel approach towards developing a statistical dependent and rankA novel approach towards developing a statistical dependent and rank
A novel approach towards developing a statistical dependent and rank
IAEME Publication
 

Similar to SURE_2014 Poster 2.0 (20)

SURE Research Report
SURE Research ReportSURE Research Report
SURE Research Report
 
In3415791583
In3415791583In3415791583
In3415791583
 
SharePoint Jumpstart #2 Making Basic SharePoint Search Work
SharePoint Jumpstart #2 Making Basic SharePoint Search WorkSharePoint Jumpstart #2 Making Basic SharePoint Search Work
SharePoint Jumpstart #2 Making Basic SharePoint Search Work
 
Building multi billion ( dollars, users, documents ) search engines on open ...
Building multi billion ( dollars, users, documents ) search engines  on open ...Building multi billion ( dollars, users, documents ) search engines  on open ...
Building multi billion ( dollars, users, documents ) search engines on open ...
 
Making IA Real: Planning an Information Architecture Strategy
Making IA Real: Planning an Information Architecture StrategyMaking IA Real: Planning an Information Architecture Strategy
Making IA Real: Planning an Information Architecture Strategy
 
Searching Repositories of Web Application Models
Searching Repositories of Web Application ModelsSearching Repositories of Web Application Models
Searching Repositories of Web Application Models
 
Semantic framework for web scraping.
Semantic framework for web scraping.Semantic framework for web scraping.
Semantic framework for web scraping.
 
call for paper 2012, hard copy of journal, research paper publishing, where t...
call for paper 2012, hard copy of journal, research paper publishing, where t...call for paper 2012, hard copy of journal, research paper publishing, where t...
call for paper 2012, hard copy of journal, research paper publishing, where t...
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
professional fuzzy type-ahead rummage around in xml type-ahead search techni...
professional fuzzy type-ahead rummage around in xml  type-ahead search techni...professional fuzzy type-ahead rummage around in xml  type-ahead search techni...
professional fuzzy type-ahead rummage around in xml type-ahead search techni...
 
A novel approach towards developing a statistical dependent and rank
A novel approach towards developing a statistical dependent and rankA novel approach towards developing a statistical dependent and rank
A novel approach towards developing a statistical dependent and rank
 
Solr Architecture
Solr ArchitectureSolr Architecture
Solr Architecture
 
Semantic Knowledge Acquisition of Information for Syntactic web
Semantic Knowledge Acquisition of Information for Syntactic web Semantic Knowledge Acquisition of Information for Syntactic web
Semantic Knowledge Acquisition of Information for Syntactic web
 
ElasticSearch
ElasticSearchElasticSearch
ElasticSearch
 
User friendly pattern search paradigm
User friendly pattern search paradigmUser friendly pattern search paradigm
User friendly pattern search paradigm
 
Introduction to internet.
Introduction to internet.Introduction to internet.
Introduction to internet.
 
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML ParsingMastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
 
Introduction To Enterprise Search Tulsa Tech Fest 2009
Introduction To Enterprise Search   Tulsa Tech Fest 2009Introduction To Enterprise Search   Tulsa Tech Fest 2009
Introduction To Enterprise Search Tulsa Tech Fest 2009
 
How to Find a Needle in the Haystack
How to Find a Needle in the HaystackHow to Find a Needle in the Haystack
How to Find a Needle in the Haystack
 
2
22
2
 

SURE_2014 Poster 2.0

  • 1. SEARCHING A NATIVE XML WEBSITE USING XML TECHNOLOGIES Alex Sumner, Sophomore, Computer Science Major Mustafa Atay, PhD, Associate Professor Department of Computer Science Conclusions Our developed Basic and Advanced Search modules showed that an XML website can be successfully augmented with a client-side search utility using JavaScript for effective searching. We made use of HTML DOM and simple Regular Expressions in our search modules. We plan to extend our research work with the use complex Regular Expressions for finer filtering, XML DOM and server side search utility in the future. References 1. "XSLT Tutorial." XSLT Tutorial. World Wide Web Consortium, Web. 21 May 2014. 2. "JavaScript Tutorial." JavaScript Tutorial. World Wide Web Consortium, Web. 21 May 2014. 3. "JavaScript RegExp Object." JavaScript RegExp Object. World Wide Web Consortium, Web. 21 May 2014. 4. "JavaScript HTML DOM Navigation." JavaScript HTML DOM Navigation. World Wide Web Consortium, Web. 22 May 2014. 5. "HTML Forms and Input." HTML Forms and Input. World Wide Web Consortium, Web. 21 May 2014. Acknowledgement This project is funded and supported by the NSF HBCU-UP Implementation Grant: Raising Achievement in Mathematics and Science (RAMS) with Award #0927905. In this research we utilized patterns from Regular Expressions to assist our search utilities. Regular expressions are used primarily for searching and replacing functions. It uses modifiers, such as i, which is used for case insensitive searches. Example: var patt = /pattern/modifier var search = new RegExp(key,’i’); Regular Expressions Figure 6: XML Website with the Search Utility Panel In this research we utilized both XML and HTML DOM (Document Object Model). DOM is a W3C standard for accessing, changing, adding, and deleting XML and HTML elements. Document Object Model Figure 1: Sample DOM Tree Abstract Background: XML (Extensible Markup Language) is a standard to represent and exchange data. XML separates content from its style. The separation of content and formatting should allow web programmers to come up with efficient document search modules for XML-based websites. In this research project, we aim to develop a client-side search module for a native XML website using technologies and standards such as Extensible Stylesheet Language Transformations (XSLT), XML Path Language (XPath), Document Object Model (DOM), Regular Expressions and JavaScript. We have developed JavaScript code for client-side searching which is placed and invoked within XSLT code files. The JavaScript code navigated the DOM hierarchy of the underlying document. We have used string match operator along with regular expressions for effective and targeted search operations. We used our XML-based website previously developed for WSSU SURE program as the test bed. Our developed application and observations showed that a native XML website can be effectively searched using XML technologies combined with a scripting language. Method of Conduct: The method of this research project includes the following steps: (i) Review XML and other technologies and tools available such as XSLT, XPath and DOM to support searching a native XML website. (ii) Implement a client- side search utility using the selected technologies and tools and a scripting language on a test bed XML website. (iii) Observe and report the applicability, effectiveness and challenges of using XML to incorporate a client-side search utility over XML websites. • XML • XSLT • XPath • JavaScript • DOM • Regular Expressions • HTML Technologies Used Can a native XML (Extensible Markup Language) website be effectively augmented with a client-side search utility using XML technologies and a scripting language? Research Statement Advanced Search The other search utility that we introduced is the Advanced Search. This search has introduced more options than the Basic Search. With this search the user is able to choose which column they want to search through. There is the option of searching through the advisor’s name, the participant’s name, or even the research’s discipline. The user can also search through the three columns at the same time to refine their search. Once again there is also the option for the search to be case sensitive or insensitive. In our research the advanced search was our ultimate goal. This search utilizes three different HTML input types including: radio buttons, text boxes, a checkbox, and two buttons. The radio buttons are in place for the user to search through the discipline in which the research takes place. The first text box is used to search through the names of the advisors. The second text box is used to search through the names of the participants. Like the basic search, the advanced search also contains a checkbox with the capability of making the search case sensitive or insensitive. The first button is a submit button used to call the doSearch() function for searching through the table. The second button is a reset button that calls the Reset() function for resetting the HTML form. Figure 4: JavaScript Code Segment for Advanced Search Figure 5: XSLT Code Segment Basic Search The first contribution to the website is the Basic Search. This search is exactly as the name implies. The user is able to search using a keyword from the participants page. This keyword could be a series of letters or numbers, the participant’s name, their discipline, the advisor’s name, or the advisor’s phone number. With this search is also the option for the search to be case sensitive or insensitive. The primary concept in the development of this search utility was to allow the user to search through all of the text fields using one text box. The code for the basic search is capable of searching through all four columns of the table through the user’s input. Figure 2: XML Code Segment and Search Bar Figure 3: JavaScript Code Segment for Basic Search