SlideShare a Scribd company logo
1 of 31
JavaScript Client Libraries for the
(Former) Long Tail of OGC Standards
FOSS4G-Europe, Bremen, July 2014
Daniel Nüst (52°North GmbH), Matthes Rieke (52N), Paul Breen (BAS)
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 2
http://commons.wikimedia.org/wiki/File:Long_tail.svg
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 3
2014
JavaScript is on the rise (node, JS engines)
Cloud
jQuery
AngularJS, Dojo, ExtJS, …
OpenLayers, Leaflet, GeoExt, …
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 4
Motivation
Create generic client libraries because…
applications move to the browser,
WPS and SOS reach(ed) 2nd version,
need to build apps, and
we don’t want to repeat ourselves.
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 5
SOS.JS AND WPS-JS
Coming up: new project introduction and demonstration
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 6
WPS-JS
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 7
About wps-js
JavaScript WPS Client to build interactive
forms to control standardized processes.
Build on: OpenLayers (requests, XML)
GitHub: https://github.com/52North/wps-js
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 8
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 9
https://www.ohloh.net/p/wps-js
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 10
OGC WPS
“Geo-ready” web processing standard
GetCapabilities
DescribeProcess
Execute
WPS-G, WPS-T
More: http://www.ogcnetwork.net/wps
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 11
wps-js Features
Form generation based on process descriptions
WPS 1.0.0
Interactive execution of processes
Pre-configuration of UI/form
Style-free
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 12
Demo
http://nuest.github.io/wps-js/
http://geostatistics.demo.52north.org/wps/client.html
http://geoviqua.dev.52north.org/wps-js-client/
Simple calculator
Table output
Data intercomparison and colocation
(pre-configuration)
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 13
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 14
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 15
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 16
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 17
http://geoviqua.dev.52north.org/wps-js-
client/demo/geca-
intercomparison/client.html?source=Testlink&_pdPortl
et_WAR_geoportal_uuid=067a17f9-8d37-4d15-b405-
25e701dd03b0&_pdPortlet_WAR_geoportal_uuid=311
72be3-01ae-4d4d-b500-8e734a1d5432&hide=false
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 18
SOS.JS
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 19
About SOS.js
Javascript library to browse, visualise, and
access, data from an OGC Sensor Observation
Service.
Basis: OpenLayers
GitHub: https://github.com/52North/sos-js
History…
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 20
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 21
https://www.ohloh.net/p/sos-js
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 22
Live Demos
http://basmet.nerc-bas.ac.uk/sos/
http://52north.github.io/sos-js/
http://sensors.geonovum.nl/sos-js-test/sos-app-test.html
[integrated in 52°North SOS]
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 23
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 24
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 25
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 26
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 27
Experiences
Shortest path to beta (OL)
Raw time series data can be handled in JS
XML is possible, of course JSON is simpler…
Hard to reach “completeness” when driven by projects
Be aware of CORS when you deploy services
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 28
Goals
Useful and usable libraries for application developers (not
SWE/processing experts)
Facilitate usage of WPS and SOS
Minimal footprint
Flexible use (domain applications)
User-friendly interfaces
Non-copyleft licenses
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 29
Steps
1) Become independent…
from mapping libraries
from specific frameworks
modularize
release version 1.0
2) Extend developer/user community
3) Ease usage (plugins for JS libs/JS mapping)
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 30
Challenges
“lib-independent library”
JavaScript modularization
Coordination and community building
Testing and service compatibility
SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 31
@FiveTwoN
http://blog.52north.org/
52north.org/communities/

More Related Content

Similar to JavaScript Client Libraries for the (Former) Long Tail of OGC Standards

20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdfiDataScientists
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open SourceBertrand Delacretaz
 
Morden F2E Education - Think of Progressive Web Apps
Morden F2E Education - Think of Progressive Web AppsMorden F2E Education - Think of Progressive Web Apps
Morden F2E Education - Think of Progressive Web AppsCaesar Chi
 
