6
A exible online metadata editing and management system Raul Aguilar a , Jerry Pan c , Corinna Gries a, , Inigo San Gil b , Giri Palanisamy c a Global Institute of Sustainability, Arizona State University, PO Box 875402, Tempe AZ, 85287-5402, USA b LTER Network Ofce, Department of Biology, MSC03 2020, University of New Mexico, Albuquerque, NM 87111, USA c Environmental Sciences Division, Oak Ridge National Laboratory, Oak Ridge, TN 37831-6407, USA abstract article info Article history: Received 2 December 2008 Received in revised form 26 August 2009 Accepted 29 August 2009 Keywords: XML schema parser Metadata editor EML XForms XQuery Orbeon Our team developed a metadata editing and management system employing state of the art XML technologies initially aimed at the environmental sciences but with the potential to be useful across multiple domains. We chose a modular and distributed design for scalability, exibility, options for customizations, and the possibility to add more functionality at a later stage. The system consists of a desktop design tool that generates code for the actual online editor, a native XML database, and an online user access management application. A Java Swing application that reads an XML schema, the design tool provides the designer with options to combine input elds into online forms with user-friendly tags and determine the ow of input forms. Based on design decisions, the tool generates XForm code for the online metadata editor which is based on the Orbeon XForms engine. The design tool fullls two requirements: First data entry forms based on a schema are customized at design time and second the tool can generate data entry applications for any valid XML schema without relying on custom information in the schema. A conguration le in the design tool saves custom information generated at design time. Future developments will add functionality to the design tool to integrate help text, tool tips, project specic keyword lists, and thesaurus services. Cascading style sheets customize the look-and-feel of the nished editor. The editor produces XML les in compliance with the original schema, however, a user may save the input into a native XML database at any time independent of validity. The system uses the open source XML database eXist for storage and uses a MySQL relational database and a simple Java Server Faces user interface for le and access management. We chose three levels to distribute administrative responsibilities and handle the common situation of an information manager entering the bulk of the metadata but leave specics to the actual data provider. © 2009 Elsevier B.V. All rights reserved. 1. Introduction After several years of experience in creating, editing, maintaining, and managing ecological metadata in various XML formats (Ecological Metadata Language (EML), Federal Geographic Data Consortium (FGDC), and International Standards Organization (ISO)) using several different approaches it became clear that newer technologies, more appropriate for dealing with XML data are needed for these tasks. Existing and emerging environmental information systems are increasingly relying on high quality, machine interpretable metadata for data discovery, description and integration. Therefore, these systems require a seamless integration of metadata management tools. These tools need to accommodate collaborative metadata authoring and must be user-friendly enough to assure buy-in from a wide range of scientists and information managers in agencies and academia. Eco-informatics needs exible, highly customizable user interfaces which can take advantage of emerging Web 2.0 technol- ogies such as Asynchronous JavaScript and XML (AJAX), as well as the interoperability with distributed information sources via Web Services. We envisioned a system modular and exible enough to allow for the evolution of every part including the underlying metadata model itself (see also Malaxa and Douglas, 2005). Our application requirements call for easily customizable naming of input elds. Although the basic concepts in captured metadata are similar across different communities, unique terms are used in each community. For example, dataset creator, author, originator, and principal investigator are unique names for a person responsible for data collection. Therefore, we envisioned a solution that decouples the user interface (GUI) presentation from the metadata denition and is strictly based on the XML technologies and standards like XForms (Boyer, 2007) for data entry, a native XML storage solution, XQuery (Boag et al., 2007) for data retrieval, XSLT (Clark, 1999), and CSS stylesheets (W3C, Cascading Style Sheets) for customizable display. Based on the above outlined problems, we evaluated several existing metadata editors. However, most of these have traditionally been developed to satisfy a particular scientic domain or environ- ment. Most editors use a direct coupling of the GUI presentation with the metadata denition, making them hard to evolve and adapt. A few Ecological Informatics 5 (2010) 2631 Corresponding author. E-mail address: [email protected] (C. Gries). 1574-9541/$ see front matter © 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.ecoinf.2009.08.012 Contents lists available at ScienceDirect Ecological Informatics journal homepage: www.elsevier.com/locate/ecolinf

