Jump to: navigation, search

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...")
 
m
Line 22: Line 22:
 
*** ''source'' in item con datatype='code' permetterebbe di alimentare le ''combo'' con dati provenienti da codelist residenti su endpoint diversi da quello di default
 
*** ''source'' in item con datatype='code' permetterebbe di alimentare le ''combo'' con dati provenienti da codelist residenti su endpoint diversi da quello di default
 
*** ''adapter'', sempre in item con datatype='code', permetterebbe di gestire formati diversi di fruizione delle codelist
 
*** ''adapter'', sempre in item con datatype='code', permetterebbe di gestire formati diversi di fruizione delle codelist
 +
Qui di seguito una pagina ''ospite'' d'esempio:
 +
<syntaxhighlight lang="html5">
 +
<!DOCTYPE html>
 +
<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>

Revision as of 18:35, 3 November 2014

EDI sta subendo una riscrittura con contestuale reingegnerizzazione. La nuova architettura prevede in particolare:

  • un HTML molto più snello
  • il parsing del template in Javascript, direttamente nel browser
PRO CON
Riduzione drastica del payload verso l'editor => pagine molto più rapide da caricare
Possibilità di salvare template anche fuori dal repository EDI, in particolare anche in locale
Come conseguenza del precedente PRO, possibilità di accedere a backend diversi da EDI

In occasione della riscrittura l'idea è di reingegnerizzare completamente lo schema dei template, arricchendolo e razionalizzandolo. In particolare:

  • arricchendo la sezione setting, in modo da implementare un setting endpoint ed, eventualmente, un tee-endpoint, volto ad esempio al triggering di azioni consequenziali al post (ad es. aggiornamento del catalogo RDF a partire dall'EDIML ricevuto)
  • razionalizzando i tag in ottica di risparmio di payload (ad es. hasDatatype può ammettere una short form datatype con un risparmio di 6 byte/item)
  • razionalizzando ed arricchendo il parco dei datatype secondo le dimensioni chiarezza semantica e nuove necessità, ad esempio:
    • aggiungendo tag opzionali, ad es.:
      • source in item con datatype='code' permetterebbe di alimentare le combo con dati provenienti da codelist residenti su endpoint diversi da quello di default
      • adapter, sempre in item con datatype='code', permetterebbe di gestire formati diversi di fruizione delle codelist

Qui di seguito una pagina ospite d'esempio:

<!DOCTYPE html>
<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>