The future of server side JavaScript
The future of server side JavaScriptThe future of server side JavaScript
The future of server side JavaScriptOleg Podsechin
 
Node.js Web Development SEO Expert Bangladesh LTD.pdf
Node.js Web Development  SEO Expert Bangladesh LTD.pdfNode.js Web Development  SEO Expert Bangladesh LTD.pdf
Node.js Web Development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Open Source GIS
Open Source GISOpen Source GIS
Open Source GISJoe Larson
 
Js everywhere (Georgy Bunin)
Js everywhere (Georgy Bunin)Js everywhere (Georgy Bunin)
Js everywhere (Georgy Bunin)Georgy Bunin
 
ExSchema - ICSM'13
ExSchema - ICSM'13ExSchema - ICSM'13
ExSchema - ICSM'13jccastrejon
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GISSANGHEE SHIN
 
Mark Hughes Annual Seminar Presentation on Open Source
Mark Hughes Annual Seminar Presentation on Open Source Mark Hughes Annual Seminar Presentation on Open Source
Mark Hughes Annual Seminar Presentation on Open Source Tracy Kent
 
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
 
Ibm_interconnect_restapi_workshop
Ibm_interconnect_restapi_workshopIbm_interconnect_restapi_workshop
Ibm_interconnect_restapi_workshopShubhra Kar
 
Social data visualization
Social data visualizationSocial data visualization
Social data visualizationCristina Serban
 
Js & hci 2017.ppt
Js & hci   2017.pptJs & hci   2017.ppt
Js & hci 2017.pptArtur Basak
 
Keyur_Joshi_resume - Copy
Keyur_Joshi_resume - CopyKeyur_Joshi_resume - Copy
Keyur_Joshi_resume - CopyKeyur Joshi
 
JAVA Developer_Resume_Vaibhav Srivastav
JAVA Developer_Resume_Vaibhav SrivastavJAVA Developer_Resume_Vaibhav Srivastav
JAVA Developer_Resume_Vaibhav SrivastavVaibhav Srivastav
 

Similar to JavaScript Client Libraries for the (Former) Long Tail of OGC Standards (20)

20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open Source
 
Morden F2E Education - Think of Progressive Web Apps
Morden F2E Education - Think of Progressive Web AppsMorden F2E Education - Think of Progressive Web Apps
Morden F2E Education - Think of Progressive Web Apps
 
We are the music makers and we are the dreamers of dreams
We are the music makers and we are the dreamers of dreamsWe are the music makers and we are the dreamers of dreams
We are the music makers and we are the dreamers of dreams
 
The future of server side JavaScript
The future of server side JavaScriptThe future of server side JavaScript
The future of server side JavaScript
 
Node.js Web Development SEO Expert Bangladesh LTD.pdf
Node.js Web Development  SEO Expert Bangladesh LTD.pdfNode.js Web Development  SEO Expert Bangladesh LTD.pdf
Node.js Web Development SEO Expert Bangladesh LTD.pdf
 
Open Source GIS
Open Source GISOpen Source GIS
Open Source GIS
 
Js everywhere (Georgy Bunin)
Js everywhere (Georgy Bunin)Js everywhere (Georgy Bunin)
Js everywhere (Georgy Bunin)
 
ExSchema - ICSM'13
ExSchema - ICSM'13ExSchema - ICSM'13
ExSchema - ICSM'13
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
 
Mark Hughes Annual Seminar Presentation on Open Source
Mark Hughes Annual Seminar Presentation on Open Source Mark Hughes Annual Seminar Presentation on Open Source
Mark Hughes Annual Seminar Presentation on Open Source
 
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...
 
mitra_resume-2
mitra_resume-2mitra_resume-2
mitra_resume-2
 
Ibm_interconnect_restapi_workshop
Ibm_interconnect_restapi_workshopIbm_interconnect_restapi_workshop
Ibm_interconnect_restapi_workshop
 
Goncalo Pereira CV
Goncalo Pereira CVGoncalo Pereira CV
Goncalo Pereira CV
 