A flexible online metadata editing and management system

Embed Size (px)

Citation preview

Page 1: A flexible online metadata editing and management system

Ecological Informatics 5 (2010) 26–31

Contents lists available at ScienceDirect

Ecological Informatics

j ourna l homepage: www.e lsev ie r.com/ locate /eco l in f

A flexible online metadata editing and management system

Raul Aguilar a, Jerry Pan c, Corinna Gries a,⁎, Inigo San Gil b, Giri Palanisamy c

a Global Institute of Sustainability, Arizona State University, PO Box 875402, Tempe AZ, 85287-5402, USAb LTER Network Office, Department of Biology, MSC03 2020, University of New Mexico, Albuquerque, NM 87111, USAc Environmental Sciences Division, Oak Ridge National Laboratory, Oak Ridge, TN 37831-6407, USA

⁎ Corresponding author.E-mail address: [email protected] (C. Gries).

1574-9541/$ – see front matter © 2009 Elsevier B.V. Adoi:10.1016/j.ecoinf.2009.08.012

a b s t r a c t

a r t i c l e i n f o

Article history:Received 2 December 2008Received in revised form 26 August 2009Accepted 29 August 2009

Keywords:XML schema parserMetadata editorEMLXFormsXQueryOrbeon

Our team developed a metadata editing and management system employing state of the art XMLtechnologies initially aimed at the environmental sciences but with the potential to be useful across multipledomains. We chose a modular and distributed design for scalability, flexibility, options for customizations,and the possibility to add more functionality at a later stage. The system consists of a desktop design tool thatgenerates code for the actual online editor, a native XML database, and an online user access managementapplication. A Java Swing application that reads an XML schema, the design tool provides the designer withoptions to combine input fields into online forms with user-friendly tags and determine the flow of inputforms. Based on design decisions, the tool generates XForm code for the online metadata editor which isbased on the Orbeon XForms engine. The design tool fulfills two requirements: First data entry forms basedon a schema are customized at design time and second the tool can generate data entry applications for anyvalid XML schema without relying on custom information in the schema. A configuration file in the designtool saves custom information generated at design time. Future developments will add functionality to thedesign tool to integrate help text, tool tips, project specific keyword lists, and thesaurus services.Cascading style sheets customize the look-and-feel of the finished editor. The editor produces XML files incompliance with the original schema, however, a user may save the input into a native XML database at anytime independent of validity. The system uses the open source XML database eXist for storage and uses aMySQL relational database and a simple Java Server Faces user interface for file and access management. Wechose three levels to distribute administrative responsibilities and handle the common situation of aninformation manager entering the bulk of the metadata but leave specifics to the actual data provider.

ll rights reserved.

© 2009 Elsevier B.V. All rights reserved.

1. Introduction

After several years of experience in creating, editing, maintaining,andmanaging ecological metadata in various XML formats (EcologicalMetadata Language (EML), Federal Geographic Data Consortium(FGDC), and International Standards Organization (ISO)) usingseveral different approaches it became clear that newer technologies,more appropriate for dealing with XML data are needed for thesetasks. Existing and emerging environmental information systems areincreasingly relying on high quality, machine interpretable metadatafor data discovery, description and integration. Therefore, thesesystems require a seamless integration of metadata managementtools. These tools need to accommodate collaborative metadataauthoring and must be user-friendly enough to assure buy-in from awide range of scientists and information managers in agencies andacademia. Eco-informatics needs flexible, highly customizable userinterfaces which can take advantage of emerging Web 2.0 technol-

