SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
WIND: an Interaction Lightweight Programming Model
                       for Geographical Web Applications



                                          The Nhan Luong
                           thenhan.luong@iutbayonne.univ-pau.fr
                                         Thierry Nodenot
                                       Patrick Etcheverry
                                     Christophe Marquesuzaà
                                      IUT de Bayonne Pays Basque
                                          DESI team - LIUPPA



             International Opensource Geospatial Research Symposium
                              (Nantes, July 8, 2009)

Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   1 / 25
Outline




 1   Introduction

 2   WIND Core Concept

 3   WIND Implementation

 4   Future works




Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   2 / 25
Introduction



Outline




 1   Introduction

 2   WIND Core Concept

 3   WIND Implementation

 4   Future works



Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   3 / 25
Introduction



Introduction




 Our goal
 To conceive a Web environment allowing teachers to produce by them-
 -selves educational applications exploiting the spatio-temporal semantics
 embedded into texts.
        The conception activity is driven by interaction considerations.
        The environment consists of a Web 2.0 designing interface and a
        specic API dedicated to interaction model.
        The source code should be open source so that it can be beneted in
        the educational community.


Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   4 / 25
Introduction



Starting point




        3 features of geographic information embedded into travel stories:
         1   Spatial feature

         2   Temporal feature

         3   Phenomenon feature

      [Gaio, 2007]

        Web Mapping Services: Google Maps, OpenLayers, IGN Geoportail.
        Mashup environments enable to quickly create web-based applications.


Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   5 / 25
Introduction



Concerned application example




 http://erozate.iutbayonne.univ-pau.fr/forbes2007/exp/
Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   6 / 25
Introduction



Concerned application example




        Starting point for educational activities.
        This application embeds text, map and calendar components.
        Management of interactions between these components.
        Coded from scratch by developer (JF Boullier - Ph.D. student, 2007).
        Specic to this kind of application (not reusable).
        =⇒ Generic model to design this kind of application: WIND (Web
        INteraction Design).



Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   7 / 25
WIND Core Concept



Outline




 1   Introduction

 2   WIND Core Concept

 3   WIND Implementation

 4   Future works



Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   8 / 25
WIND Core Concept



UML model




Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   9 / 25
WIND Core Concept



Model explanation




        An interaction may be simply dened as a triple area, event,
        reactions.
        i.e. an area (SensiblePart), under a specic user action (event),
        will launch system reactions (Reaction).




Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   10 / 25
WIND Core Concept



Model explanation



        An area (SensiblePart) can be a text area (TextPart) or a map
        area (MapPart) or a calendar area (CalendarPart).
              Text area (TextPart): word or a set of words.
              Map area (MapPart): geometry (point, line, polygon)
              Calendar area (CalendarPart): date




Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   11 / 25
WIND Core Concept



Model explanation




        User action (event): attribute as String type.
        For example:
              left-click: (event    = 'click')
              double-click: (event     = 'dbclick')
              mouse-over:      (event = 'mouseover')




Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   12 / 25
WIND Core Concept



Model explanation



        A reaction (Reaction) results in a visual eect on one area
        (SensiblePart), which may be dened with dierent styles.
        For example:
              boldfacing a text area: (calledFunction                 = 'bold')
              focusing a map area on the map: (calledFunction                  = 'focus')
              highlighting a date on the calendar:              (calledFunction =
              'highlight')




Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web    July 8, 2009   13 / 25
WIND Core Concept



Main features of WIND


        WIND is object-oriented. WIND objects are simply created by their
        class constructor. Methods are disposed to implement relationships
        between objects. WIND model allows programming interactions for
        whatever reactive areas thanks to polymorphism of the SensiblePart
        class.
        WIND is integrative. It combines textual, map and calendar
        components. The users may include within a web application as
        many instances of each type of components.
        WIND is executable thanks to its corresponding JavaScript
        WIND-API. The users can simply design an interaction and
        immediately execute it.
        WIND is declarative. The code of a WIND-based application has a
        very simple structure. The users only have to declare sensible parts,
        events and reactions.
Luong et al. (DESI team - LIUPPA)    Interaction Model for Geographical Web   July 8, 2009   14 / 25
Implementation



Outline




 1   Introduction

 2   WIND Core Concept

 3   WIND Implementation

 4   Future works



Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   15 / 25
Implementation




 http://erozate.iutbayonne.univ-pau.fr/wind/simpledemo.html
Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   16 / 25
Implementation



Four programming steps for WIND-based application




    1   Creating the application components with their characteristics.
    2   Creating the sensible parts of each component dened in the
        previous step.
    3   Dening the possible reactions for all the sensible parts.
    4   Dening the interactions upon previously dened sensible parts and
        reactions.



Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   17 / 25
Implementation