Social data visualization
Social data visualizationSocial data visualization
Social data visualization
 
Js & hci 2017.ppt
Js & hci   2017.pptJs & hci   2017.ppt
Js & hci 2017.ppt
 
BackEnd-Roadmap.pdf
BackEnd-Roadmap.pdfBackEnd-Roadmap.pdf
BackEnd-Roadmap.pdf
 
Keyur_Joshi_resume - Copy
Keyur_Joshi_resume - CopyKeyur_Joshi_resume - Copy
Keyur_Joshi_resume - Copy
 
JAVA Developer_Resume_Vaibhav Srivastav
JAVA Developer_Resume_Vaibhav SrivastavJAVA Developer_Resume_Vaibhav Srivastav
JAVA Developer_Resume_Vaibhav Srivastav
 

More from Daniel Nüst

RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)Daniel Nüst
 
containerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brusselscontainerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, BrusselsDaniel Nüst
 
Docker @ Data Science Meetup
Docker @ Data Science MeetupDocker @ Data Science Meetup
Docker @ Data Science MeetupDaniel Nüst
 
Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...Daniel Nüst
 
Docker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, BonnDocker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, BonnDaniel Nüst
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RDaniel Nüst
 
Agile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-webAgile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-webDaniel Nüst
 
Visualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor ObservationsVisualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor ObservationsDaniel Nüst
 
WPS Application Patterns
WPS Application PatternsWPS Application Patterns
WPS Application PatternsDaniel Nüst
 
Open Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development ProjectsOpen Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development ProjectsDaniel Nüst
 
5 Star Open Geoprocessing
5 Star Open Geoprocessing5 Star Open Geoprocessing
5 Star Open GeoprocessingDaniel Nüst
 
The 52°North Web Processing Service
The 52°North Web Processing ServiceThe 52°North Web Processing Service
The 52°North Web Processing ServiceDaniel Nüst
 
Linked data and rdf
Linked  data and rdfLinked  data and rdf
Linked data and rdfDaniel Nüst
 
OGC SOS for Your Data
OGC SOS for Your DataOGC SOS for Your Data
OGC SOS for Your DataDaniel Nüst
 
sos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from Rsos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from RDaniel Nüst
 
Connecting R to the Sensor Web
Connecting R to the Sensor WebConnecting R to the Sensor Web
Connecting R to the Sensor WebDaniel Nüst
 
sos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price Presentationsos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price PresentationDaniel Nüst
 
Visualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor DataVisualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor DataDaniel Nüst
 

More from Daniel Nüst (20)

RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)RR & Docker @ MuensteR Meetup (Sep 2017)
RR & Docker @ MuensteR Meetup (Sep 2017)
 
containerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brusselscontainerit at useR!2017 conference, Brussels
containerit at useR!2017 conference, Brussels
 
Docker @ Data Science Meetup
Docker @ Data Science MeetupDocker @ Data Science Meetup
Docker @ Data Science Meetup
 
Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...Containers for sensor web services, applications and research @ Sensor Web Co...
Containers for sensor web services, applications and research @ Sensor Web Co...
 
Docker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, BonnDocker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, Bonn
 
Atlas Zukünfte
Atlas ZukünfteAtlas Zukünfte
Atlas Zukünfte
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with R
 
Agile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-webAgile 2015 a-geo-label-for-the-sensor-web
Agile 2015 a-geo-label-for-the-sensor-web
 
Visualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor ObservationsVisualising Interpolations of Mobile Sensor Observations
Visualising Interpolations of Mobile Sensor Observations
 
WPS Application Patterns
WPS Application PatternsWPS Application Patterns
WPS Application Patterns
 
Open Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development ProjectsOpen Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development Projects
 
5 Star Open Geoprocessing
5 Star Open Geoprocessing5 Star Open Geoprocessing
5 Star Open Geoprocessing
 
The 52°North Web Processing Service
The 52°North Web Processing ServiceThe 52°North Web Processing Service
The 52°North Web Processing Service
 