ogies such as Asynchronous JavaScript and XML (AJAX), as well as theinteroperability with distributed information sources via WebServices. We envisioned a system modular and flexible enough toallow for the evolution of every part including the underlyingmetadata model itself (see also Malaxa and Douglas, 2005). Ourapplication requirements call for easily customizable naming of inputfields. Although the basic concepts in captured metadata are similaracross different communities, unique terms are used in eachcommunity. For example, dataset creator, author, originator, andprincipal investigator are unique names for a person responsible fordata collection. Therefore, we envisioned a solution that decouples theuser interface (GUI) presentation from the metadata definition and isstrictly based on the XML technologies and standards like XForms(Boyer, 2007) for data entry, a native XML storage solution, XQuery(Boag et al., 2007) for data retrieval, XSLT (Clark, 1999), and CSSstylesheets (W3C, Cascading Style Sheets) for customizable display.

Based on the above outlined problems, we evaluated severalexisting metadata editors. However, most of these have traditionallybeen developed to satisfy a particular scientific domain or environ-ment. Most editors use a direct coupling of the GUI presentation withthe metadata definition, making them hard to evolve and adapt. A few

Page 2: A flexible online metadata editing and management system

27R. Aguilar et al. / Ecological Informatics 5 (2010) 26–31

editors realize a “schema driven” development metaphor to gener-alize the similar nature of metadata management needs acrossdisciplines, but it frequently is an afterthought, not having anarchitectural foundation allowing an easy and natural connectionwith various standard schemas. Some editors have a platform-specificor desktop solution which makes a wider adoption and integrationwith an online information system difficult. Other editors are tightlyintegrated with the data storage solution not allowing for desiredflexibility which only amodular design approach provides. (Please seea selected list of editors in Appendix A.)

The metadata editing and management system developed hereconsists of four parts discussed in detail in the following sections(Fig. 1). We developed the ‘SchemaWalker’, a Java Swing (Fowler,2008) desktop application, as a forms designing tool to accommodatecustomization and variability of input forms at design time. Based onan XML schema (W3C XML Schema), a person may design customdata entry forms combining desired elements into forms, label inputfields, and save the form and configuration file. The SchemaWalkerthen generates the code for an online data entry application or‘Metadata Editor’ including flexible forms navigation. The input formscurrently are generated as XForms deployable in the OrbeonFramework (Orbeon, 2008). Orbeon is a server side XForms rendererand provides connectivity to various storage solutions and integratesAJAX widgets and webservice technology. The data entered throughthe editor are stored as XML files in the open source, native XMLdatabase eXist (Meier, 2002; eXist, 2008). We chose this storagesolution for its flexibility in storing XML files based on any schema,and the existence of third party online and desktop managementtools. File management and editing rights are managed in an onlineapplication, which handles administrative rights for group and singleediting access to the stored XML files.

2. Modules and methods

2.1. The SchemaWalker

In this set of applications comprising the metadata editing andmanagement system, the user first designs forms using the Schema-Walker, which is a Java Swing application capable of parsing any XMLSchema and enabling a person to design the actual metadata inputapplication. As an abstraction layer, the SchemaWalker supportsvarious schemas on the architectural level. It parses a schema, as a set

Fig. 1. Metadata Editor Architecture: arrows represent the workflow; modules with

of information structures, into manageable fragments suitable forpresentation. This arrangement effectively decouples the presentationtechnology from the information structures, therefore presentationtechnologies other than the currently chosen may be used at a latertime.

XML schemas defining metadata structures are inherently com-plex and recursive. To simplify the processing code, the Schema-Walker parses an XML Schema into ‘flattened’ parse fragments in twosteps using event callbacks from a XML parser (SAX Parser, 2008). Wehave specifically coined the term ‘parse fragment’ to refer to an XMLschema parent node having only children meaningfully expandedthrough ‘choice’, ‘sequence’, and ‘group’ nodes. The SAX 2.0 XMLparser within the SchemaWalker generates callback method eventsthat ‘walk’ through the XML schema nodes to form parse fragments,hence the name ‘SchemaWalker’. Appendix B shows an exampleflattened parse fragment using the GeographicCoverage complex typefrom the Ecological Metadata Language schema. The parse fragmentsmaintain information on the parent and child relation, siblingsequence, data type and an explicit node multiplicity extracted fromthe node context in the XML Schema. Selected XML schema elementsare rendered efficiently as a list of parse fragments. This obviatesdeveloper concerns for handling recursively defined schema nodesusing a Java binding technology. The representation of a schema as alist of parse fragments allows us to translate the problem space ofhandling complex node definitions in code into basic list algorithmsable to handle linked references.