JavaScript code example

 Include WIND JavaScript API:
 script type=text/javascript
 src=http://erozate.iutbayonne.univ-pau.fr/wind/wind-api.js/
 HTML code:
 div id=mytext/                 div id=mymap/
    1   Creating the application components with their characteristics.
        var t = new WIND.Text('mytext');
        t.setContent(March 20th 2009: we are in Anglet today.
        Anglet is located in the southwest of France.);
        var m = new WIND.Map('mymap', {'type': Google_Street,
        'longitude': -1.51, 'latitude': 43.49, 'zoom': 11});
    2   Creating the sensible parts of each component dened previously.
        var tp = t.createSensiblePart(Anglet);
        var mp = m.createSensiblePart(POLYGON((-1.52 43.53,
        -1.58 43.46,-1.44 43.48,-1.52 43.53)));
Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   18 / 25
Implementation



JavaScript code example

 CSS code:
 style
 .ville {
 font-weight : bold; font-style : italic; font-size : 15pt;
 color : blue; background-color: pink;}
 /style
    3   Dening the possible reactions for all the sensible parts.
        var r1 = new WIND.Reaction(mp, 'highlight');
        var r2 = new WIND.Reaction(tp, 'setStyleByClass:ville');
    4   Dening the interactions upon previously dened sensible parts and
        reactions.
        var i1 = new WIND.Interaction(mp, 'click', null);
        i1.addReaction(r1);
        i1.addReaction(r2);
        i1.activate();
Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   19 / 25
Implementation



Demo




 http://erozate.iutbayonne.univ-pau.fr/wind/index.html
Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   20 / 25
Future works



Outline




 1   Introduction

 2   WIND Core Concept

 3   WIND Implementation

 4   Future works



Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   21 / 25
Future works



Improvement of the sensible part concept




        Extension of the sensible part concept (especially TextPart and
        MapPart) in order to allow programmers dening sensible parts with
        higher level semantics.
        For example: var tp = t.createSensiblePart('city'); creates
        automatically TextPart(s) having city semantics.
        This work relies on space indexing processes elaborated by DESI team
        (cf. PIIR, Loustau, 2008 and Geostream, Sallaberry, 2009).




Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   22 / 25
Future works



Improvement of the user action concept




        Improvement of the user action concept.
        For example: the system may react after a sequence of several specic
        user actions (cf. Fig. c).




              (a)                       (b)                                  (c)


Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web         July 8, 2009   23 / 25
Future works



Creation of authoring environment


        Creation of a dedicated authoring environment allowing end-users
        (teachers) to design by themselves WIND-based interaction
        applications without coding.




Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   24 / 25
Thank you for your attention!


                                Questions?
                                        The Nhan LUONG
                         thenhan.luong@iutbayonne.univ-pau.fr




Luong et al. (DESI team - LIUPPA)   Interaction Model for Geographical Web   July 8, 2009   25 / 25

Weitere ähnliche Inhalte

Andere mochten auch

來看看癌細胞的故事 每個人都要懂!
來看看癌細胞的故事 每個人都要懂!來看看癌細胞的故事 每個人都要懂!
來看看癌細胞的故事 每個人都要懂!sinei
 
中名山40座
中名山40座中名山40座
中名山40座sinei
 
您不能不知道的葡萄乾
您不能不知道的葡萄乾您不能不知道的葡萄乾
您不能不知道的葡萄乾sinei
 
大內宿遊記
大內宿遊記大內宿遊記
大內宿遊記sinei
 
精选桌面 1
精选桌面 1精选桌面 1
精选桌面 1sinei
 
用深情陪到最後
用深情陪到最後用深情陪到最後
用深情陪到最後sinei
 
平安就好
平安就好平安就好
平安就好sinei
 
活在當下‧三件事
活在當下‧三件事活在當下‧三件事
活在當下‧三件事sinei
 
健走風潮 Walk
健走風潮 Walk健走風潮 Walk
健走風潮 Walksinei
 
放下它 的超然智慧
放下它 的超然智慧放下它 的超然智慧
放下它 的超然智慧sinei
 
從中醫看蔬果的療效
從中醫看蔬果的療效從中醫看蔬果的療效
從中醫看蔬果的療效sinei
 
Sakura.Pps
Sakura.PpsSakura.Pps
Sakura.Ppssinei
 
活到老的真諦
活到老的真諦活到老的真諦
活到老的真諦sinei
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer ExperienceYuan Wang
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 

