Difference between revisions of "EDI, the next generation"
(Created page with "EDI sta subendo una riscrittura con contestuale reingegnerizzazione. La nuova architettura prevede in particolare: * un HTML molto più snello * il parsing del template in Jav...") |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | EDI | + | EDI is currently being rewritten and re-engineered. |
− | + | The new architecture brings in, among other things: | |
− | * | + | * much lighter HTML code |
− | * | + | * Javascript parsing of templates, directly on the browser |
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! | + | ! PROs !! CONs |
|- | |- | ||
− | | | + | | Dramatic reduction of the payload between back-end and editor => pages load much faster || |
|- | |- | ||
− | | | + | | Templates can now be saved outside EDI's repository, specifically local to the browser || |
|- | |- | ||
− | | | + | | As a consequence of the previous PRO, it is now possible to access back-ends other than EDI's official one || |
|} | |} | ||
− | + | ||
− | + | During this rewriting, plan is to completely re-engineer the metadata template schema, by improving and rationalising it. | |
− | In | + | In particular: |
− | * | + | * by improving the "settings" section, so as to implement an ''endpoint'' and possibly a ''tee-endpoint'' tag, in order to trigger actions upon post (e.g. updating the RDF catalogue with the new EDIML) |
− | * | + | * by rationalising tags from a payload saving point of view (e.g.: ''hasDatatype'' will have a short form of "datatype", thereby saving 6 bytes per item |
− | * | + | * by rationalising and extending the set of available ''datatype''s along the ''semantic clarity'' and ''new requirements'' dimensions, e.g. |
− | ** | + | ** by including new optional tags, like |
− | *** ''source'' in | + | *** ''source'', in items with datatype='code', will enable the feeding of ''combo boxes'' with data from code lists provided by endpoints other than the default one |
− | *** ''adapter'', | + | *** ''adapter'', again in times with datatype='code', will enable customisable code list formats |
+ | Following is an example ''host'' page: | ||
+ | <syntaxhighlight lang="html5" highlight="9"> | ||
+ | <html> | ||
+ | <head> | ||
+ | ... | ||
+ | <script language="javascript"> | ||
+ | function onTemplateLoaded(data) { | ||
+ | console.log("fatto"); | ||
+ | } | ||
+ | $(document).ready(function() { | ||
+ | edi.loadTemplate("RNDT", "2.00", onTemplateLoaded); | ||
+ | }); | ||
+ | </script> | ||
+ | ... | ||
+ | </head> | ||
+ | <body> | ||
+ | <div class="content-wrap"> | ||
+ | <div class="container"> | ||
+ | <h1>RITMARE EDI <span id="template-version"></span></h1> | ||
+ | <script> var elements = []; </script> | ||
+ | <div class="row"> | ||
+ | <div class="span3 bs-docs-sidebar"> | ||
+ | <ul class="nav nav-list bs-docs-sidenav" id="myTab"> | ||
+ | </ul> | ||
+ | </div> | ||
+ | <article class="span8" id="mdcontent"> | ||
+ | <div id="theForm"> | ||
+ | |||
+ | </div> | ||
+ | </article> | ||
+ | </div> | ||
+ | </div> | ||
+ | <div id="debug"> | ||
+ | |||
+ | </div> | ||
+ | </div> | ||
+ | </body> | ||
+ | </html> | ||
+ | </syntaxhighlight> | ||
+ | See also: [[EDI Template Data Types]] |
Latest revision as of 04:37, 12 November 2014
EDI is currently being rewritten and re-engineered. The new architecture brings in, among other things:
- much lighter HTML code
- Javascript parsing of templates, directly on the browser
PROs | CONs |
---|---|
Dramatic reduction of the payload between back-end and editor => pages load much faster | |
Templates can now be saved outside EDI's repository, specifically local to the browser | |
As a consequence of the previous PRO, it is now possible to access back-ends other than EDI's official one |
During this rewriting, plan is to completely re-engineer the metadata template schema, by improving and rationalising it. In particular:
- by improving the "settings" section, so as to implement an endpoint and possibly a tee-endpoint tag, in order to trigger actions upon post (e.g. updating the RDF catalogue with the new EDIML)
- by rationalising tags from a payload saving point of view (e.g.: hasDatatype will have a short form of "datatype", thereby saving 6 bytes per item
- by rationalising and extending the set of available datatypes along the semantic clarity and new requirements dimensions, e.g.
- by including new optional tags, like
- source, in items with datatype='code', will enable the feeding of combo boxes with data from code lists provided by endpoints other than the default one
- adapter, again in times with datatype='code', will enable customisable code list formats
- by including new optional tags, like
Following is an example host page:
<html> <head> ... <script language="javascript"> function onTemplateLoaded(data) { console.log("fatto"); } $(document).ready(function() { edi.loadTemplate("RNDT", "2.00", onTemplateLoaded); }); </script> ... </head> <body> <div class="content-wrap"> <div class="container"> <h1>RITMARE EDI <span id="template-version"></span></h1> <script> var elements = []; </script> <div class="row"> <div class="span3 bs-docs-sidebar"> <ul class="nav nav-list bs-docs-sidenav" id="myTab"> </ul> </div> <article class="span8" id="mdcontent"> <div id="theForm"> </div> </article> </div> </div> <div id="debug"> </div> </div> </body> </html>
See also: EDI Template Data Types