Linked data and rdf
Linked  data and rdfLinked  data and rdf
Linked data and rdf
 
OGC SOS for Your Data
OGC SOS for Your DataOGC SOS for Your Data
OGC SOS for Your Data
 
sos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from Rsos4R - Accessing SensorWeb Data from R
sos4R - Accessing SensorWeb Data from R
 
Connecting R to the Sensor Web
Connecting R to the Sensor WebConnecting R to the Sensor Web
Connecting R to the Sensor Web
 
sos4R @ OGC TC
sos4R @ OGC TCsos4R @ OGC TC
sos4R @ OGC TC
 
sos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price Presentationsos4R - 52° North Innovation Price Presentation
sos4R - 52° North Innovation Price Presentation
 
Visualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor DataVisualizing the Availability of Temporally Structured Sensor Data
Visualizing the Availability of Temporally Structured Sensor Data
 

Recently uploaded

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 

Recently uploaded (20)

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 

JavaScript Client Libraries for the (Former) Long Tail of OGC Standards

  • 1. JavaScript Client Libraries for the (Former) Long Tail of OGC Standards FOSS4G-Europe, Bremen, July 2014 Daniel Nüst (52°North GmbH), Matthes Rieke (52N), Paul Breen (BAS)
  • 2. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 2 http://commons.wikimedia.org/wiki/File:Long_tail.svg
  • 3. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 3 2014 JavaScript is on the rise (node, JS engines) Cloud jQuery AngularJS, Dojo, ExtJS, … OpenLayers, Leaflet, GeoExt, …
  • 4. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 4 Motivation Create generic client libraries because… applications move to the browser, WPS and SOS reach(ed) 2nd version, need to build apps, and we don’t want to repeat ourselves.
  • 5. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 5 SOS.JS AND WPS-JS Coming up: new project introduction and demonstration
  • 6. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 6 WPS-JS
  • 7. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 7 About wps-js JavaScript WPS Client to build interactive forms to control standardized processes. Build on: OpenLayers (requests, XML) GitHub: https://github.com/52North/wps-js
  • 8. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 8
  • 9. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 9 https://www.ohloh.net/p/wps-js
  • 10. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 10 OGC WPS “Geo-ready” web processing standard GetCapabilities DescribeProcess Execute WPS-G, WPS-T More: http://www.ogcnetwork.net/wps
  • 11. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 11 wps-js Features Form generation based on process descriptions WPS 1.0.0 Interactive execution of processes Pre-configuration of UI/form Style-free
  • 12. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 12 Demo http://nuest.github.io/wps-js/ http://geostatistics.demo.52north.org/wps/client.html http://geoviqua.dev.52north.org/wps-js-client/ Simple calculator Table output Data intercomparison and colocation (pre-configuration)
  • 13. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 13
  • 14. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 14
  • 15. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 15
  • 16. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 16
  • 17. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 17 http://geoviqua.dev.52north.org/wps-js- client/demo/geca- intercomparison/client.html?source=Testlink&_pdPortl et_WAR_geoportal_uuid=067a17f9-8d37-4d15-b405- 25e701dd03b0&_pdPortlet_WAR_geoportal_uuid=311 72be3-01ae-4d4d-b500-8e734a1d5432&hide=false
  • 18. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 18 SOS.JS
  • 19. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 19 About SOS.js Javascript library to browse, visualise, and access, data from an OGC Sensor Observation Service. Basis: OpenLayers GitHub: https://github.com/52North/sos-js History…
  • 20. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 20
  • 21. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 21 https://www.ohloh.net/p/sos-js
  • 22. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 22 Live Demos http://basmet.nerc-bas.ac.uk/sos/ http://52north.github.io/sos-js/ http://sensors.geonovum.nl/sos-js-test/sos-app-test.html [integrated in 52°North SOS]
  • 23. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 23
  • 24. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 24
  • 25. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 25
  • 26. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 26
  • 27. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 27 Experiences Shortest path to beta (OL) Raw time series data can be handled in JS XML is possible, of course JSON is simpler… Hard to reach “completeness” when driven by projects Be aware of CORS when you deploy services
  • 28. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 28 Goals Useful and usable libraries for application developers (not SWE/processing experts) Facilitate usage of WPS and SOS Minimal footprint Flexible use (domain applications) User-friendly interfaces Non-copyleft licenses
  • 29. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 29 Steps 1) Become independent… from mapping libraries from specific frameworks modularize release version 1.0 2) Extend developer/user community 3) Ease usage (plugins for JS libs/JS mapping)
  • 30. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 30 Challenges “lib-independent library” JavaScript modularization Coordination and community building Testing and service compatibility
  • 31. SOS.js & wps-js @ FOSS4G-E, Bremen, 2014 31 @FiveTwoN http://blog.52north.org/ 52north.org/communities/