Andere mochten auch (17)

來看看癌細胞的故事 每個人都要懂!
來看看癌細胞的故事 每個人都要懂!來看看癌細胞的故事 每個人都要懂!
來看看癌細胞的故事 每個人都要懂!
 
中名山40座
中名山40座中名山40座
中名山40座
 
您不能不知道的葡萄乾
您不能不知道的葡萄乾您不能不知道的葡萄乾
您不能不知道的葡萄乾
 
大內宿遊記
大內宿遊記大內宿遊記
大內宿遊記
 
精选桌面 1
精选桌面 1精选桌面 1
精选桌面 1
 
用深情陪到最後
用深情陪到最後用深情陪到最後
用深情陪到最後
 
平安就好
平安就好平安就好
平安就好
 
活在當下‧三件事
活在當下‧三件事活在當下‧三件事
活在當下‧三件事
 
健走風潮 Walk
健走風潮 Walk健走風潮 Walk
健走風潮 Walk
 
放下它 的超然智慧
放下它 的超然智慧放下它 的超然智慧
放下它 的超然智慧
 
從中醫看蔬果的療效
從中醫看蔬果的療效從中醫看蔬果的療效
從中醫看蔬果的療效
 
Sakura.Pps
Sakura.PpsSakura.Pps
Sakura.Pps
 
活到老的真諦
活到老的真諦活到老的真諦
活到老的真諦
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 

Ähnlich wie WIND Lightweight Programming Model Geographical Web Apps

ICWE 2010 Demonstration and Poster elevator pitch session
ICWE 2010 Demonstration and Poster elevator pitch sessionICWE 2010 Demonstration and Poster elevator pitch session
ICWE 2010 Demonstration and Poster elevator pitch sessionMarco Brambilla
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC StudioBenoit Combemale
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2nodenot
 
Real-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserReal-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserMichael Derntl
 
Advancing open source geospatial software for the do d ic edward pickle openg...
Advancing open source geospatial software for the do d ic edward pickle openg...Advancing open source geospatial software for the do d ic edward pickle openg...
Advancing open source geospatial software for the do d ic edward pickle openg...Joshua L. Davis
 
Leveraging mobile devices to enhance the performance and ease of programming ...
Leveraging mobile devices to enhance the performance and ease of programming ...Leveraging mobile devices to enhance the performance and ease of programming ...
Leveraging mobile devices to enhance the performance and ease of programming ...IJITE
 
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...IJITE
 
Knowledge Formulation For Ai Planning
Knowledge Formulation For Ai PlanningKnowledge Formulation For Ai Planning
Knowledge Formulation For Ai Planningahmad bassiouny
 
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of Art
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of ArtParma 2016-05-17 - JGrass-NewAGE - Some About The State of Art
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of ArtRiccardo Rigon
 
Comprehensive Overview of the Geoweb
Comprehensive Overview of the GeowebComprehensive Overview of the Geoweb
Comprehensive Overview of the GeowebGovernment/CU Denver
 
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the WebSyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the WebNicolaescu Petru
 
Presentation for use
Presentation   for usePresentation   for use
Presentation for usebolu804
 
Presentation for slideshare
Presentation   for slidesharePresentation   for slideshare
Presentation for slidesharebolu804
 
The IUGONET project and its international cooperation on development of metad...
The IUGONET project and its international cooperation on development of metad...The IUGONET project and its international cooperation on development of metad...
The IUGONET project and its international cooperation on development of metad...Iugo Net
 
ScaFi-Web, A Web-Based application for Field-based Coordination
ScaFi-Web, A Web-Based application for Field-based CoordinationScaFi-Web, A Web-Based application for Field-based Coordination
ScaFi-Web, A Web-Based application for Field-based CoordinationGianluca Aguzzi
 
webinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos project
 
Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Blagoj Delipetrev
 
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...IJITE
 

Ähnlich wie WIND Lightweight Programming Model Geographical Web Apps (20)

ICWE 2010 Demonstration and Poster elevator pitch session
ICWE 2010 Demonstration and Poster elevator pitch sessionICWE 2010 Demonstration and Poster elevator pitch session
ICWE 2010 Demonstration and Poster elevator pitch session
 
Model executability within the GEMOC Studio
Model executability within the GEMOC StudioModel executability within the GEMOC Studio
Model executability within the GEMOC Studio
 
Ectel nods v2
Ectel nods v2Ectel nods v2
Ectel nods v2
 
Real-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserReal-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web Browser
 