Note: The SchemaWalker effectively converts a XML schema intoan online data entry application able to store data in XML format. Inthe following text, we use the terms XML element, node, field, andinput field interchangeably.

Fig. 2 displays the SchemaWalker GUI Tree interface for a persondesigning a metadata input application. It displays the XML Schema intree format fromwhich the input application designer picks appropriatefields (XMLelements) for the input forms. Tree nodes for requiredfieldsare italicized and already selected nodes are in bold. The designer candetermine the label, entry type, and size for each node. For easiernavigation, formscan thenbegrouped intonavigationmenus. The lowerright section provides form management tools.

Upon saving the form, a variety of files are generated and saved. Inthe web folder containing the metadata editor input application, twosets of XML files are generated, the display forms which include thenavigation menu information and what we refer to as injection node

dotted outlines are exchangeable; gray background marks existing technology.

Page 3: A flexible online metadata editing and management system

Fig. 2. Screenshot of the SchemaWalker User Interface.

28 R. Aguilar et al. / Ecological Informatics 5 (2010) 26–31

files, one for each field in the form. These files ‘inject’ a node into thefinal EML metadata file only if the user actually supplies one ormultiple inputs for that field, empty nodes are therefore avoided. TheSchemaWalker maintains configuration files for all generated forms.The designer can re-edit forms anytime after the initial design.

2.2. The XML Editor: Orbeon XForms Web Page Renderer

As outlined earlier, we developed an online metadata editor usinglatest standards compliant XML technologies. XForms is an XMLscripting language that represents the next generation of forms for theWeb. The relatively recent W3C standard (Boyer, 2007) implementsthe model-view-controller design pattern. Unlike HTML forms, theXForms model describes the structure of the form and the collecteddata sent to a server as XML instance documents. It provides strongdata typing and validation against an XML Schema and reduces theneed for additional scripting to achieve advanced functionality. AnXForms application provides a native XML scripting environment toexecute XPath and XQuery calls, a shift from traditional formhandling.Our decision to apply XForms early in the project has helped usadvance this nascent technology into applications in ecologicalinformation management.

We evaluated several rendering frameworks integrating XMLtechnologies and standards. With either Orbeon Forms or CocoonForms (Apache Cocoon), programmers can focus on the implemen-tation of the application work flow without the burden of tediousHTML coding. However, we chose Orbeon Forms because it is an opensource XForms server-side solution without the need for client side

software plug-ins, it has AJAX widgets, an application Page FlowController running the XPL pipeline language, built-in components toperform XSLT transformations, direct W3C standard support, andintegrated data communicationwith several data repositories. Orbeonhas an active community, it releases nightly builds and its usercommunity posts often. Recently, the Orbeon Form Builder wasreleased to allow form generation from a schema. However, the FormBuilder does not provide add, expand/collapse, and delete XFormsnode functionality generated by the SchemaWalker.

