GXE Concepts
Pages 202
- Home
- 2009 Esri Federal UC
- 2009 Esri International UC
- 2010 Esri Federal UC
- 2010 Esri International UC
- 2011 Esri Federal UC
- 2012 Esri Federal UC
- 2013 Esri Federal GIS Conference
- 2013 Esri International User Conference
- 2015 SDI Special Interest Group
- Add a Custom Profile
- Add an OpenSearch endpoint for Federated Search
- Add Another Tab to the Geoportal Interface
- Add Custom Link to a Search Result
- Add Custom Search Criteria
- Add the Geoportal Search to a List of Search Providers
- Add v1.1.1 FGDC editor to a previous Geoportal release
- AGP TO AGP Harvesting with the Geoportal
- AGS TO AGP Harvesting with the Geoportal
- All gpt.xml file settings
- An Introduction to vi
- Apache Tomcat geoportal logging
- Being a Good Robot
- Best Practice for Edits to JSP files
- Biological or Remote Sensing FGDC xsds
- Browse Tree
- Cart Processor
- Catalog Service
- Clear the Tomcat Work Folder
- Collections
- Common problems and solutions
- Communities and live examples
- Components
- Configure a Directory Server for the Geoportal
- Configure geoportal User and Schema in the PostgreSQL Database
- Configure Previewable Filetypes
- Configure Searching of YouTube
- Configure the gpt.xml File
- Configure Widgets
- Connecting to a User Directory
- Create a user account
- Create Relationships between Resources
- Customizations
- Customize DCAT output
- Customize Metadata Validation
- Database problems
- Database Tables
- DataDownload Tab
- Deploy and Configure the Geoportal Web Application in Tomcat
- Deploy and Configure the Servlet Web Application
- Deploy the Geoportal Web Application
- Details of Lucene Indexing in the Geoportal
- Development topics
- Discovering Resources
- Eclipse Project from Compiled WAR
- Eclipse Project from Source Code
- Enable Search Using an Ontology Service
- Error Messages in the Geoportal Web Application
- Esri Geoportal Server LiveDVD
- Extending the Web Harvester
- Federated Search in Portal for ArcGIS
- Feedback
- FGDC Biological Profile and Remote Sensing Extension
- FGDC Service Checker Integration
- Geoportal Clients for ArcGIS
- Geoportal CSW Clients
- Geoportal Facets using Apache Solr
- Geoportal genie
- Geoportal Project from Compiled WAR
- Geoportal Publish Client
- Geoportal Server 1.2.5 What's New
- Geoportal Server 1.2.6 What's New
- Geoportal Server 1.2.7 What's New
- Geoportal server as a broker
- Geoportal Server Downloads
- Geoportal Server v 1.0 What's New
- Geoportal Server v 1.1 What's New
- Geoportal Server v 1.1.1 What's New
- Geoportal Server v 1.2 What's New
- Geoportal Server v 1.2.2 What's New
- Geoportal Server v 1.2.4 What's New
- Geoportal SPARQL Sample
- Geoportal User Interface Components
- Geoportal Web Application File Organization
- Geoportal XML Editor
- Get Assistance with an Implementation
- GXE Concepts
- GXE Crash Course
- GXE Structure
- GXE Workflow
- High Availability and Large Number of Records
- How to Browse for Resources
- How to Create and Manage My Profile
- How to find all documents of a particular metadata standard
- How to Leave a Resource Review
- How to Login and Manage my Password
- How to Manage and Edit Resources
- How to Publish Resources
- How to Restrict Access to Resources
- How to Search for Resources
- How to Search with an Ontology Service
- How to Set Up an Esri Geoportal Server on Linux
- How to Use Search Page Results
- How to Use the Data Download Feature
- How to View Resource Relationships
- IDE Topics
- Identity Components LDAP and Single Sign On
- Index All Metadata Content
- Indexing and Searching the Time Period of the Content
- Install Apache Tomcat 6
- Install Desktop Tools
- Install Esri Geoportal Server
- Install PostgreSQL 9.1.2
- Install the JDBC .jar Files
- Installation
- Installation Version 1.0
- Installation Version 1.1
- Installation Version 1.2
- Installation Version 1.2.2
- Installation Version 1.2.4
- Installation Version 1.2.5
- Installation Version 1.2.6
- Installation Version 1.2.7
- Installation Version 1.2.8
- Integrate with a Content Management System
- Integrate with the con terra Security Solution
- Localization
- Log In to the Geoportal
- Logging
- Look and Feel of the User Interface
- Main Page
- Map LDAP Attributes on the Registration Page
- Map Viewer
- Online form editing for all publication methods
- Open source acknowledgements
- Oracle WebLogic geoportal logging
- Orientation to the Create Metadata Page
- Perform Preinstallation Computer Setup
- Portal for ArcGIS Integration
- Post Deployment Actions
- Preinstallation
- Preinstallation 0.9
- Preinstallation 1.0 and 1.1.x
- Preinstallation 1.2
- Preinstallation 1.2.2
- Preinstallation 1.2.4
- Preinstallation 1.2.5
- Preinstallation 1.2.6
- Preinstallation 1.2.7
- Preinstallation 1.2.8
- Preview Function
- Publication Components
- Ratings and Comments for Search Results
- Register ArcGIS for Server with the Geoportal
- Release notes
- REST API Syntax
- Sample FGDC metadata.xml
- Scheduled tasks
- Search Components
- Search Map
- Search Widget for Flex
- Search Widget for HTML
- Search Widget for Silverlight
- Security Concepts
- Set Up Systemwide Environment Variables
- Set up the Geoportal Database
- Share Link
- Single Sign On
- Smoketest the Geoportal
- Standards Support
- Supported CSW Profiles for Synchronization
- Theme Library
- Troubleshooting
- Troubleshooting Tips
- Two geoportals on the same server
- Upgrade 1.x to 1.2 database
- Upgrading file system approach
- Upgrading Read This Overview
- Upgrading SVN approach
- Url filter customization
- Use an XSLT to Render the Details Page
- Use Ant to build Geoportal
- User Functions and Roles
- User Management Interface
- Using a geoportal
- Using Lucene Search Text Queries
- Version 0.9
- Version 1.0
- Version 1.1
- Version 1.1.1
- Version 1.2
- Version 1.2.2
- Version 1.2.4
- Version 1.2.5
- Version 1.2.6
- Version 1.2.7
- Version 1.2.8
- What is a geoportal and the geoportal server
- What is the esri geoportal server
- What's New
- wiki template
- WMC Client
- Show 187 more pages…
Clone this wiki locally
This section describes the basics of configuring the Geoportal XML Editor (GXE). For a general overview and other topics, see Geoportal XML Editor.
Basics
The purpose of the editor definition files is to compose the components of the user interface for the Geoportal XML editor. The simplest view of the editor is a web browser client that dynamically constructs elements of an HTML page through JavaScript. Below is an example showing a snippet of XML that you may find within an editor definition file. It defines HTML components of the user interface.
<h:div xmlns:g="http://www.esri.com/geoportal/gxe"
xmlns:h="http://www.esri.com/geoportal/gxe/html">
<h:h2>Sample Heading</h:h2>
<h:br/>
<h:p>Some links:</h:p>
<h:ul h:class="someCssClass">
<h:li>
<h:a h:href="http://www.esri.com/" h:target="_blank">Esri</h:a>
</h:li>
<h:li>
<h:a h:href="http://geoportal.sourceforge.net/" h:target="_blank">Esri Geoportal Server</h:a>
</h:li>
</h:ul>
</h:div>
Below is a picture of the above snippet rendered on an HTML page:
Dynamic Logic
The editor definition files need an ability to introduce dynamic logic on the page. JavaScript is used to provide functionality as a result of user interaction with elements on the page, or to override the default behavior of the editor. The way that JavaScript is introduced is by associating a JavaScript object with an element of the editor definition, as shown in example below.
<h:a h:href="http://www.esri.com/"
h:target="_blank"
g:jsClass="mySampleClass">Esri</h:a>
The attribute g:jsClass is used to associate a JavaScript class with a renderable editor definition element. The specified g:jsClass must extend from the editor's base class for all renderable controls (gxe.control.Control found within [webapp]/catalog/js/v1.1.1/gxe.js). The Dojo Toolkit is used a JavaScript framework.
dojo.provide("mySampleClass");
dojo.declare("mySampleClass",gxe.control.Control,{
onHtmlElementCreated: function(domProcessor,domNode) {
// add a tool tip
this.htmlElement.title = "This is a sample tip.";
// listen for an event
dojo.connect(this.htmlElement,"onclick",this,dojo.hitch(this,function(e) {
alert("Clicked!");
}));
}
});
Reuse
The editor definition files need an ability to reuse portions. An editor definition consists of a set of definition files. These files can be used in multiple sections of the editor. Reuse limits repetition and redundancy. There are two primary methods associated with reuse.
<g:import g:src="Example1.xml"/>
<h:div g:extends="$base/Example2.xml"/>
The editor definition element <g:import> instructs the processor to load the definition file located at the path specified by the associated g:src attribute. The editor definition attribute g:extends instructs the processor to load and extend the definition file located at the path specified by the value of the attribute. In the above example $base/Example2.xml contains a value predicate named $base. A number of such predicates are recognized by the editor. The purpose of such a predicate is to provide a logical context for interpreting a value. In particular, $base provides the context for determining the order of precedence when loading editor definition files.
Reflecting an XML Structure
The purpose of the editor is to provide functionality to create and update XML documents of a particular standard or profile. The editor definition files need an ability to bind user interface components to values within the targeted XML standard mapping. There are two primary methods for binding such values.
<g:element g:targetName="ex:element1"
g:extends="$base/core/xml/ElementTextOnly.xml" />
<g:element g:targetName="ex:element2"
g:minOccurs="0" g:maxOccurs="unbounded"
g:extends="$base/core/xml/Element.xml">
<g:body>
<g:attribute g:targetName="ex:attribute1"
g:use="required"
g:extends="$base/core/xml/Attribute.xml"/>
<g:attribute g:targetName="ex:attribute2"
g:extends="$base/core/xml/Attribute.xml"/>
</g:body>
</g:element>
The editor definition element <g:element> binds a user interface component to a target XML element specified by the qualified name contained within the g:targetName attribute. The editor definition element <g:attribute> binds a user interface component to a target XML attribute specified by the qualified name contained within the g:targetName attribute. In the above example, the g:extends attribute is used to leverage definition components that provide predefined user interface functionality. The editor definition attributes g:minOccurs and g:maxOccurs define the multiplicity for the target XML element. They mirror corresponding attributes within XML Schema. By default g:minOccurs='1' and g:maxOccurs='1'. The editor definition attribute g:use defines the whether an attribute is optional or required. Attributes are optional by default.
This is a picture of the above snippet rendered on an HTML page.
This is the generated XML document.
<?xml version="1.0" encoding="UTF-8"?>
<ex:example xmlns:ex="http://www.example.com">
<ex:element1>elementValue1</ex:element1>
<ex:element2 ex:attribute1="Tab1-attributeValue1" ex:attribute2="Tab1-attributeValue2"/>
<ex:element2 ex:attribute1="Tab2-attributeValue1" ex:attribute2="Tab2-attributeValue2"/>
</ex:example>
Back to Geoportal XML Editor