Advancing open source geospatial software for the do d ic edward pickle openg...
Advancing open source geospatial software for the do d ic edward pickle openg...Advancing open source geospatial software for the do d ic edward pickle openg...
Advancing open source geospatial software for the do d ic edward pickle openg...
 
Leveraging mobile devices to enhance the performance and ease of programming ...
Leveraging mobile devices to enhance the performance and ease of programming ...Leveraging mobile devices to enhance the performance and ease of programming ...
Leveraging mobile devices to enhance the performance and ease of programming ...
 
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
 
Knowledge Formulation For Ai Planning
Knowledge Formulation For Ai PlanningKnowledge Formulation For Ai Planning
Knowledge Formulation For Ai Planning
 
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of Art
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of ArtParma 2016-05-17 - JGrass-NewAGE - Some About The State of Art
Parma 2016-05-17 - JGrass-NewAGE - Some About The State of Art
 
Comprehensive Overview of the Geoweb
Comprehensive Overview of the GeowebComprehensive Overview of the Geoweb
Comprehensive Overview of the Geoweb
 
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the WebSyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
 
Presentation for use
Presentation   for usePresentation   for use
Presentation for use
 
FinalReport
FinalReportFinalReport
FinalReport
 
Presentation for slideshare
Presentation   for slidesharePresentation   for slideshare
Presentation for slideshare
 
The IUGONET project and its international cooperation on development of metad...
The IUGONET project and its international cooperation on development of metad...The IUGONET project and its international cooperation on development of metad...
The IUGONET project and its international cooperation on development of metad...
 
ScaFi-Web, A Web-Based application for Field-based Coordination
ScaFi-Web, A Web-Based application for Field-based CoordinationScaFi-Web, A Web-Based application for Field-based Coordination
ScaFi-Web, A Web-Based application for Field-based Coordination
 
webinos Use Cases - Open Day
webinos Use Cases - Open Daywebinos Use Cases - Open Day
webinos Use Cases - Open Day
 
Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...
 
Modelling tools
Modelling toolsModelling tools
Modelling tools
 
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
LEVERAGING MOBILE DEVICES TO ENHANCE THE PERFORMANCE AND EASE OF PROGRAMMING ...
 