Additionally, we considered an interesting approach to createOrbeon XForms from an XML schema using the XML StylesheetlanguageXSLT. This approachworkswell for simple XML schemas (seeGenCat—http://www.gensc.org/gc_wiki/index.php/GenCat_software)however we encountered limitations applying this approach tocomplex XML schemas.

Fig. 3 shows the online user interface of the Metadata Editor pagesgenerated by the SchemaWalker. The SchemaWalker implements aminimum functionality based on the schema multiplicity of eachnode. A node can be deleted (if not required), expanded to allow dataentry, and added (if multiplicity is greater than one). The formsgenerated within the group ‘main’ and ‘datatable’ outlined earlier inthe SchemaWalker description have a two level navigation menudisplayed atop.

We built the metadata editor displayed below using the schemafor the Ecological Metadata Language (EML) (Fegraus et al., 2005). Weadded custom functionality to handle nodes of ‘textType’ whichinclude basic text formatting tags. On a save operation, Orbeon's textarea renders the embedded WYSIWYG AJAX editor, FCKEditor

Page 4: A flexible online metadata editing and management system

Fig. 3. Screenshot of one Metadata Editor page.

29R. Aguilar et al. / Ecological Informatics 5 (2010) 26–31

(FCKEditor) to convert HTML tagged text formatting to valid EMLformat.

2.3. XML metadata file storage

Orbeon provides connectivity to SQL and native XML databases.The SQL processor allows the forms to interact with any SQL databaseaccessible through the Java Database Connectivity (JDBC). It supportstwo XML databases, open source eXist and commercial Tamino(SoftwareAG, 2008). We chose the eXist database solution as anexternal eXist instance running in Tomcat. The eXist database iscompliant with W3C standards XPath (Clark and DeRose, 1999),XQuery, XUpdate (Laux and Martin, 2000) and XSLT transformationscript command languages. It supports indexing for faster searches,however, scalability has not been tested for this project. The eXistonline and desktop administration applications allow for simple fileediting, backup, bulk upload, export, and user access management.The XPath and XQuery scripts in the Metadata Editor pages allowaccess to the repository.

2.4. File management and access control

The Filemanager provides login and user verification capabilities forwhich the Lightweight Directory Access Protocol (LDAP) may be used,however, we chose a simple database application. After login the user ispresentedwith options to upload already existing XML files, start a newfile, view a list of files present in the repository and assign editing rightsto other people. To view and edit data, the editor starts from the filelisting. It also implements the concept of a file being ‘published’, i.e.being available for search and display in an information system onceediting is complete. Java Server Faces (Sun, Java Server Faces) with aMySQL (MySQL Relational Database System) relational database back-end provide the programmed interface. XPath and XQuery statementshandle interaction with the eXist repository.

3. Discussion and future developments

Use of the SchemaWalker offers a web designer the option torapidly create online data entry applications directly from an XMLschema. The designer needs only the schema and a templateenvironment and no programming experience. For test purposes theentire collection of more than 300 fields from an EML schema wereused and data files were imported into the generated Metadata Editorweb pages. However, this tool allows the design of input applicationsfor subsets of elements, grouped for a certain purpose to ease theprocess of data entry. We anticipate generating a variety of differentmetadata editors to replace currently used editors in our productionenvironment and to integrate with other modules such as a relevantword search tool in the near future.

Several enhancements to the current functionality of the editorgenerated by the SchemaWalker are planned. A later version willproduce HTML dropdowns from enumerated lists as in restrictionenumeration type nodes in the schema, checkboxes, and radio buttonswhere appropriate. Other planned developments include Web Serviceclients to tap into controlled vocabulary, unit dictionary, and taxonomicname services. All of these developments strive to improve metadataquality, standardization of content within communities and reduceerrors prone to occur (Geisler et al., 2002).

Another area of development is feedback to the user. Underconsideration are extensive help features, such as tooltips, helpscreens, and a progress bar to indicate the degree of completenessduring the metadata entry process, plus repeated feedback on thevalidity of the file at every save action.

A later SchemaWalker version will have three separate modules: aschema parser, an interactive GUI, and a web page XForms generatorproviding the ‘plug in’ functionality for other code generators. Dataentry applications may be designed and generated for general purposenot only metadata in XML format. As a Java Swing application theSchemaWalker can also be implemented in a web interface withoutsignificant loss of functionality.

Page 5: A flexible online metadata editing and management system

30 R. Aguilar et al. / Ecological Informatics 5 (2010) 26–31

We developed the project under an open source license and provideaccess to the code and documentation at http://www.intranet.lternet.edu/im/project/MetadataEditor.

Acknowledgments

This project was supported by a grant from the ArizonaCommunity Foundation (award 20060993 “Supporting the Develop-ment of the Arizona Hydrologic Information System in MaricopaCounty”). Oak Ridge National Laboratory (ORNL) is managed for theDOE by University of Tennessee and Battelle (UT-Battelle).

Appendix A

Selected list of metadata editors:For a general overview see: http://www.sco.wisc.edu/wisclinc/

metatool/ and http://www.fgdc.gov/metadata/iso-metadata-editor-review

EPA Metadata Editor (EME), National Geospatial Program, http://www.epa.gov/geospatial/eme.html (EPA Geospatial Metadata Tech-nical Specification and Federal Geographic Data Committee (FGDC,2008) metadata format), platform specific.

Metadata Editor (MDE), Australian Research Enabling Environment(ARCHER), http://www.itee.uq.edu.au/~eresearch/projects/archer/software.php, schema driven.

Metadata Editor (MDE), eResearch, http://www.metadata.net/MDE/index.html, schema driven.

MetaLite, USGS and UNEP, http://www.gis4biologists.info/metalite.htm, Federal Geographic Data Committee (FGDC, 2008),platform specific

Morpho, National Center for Ecological Analysis and Synthesis,http://www.knb.ecoinformatics.org/morphoportal.jsp, schema based,platform independent, desktop application

ORNL Metadata Editor (ORNL MDE), NASA, http://www.mercury.ornl.gov/, Federal Geographic Data Committee (FGDC, 2008),customizable.

SHAME, Knowledge Management Research Group, StockholmUniversity, http://www.kmr.nada.kth.se/shame/wiki/Overview/Main, RDF Metadata resources.

USGS Formal Metadata, USGS, A suite of metadata tools, includingmp, cns, xtme, Tkme, mq, and DBFmeta.

Appendix B

Parse fragments generated by the SchemaWalker: ComplexType‘GeographicCoverage’ from the Ecological Metadata Languageschema:

1. Parse: complexType ‘GeographicCoverage’ is defined as:cov:eml-coverage.xsd02 complexType name=GeographicCoverage minOccurs=1maxOccurs=103 choice minOccurs=1 maxOccurs=104 sequence minOccurs=1 maxOccurs=105 element name=geographicDescription type=xs:string min-Occurs=1 maxOccurs=105 element name=boundingCoordinates minOccurs=1maxOccurs=106 complexType minOccurs=1 maxOccurs=107 sequence minOccurs=1 maxOccurs=108 element name=westBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=eastBoundingCoordinate type=xs:string min-Occurs=1 maxOccurs=1

08 element name=northBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=southBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=boundingAltitudesminOccurs=0maxOccurs=1...

2. Parse: The preceding complexTypes are recast as parse fragmentsmaintaining the parent, child, and sibling relationships and sequenceby using ordinal numbers

cov:GeographicCoverage02 complexType name=cov:GeographicCoverage minOccurs=1maxOccurs=103 choice minOccurs=1 maxOccurs=104 sequence minOccurs=1 maxOccurs=105 element name=geographicDescription type=xs:string min-Occurs=1 maxOccurs=105 element name=boundingCoordinates minOccurs=1 maxOc-curs=1 type=cov:GeographicCoverage:105 element name=datasetGPolygon minOccurs=0 maxOccur-s=unbounded type=cov:GeographicCoverage:3…

cov:GeographicCoverage:106 complexType minOccurs=1 maxOccurs=1 name=cov:GeographicCoverage:107 sequence minOccurs=1 maxOccurs=108 element name=westBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=eastBoundingCoordinate type=xs:string min-Occurs=1 maxOccurs=108 element name=northBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=southBoundingCoordinate type=xs:stringminOccurs=1 maxOccurs=108 element name=boundingAltitudes minOccurs=0 maxOc-curs=1 type=cov:GeographicCoverage:2…

cov:GeographicCoverage:209 complexType minOccurs=1 maxOccurs=1 name=cov:GeographicCoverage:210 sequence minOccurs=1 maxOccurs=111 element name=altitudeMinimum type=xs:string minOc-curs=1 maxOccurs=111 element name=altitudeMaximum type=xs:string minOc-curs=1 maxOccurs=111 element name=altitudeUnits type=xs:string minOccurs=1maxOccurs=1…

References

AJAX. Ajax (programming) on Wikipedia. http://www.en.wikipedia.org/wiki/AJAX.Last Accessed: November 26, 2008.

Apache Cocoon, http://www.cocoon.apache.org. Last Accessed: August 15, 2008.Boag, S., Chamberlin, D., Fernández, M.F., Florescu, D., Robie, J., Siméon, J. (Eds.), 2007.

XQuery 1.0: an XML query language, a W3C recommendation. http://www.w3.org/TR/xquery. Last Accessed: January 23, 2007.

Boyer, J.M., 2007. XForms 1.1, W3C candidate recommendation 29 November 2007.http://www.w3.org/TR/2007/CR-xforms11-20071129/. Last Accessed November2008.

Clark, J. (Ed.), 1999. XSL Transformations (XSLT). W3C Recommendation. http://www.w3.org/TR/xslt. Last Accessed: November 26, 2008.

Clark, J., DeRose, S. (Eds.), 1999. XML path language, XPath. W3C recommendation.http://www.w3.org/TR/xpath. Last Accessed: November 27, 2008.

EML. Ecological metadata language. http://www.knb.ecoinformatics.org/software/eml.Last Accessed: November 17, 2006.

Page 6: A flexible online metadata editing and management system

31R. Aguilar et al. / Ecological Informatics 5 (2010) 26–31

eXist. Open Source Native XML Database. http://www.exist-db.org. Last Accessed:September 1, 2008.

FCKEditor, The text editor for internet. http://www.fckeditor.net. Last Accessed: October18, 2008.

Fegraus, E.H., Andelman, S., Jones, M.B., Schildhauer, M., 2005. Maximizing the Value ofEcological Data with Structured Metadata: An Introduction to Ecological MetadataLanguage (EML) and Principles for Metadata Creation. Bulletin of the EcologicalSociety of America 86 (3), 158–168.

FGDC. The Federal Geographic Data Committee. http://www.fgdc.gov. Last Accessed:October 14, 2008.

Fowler, A. A Swing Architecture Overview. http://www.java.sun.com/products/jfc/tsc/articles/architecture. Last Accessed: November 27, 2008.

Geisler, G., McArthur, D., McClelland, M., 2002. Creating Virtual Collections in DigitalLibraries: Benefits and Implementation Issues. Joint Conference on Digital Libraries,Portland, Oregon, pp. 210–218.

ISO. International Organization for Standardization. http://www.iso.org/iso/home.htm.Last Accessed: November 25, 2008.

Laux, A., Martin, L., 2000. XML-DB, XUpdate syntax and document type definition.http://www.xmldb-org.sourceforge.net/xupdate/xupdate-wd.html. Last Accessed:September 14, 2008.

LDAP. Lightweight Directory Access Protocol. http://www.en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol. Last Accessed: August 25, 2009.

Malaxa, V., Douglas, 2005. A framework for metadata creation tools. InterdisciplinaryJournal of Knowledge and Learning Objects. Interdisciplinary Journal of Knowledgeand Learning Objects 1.

Meier, W.M., 2002. eXist: open source native XML database. http://www.citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.4808. Last Accessed: November 27,2008.

MySQL Relational Database System. http://www.mysql.com/?bydis_dis_index=1. LastAccessed: November 26, 2008.

Orbeon. Orbeon Forms. http://www.orbeon.com. Last Accessed: November 27, 2008.SAX Parser. Simple API for XML Parsing. http://www.saxproject.org/. Last Accessed:

November 30, 2008.SoftwareAG. 2008 SoftwareAG, Tamino XML Data Management. http://www.softwareag.

com/Corporate/products/wm/tamino/default.asp. Last Accessed: November 27, 2008.Sun. JavaServer Faces Technology. http://www.java.sun.com/javaee/javaserverfaces. Last

Accessed: September 19, 2008.W3C, Cascading Style Sheets (2008) http://www.w3.org/Style/CSS. Last Accessed:

November 11, 2008.W3C XML Schema http://www.w3.org/XML/Schema. Last Accessed: July 11, 2008.