Javascript Data Request Form: Difference between revisions
From OPeNDAP Documentation
⧼opendap2-jumptonavigation⧽
EvanKroske (talk | contribs) m (Creating OpenDAP Data Request Form moved to Javascript Data Request Form: Line up title with other current development projects.) |
EvanKroske (talk | contribs) (Added execution path and started application structure) |
||
Line 10: | Line 10: | ||
## Write basic form constructor to build simple but clear HTML forms | ## Write basic form constructor to build simple but clear HTML forms | ||
## Add more advanced form controls (maps, timelines, etc.) for more capable browsers | ## Add more advanced form controls (maps, timelines, etc.) for more capable browsers | ||
== Execution path == | |||
# User requests data-request form | |||
# Server sends simple HTML page with form-generation Javascript | |||
# Javascript requests DDS and DAS for selected data | |||
# Javascript parses DDS and DAS to generate HTML form | |||
# User requests data through form | |||
# Server returns user-selected data | |||
== Application structure == | |||
=== Form generator === | |||
==== Public interface ==== | |||
The public interface gives developers a dead-simple interface to create data-specific request forms. | |||
<code><pre> | |||
createDataRequestForm({"url" : "http://test.com/data.gz", "containerID" : "requestform"}); | |||
</pre></code> | |||
==== Generator ==== | |||
The heart of the form generator transforms the JSON-encoded DAS and DDS into an interactive HTML form. | |||
<code><pre> | |||
var generator = createFormGenerator(); | |||
var form = generator.generateForm(dasData, ddsData); | |||
document.appendChild(form); | |||
</pre></code> | |||
=== DAS/DDS Javascript API === | |||
==== Public interface ==== | |||
==== HTTP request generator ==== | |||
==== DAS parser ==== | |||
==== DDS parser ==== |
Revision as of 15:50, 15 April 2010
My goal is to create a Javascript API for accessing OpenDAP metadata and an intuitive, Javascript-based data-request construction form.
Plan of action
- Create generalized Javascript OpenDAP-metadata bridge
- Write Javascript OpenDAP-metadata retrieval module (may involve server-side modifications)
- Write OpenDAP-metadata parser
- Write JSON emitter
- Create data request form constructor using metadata bridge
- Write basic form constructor to build simple but clear HTML forms
- Add more advanced form controls (maps, timelines, etc.) for more capable browsers
Execution path
- User requests data-request form
- Server sends simple HTML page with form-generation Javascript
- Javascript requests DDS and DAS for selected data
- Javascript parses DDS and DAS to generate HTML form
- User requests data through form
- Server returns user-selected data
Application structure
Form generator
Public interface
The public interface gives developers a dead-simple interface to create data-specific request forms.
createDataRequestForm({"url" : "http://test.com/data.gz", "containerID" : "requestform"});
Generator
The heart of the form generator transforms the JSON-encoded DAS and DDS into an interactive HTML form.
var generator = createFormGenerator();
var form = generator.generateForm(dasData, ddsData);
document.appendChild(form);