Kürzlich hochgeladen

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Kürzlich hochgeladen (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

WIND Lightweight Programming Model Geographical Web Apps

  • 1. WIND: an Interaction Lightweight Programming Model for Geographical Web Applications The Nhan Luong thenhan.luong@iutbayonne.univ-pau.fr Thierry Nodenot Patrick Etcheverry Christophe Marquesuzaà IUT de Bayonne Pays Basque DESI team - LIUPPA International Opensource Geospatial Research Symposium (Nantes, July 8, 2009) Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 1 / 25
  • 2. Outline 1 Introduction 2 WIND Core Concept 3 WIND Implementation 4 Future works Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 2 / 25
  • 3. Introduction Outline 1 Introduction 2 WIND Core Concept 3 WIND Implementation 4 Future works Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 3 / 25
  • 4. Introduction Introduction Our goal To conceive a Web environment allowing teachers to produce by them- -selves educational applications exploiting the spatio-temporal semantics embedded into texts. The conception activity is driven by interaction considerations. The environment consists of a Web 2.0 designing interface and a specic API dedicated to interaction model. The source code should be open source so that it can be beneted in the educational community. Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 4 / 25
  • 5. Introduction Starting point 3 features of geographic information embedded into travel stories: 1 Spatial feature 2 Temporal feature 3 Phenomenon feature [Gaio, 2007] Web Mapping Services: Google Maps, OpenLayers, IGN Geoportail. Mashup environments enable to quickly create web-based applications. Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 5 / 25
  • 6. Introduction Concerned application example http://erozate.iutbayonne.univ-pau.fr/forbes2007/exp/ Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 6 / 25
  • 7. Introduction Concerned application example Starting point for educational activities. This application embeds text, map and calendar components. Management of interactions between these components. Coded from scratch by developer (JF Boullier - Ph.D. student, 2007). Specic to this kind of application (not reusable). =⇒ Generic model to design this kind of application: WIND (Web INteraction Design). Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 7 / 25
  • 8. WIND Core Concept Outline 1 Introduction 2 WIND Core Concept 3 WIND Implementation 4 Future works Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 8 / 25
  • 9. WIND Core Concept UML model Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 9 / 25
  • 10. WIND Core Concept Model explanation An interaction may be simply dened as a triple area, event, reactions. i.e. an area (SensiblePart), under a specic user action (event), will launch system reactions (Reaction). Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 10 / 25
  • 11. WIND Core Concept Model explanation An area (SensiblePart) can be a text area (TextPart) or a map area (MapPart) or a calendar area (CalendarPart). Text area (TextPart): word or a set of words. Map area (MapPart): geometry (point, line, polygon) Calendar area (CalendarPart): date Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 11 / 25
  • 12. WIND Core Concept Model explanation User action (event): attribute as String type. For example: left-click: (event = 'click') double-click: (event = 'dbclick') mouse-over: (event = 'mouseover') Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 12 / 25
  • 13. WIND Core Concept Model explanation A reaction (Reaction) results in a visual eect on one area (SensiblePart), which may be dened with dierent styles. For example: boldfacing a text area: (calledFunction = 'bold') focusing a map area on the map: (calledFunction = 'focus') highlighting a date on the calendar: (calledFunction = 'highlight') Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 13 / 25
  • 14. WIND Core Concept Main features of WIND WIND is object-oriented. WIND objects are simply created by their class constructor. Methods are disposed to implement relationships between objects. WIND model allows programming interactions for whatever reactive areas thanks to polymorphism of the SensiblePart class. WIND is integrative. It combines textual, map and calendar components. The users may include within a web application as many instances of each type of components. WIND is executable thanks to its corresponding JavaScript WIND-API. The users can simply design an interaction and immediately execute it. WIND is declarative. The code of a WIND-based application has a very simple structure. The users only have to declare sensible parts, events and reactions. Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 14 / 25
  • 15. Implementation Outline 1 Introduction 2 WIND Core Concept 3 WIND Implementation 4 Future works Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 15 / 25
  • 16. Implementation http://erozate.iutbayonne.univ-pau.fr/wind/simpledemo.html Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 16 / 25
  • 17. Implementation Four programming steps for WIND-based application 1 Creating the application components with their characteristics. 2 Creating the sensible parts of each component dened in the previous step. 3 Dening the possible reactions for all the sensible parts. 4 Dening the interactions upon previously dened sensible parts and reactions. Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 17 / 25
  • 18. Implementation JavaScript code example Include WIND JavaScript API: script type=text/javascript src=http://erozate.iutbayonne.univ-pau.fr/wind/wind-api.js/ HTML code: div id=mytext/ div id=mymap/ 1 Creating the application components with their characteristics. var t = new WIND.Text('mytext'); t.setContent(March 20th 2009: we are in Anglet today. Anglet is located in the southwest of France.); var m = new WIND.Map('mymap', {'type': Google_Street, 'longitude': -1.51, 'latitude': 43.49, 'zoom': 11}); 2 Creating the sensible parts of each component dened previously. var tp = t.createSensiblePart(Anglet); var mp = m.createSensiblePart(POLYGON((-1.52 43.53, -1.58 43.46,-1.44 43.48,-1.52 43.53))); Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 18 / 25
  • 19. Implementation JavaScript code example CSS code: style .ville { font-weight : bold; font-style : italic; font-size : 15pt; color : blue; background-color: pink;} /style 3 Dening the possible reactions for all the sensible parts. var r1 = new WIND.Reaction(mp, 'highlight'); var r2 = new WIND.Reaction(tp, 'setStyleByClass:ville'); 4 Dening the interactions upon previously dened sensible parts and reactions. var i1 = new WIND.Interaction(mp, 'click', null); i1.addReaction(r1); i1.addReaction(r2); i1.activate(); Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 19 / 25
  • 20. Implementation Demo http://erozate.iutbayonne.univ-pau.fr/wind/index.html Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 20 / 25
  • 21. Future works Outline 1 Introduction 2 WIND Core Concept 3 WIND Implementation 4 Future works Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 21 / 25
  • 22. Future works Improvement of the sensible part concept Extension of the sensible part concept (especially TextPart and MapPart) in order to allow programmers dening sensible parts with higher level semantics. For example: var tp = t.createSensiblePart('city'); creates automatically TextPart(s) having city semantics. This work relies on space indexing processes elaborated by DESI team (cf. PIIR, Loustau, 2008 and Geostream, Sallaberry, 2009). Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 22 / 25
  • 23. Future works Improvement of the user action concept Improvement of the user action concept. For example: the system may react after a sequence of several specic user actions (cf. Fig. c). (a) (b) (c) Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 23 / 25
  • 24. Future works Creation of authoring environment Creation of a dedicated authoring environment allowing end-users (teachers) to design by themselves WIND-based interaction applications without coding. Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 24 / 25
  • 25. Thank you for your attention! Questions? The Nhan LUONG thenhan.luong@iutbayonne.univ-pau.fr Luong et al. (DESI team - LIUPPA) Interaction Model for Geographical Web July 8, 2009 25 / 25