Editor's Notes

  1. What is the former long tail??
  2. What is missing today are generic libraries that operate at the same level of performance and quality to (i) access observation and time series data, for example coming from OGC Sensor Observation Services (SOS) as part of the Sensor Web Enablement (SWE) suite of standards, and (ii) control processes published online, for examples as an OGC Web Processing Service (WPS). These standards are less widespread than WMS and WFS but gain momentum as data volumes increase, for example with a myriad of smart sensors in the internet of things or new EO satellite missions, and subsequent requirements for sophisticated architectures for (event-based) processing and management of time series data. SWE standards have just reached their second versions; a new WPS standard is currently under development.
  3. During the talk we will demonstrate sample applications build with the libraries and share experiences of developing client libraries for XML-based standardized web services with Javascript, which include programming as well as project build and management lessons. SOS.js is a Javascript framework to access SOS data and build sophisticated lightweight browser applications for discovering and displaying time series data as plots, tables, and maps. It consists of two modules: core and user interface.
  4. wps-js is a Javascript client library for the WPS generating forms based on the standardized metadata from the service and interactively creating and submitting processing tasks. It uses a templating mechanism for XML building and an internal Javascript class hierarchy. Both libraries are based on OL’s request and response encoding.
  5. WPS-G (extension, based on WPS-T) (un)deployment of processes and data, process mgmt (monitor, control), download results
  6. Wps-js is a simple form generation framework, limited styling etc. to allow easy integration into other websites
  7. Process description for simple calculator
  8. Data intercomparison clients pre-configuration Parameter passing through URL http://geoviqua.dev.52north.org/wps-js-client/demo/geca-intercomparison/client.html?source=Testlink&_pdPortlet_WAR_geoportal_uuid=067a17f9-8d37-4d15-b405-25e701dd03b0&_pdPortlet_WAR_geoportal_uuid=31172be3-01ae-4d4d-b500-8e734a1d5432
  9. SOS.js is a Javascript framework to access SOS data and build sophisticated lightweight browser applications for discovering and displaying time series data as plots, tables, and maps. It consists of two modules: core and user interface.
  10. Paul Breen, BAS
  11. We conclude that Javascript is ready to handle raw (timeseries) data and it is used more than ever. Also, both the standards and their open source implementations are ready for operational deployments. So it is now time to spread them further by increasing the usability with good browser client applications based on small and flexible open source libraries.
  12. Currently XML parsing facilities and request handling of OL are used (XML.js) One goal for both libraries is to become independent of OL and provide service access with a minimal footprint, for example to display data without maps. Might OL and Leaflet eventually use these libraries instead of their own client implementations for SOS and WPS? We see an advantage of developing such small and focussed libraries maintained by field experts in these non-mainstream domains. We’ll happily discuss if this is the best approach and pose the following question: Is there a (technical, organisational) way to build a compatible Javascript client frameworks across all geo-service standards?
  13. While the presented libraries are developed withing the 52°North communities we want to use this talk to actively reach out to members of other open source projects to seek collaborators and to organise interoperability tests to make these tools useful for a broader community.