1 / 24

DSpace XML UI Project

The XML.UI is a new front-end for DSpace that allows communities and collections to customize their interface, improve internationalization support, and separate stylistic logic from the core DSpace business logic.

judithwhite
Download Presentation

DSpace XML UI Project

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DSpace XML UI Project Texas A&M University Digital Initiatives, Research and Technology Scott Phillips, Cody Green, Alexey Maslov, Adam Mikeal, Brian Surratt, John Leggett

  2. Agenda • What & Why • Design goals • Architectural Overview • Schema Overview • Themes • Future Work • Questions

  3. What is the “XML UI”? • The XML UI is a new front-end for DSpace that: • Enables communities and collections to customize their interface • Improves support for internationalization • Removes stylistic logic from the core DSpace business logic

  4. Why? • Why is this good? • Branding • University level • Community level • Institutional credibility • Community ownership & buy in • Increase adoption of DSpace?

  5. Design Goals • Enable each community & collection to maintain a distinct look and feel • Separate business logic from stylistic controls • Increase ease of adaptability • Languages • Other formats • Provide an alternative user interface • With no API or DB changes

  6. Architectural Overview • HTTP Request • Tomcat identifies the Java servlet • Java Servlets • Processes form data • Determines flow control • Instantiates the XML Object • XML Manager • Creates the XML Document • Calls the XML Object • XML Framer • Inserts content into the document • Theme Manager • Determines the theme • Applies the theme • HTTP Response • Serializes the document into a stream for transmission. HTTP Request Java Servlets DSpace themes.xml XML Manager Theme Manager XML Framers HTTP Response

  7. HTTP Request • Tomcat receives the HTTP Request • Directs request to a Java Servlet • No difference from the current “webui” (except a different implementation of the servlet is used) • Future plug-in architecture?

  8. Java Servlets • Processes the form data • Determines flow control • Instantiates the XML Framer • Servlet & XML Object ( JSP ) coupling made more explicit

  9. XML Manager • Creates the XML Document • Interfaces with: • XML Framework • XML Framer • Theme Manager • Roughly equivalent to the “webui”s JSPManager

  10. XML Framework • Document Object Model (DOM) based • Objects vs streams or events • Easier manipulation • XML Framework • Used by the XML Manager & XML Framers • Manipulate the DOM • Specific to the DSpace XML UI Schema (described later in the presentation)

  11. XML Framer • Inserts the desired content into the document • Uses the XML Framework • Equivalent in purpose to JSP pages. • “Pure java” • No <% some java code here %> tags!

  12. XML Framer (Example)

  13. XML Framer (Example)

  14. Theme Manager • Determines the theme based on: • user supplied theme parameter • url path • regex expression • collection or community • Themes are configured by an XML file, themes.xml • There is no equivalent of the theme manager in the existing implementation

  15. Theme Manager (themes.xml)

  16. HTTP Response • Finally the XML Manager: • Serialize the DOM into a stream • Transmit to the user

  17. Schema Overview • Examining an existing DSpace page we found three main parts: Meta information about the page Available navigational options The main body

  18. Schema Overview • Three major parts: • meta • options • body • Display types: • sections • tables • forms page meta body options section tabular form

  19. Schema & Languages • Problems • Themes generating content • Partial page translations • Multiple languages? • Display formats other than plain XHTML • Applets, JavaScript • Caching • Simplicity • Keep theme writing easy & simple

  20. Schema & Languages • May mostly ignore language issues. • Two language models: Simple Model Complex Model • More control given to the theme.

  21. Themes • Transform the DSpace XML into a display format • Themes are implemented in XSL • May filter content • For XHTML interfaces: • “css_base” • A set of templates to transform the DSpace XML UI schema into XHTML • Themes are able to use what they like and override what they don’t.

  22. Future Work • Plug-in architecture • User selected themes • Shared library of common themes • Cocoon Integration?

  23. Summary • XML UI is a new front end for DSpace: • Customize look & feel for communities & collections • Increase community adoption of DSpace • Architectural Overview • XML Framers, XML Manager, Theme Manager • XML UI Schema • Three parts • Three display types • Two language models • Themes • Base libraries for easy development

  24. Questions?

More Related