SOA, ROA and the NSDI
In light of discussions on emerging technology for the National Spatial Data Infrastructure it's healthy for the geospatial and environmental communities to discuss options for NSDI, and consider the feasibility of different approaches as emergent NSDI solutions. It's important to note that the "NSDI 2.0" grassroots coalition didn't identify a particular technology platform - unlike others that said "SOA". Why? Because our consensus process identified this as an area where community discussion and exploration of existant and emergent approaches was needed - basically the group said "let's get the concepts out there first and discuss it."
But people in the SDI community are aware there can be different ways of building SDI - all the way from proprietary to interoperable and everything in between. With that said, the community can refer to previous work in SDI that attempted to capture Resource Oriented Architectures (ROA) principles and assess the feasibility of using such approaches compared with Service Oriented Architectures (SOA) principles. Here are some basic definitions from that work -
"The SOA and ROA architectural design patterns and the corresponding distributed programming paradigms provide a conceptual methodology and development tools for creating distributed architectures. Distributed architectures consist of components that clients as well as other components can access through the network via an interface and the interaction mechanisms the architecture defines; in the cases of ROA and SOA such distributed components will be named respectively resources and services." European Communities, 2008
As an overarching concept what is key is interoperability - the shared agreements of our community. If consensus ROA standards do advance in the future and can be used for access to geospatial and environmental data this would be positive - and we've already built RESTful Services with technologies like Windows Communication Foundation (WCF). But there will also be NSDI 2.0 information exchange, services and collaboration requirements that can be supported better by SOA standards like OGC Web Services - which are available now. In the end, a key concept is bringing NSDI and NEIEN closer, and advancing our community. More to discuss soon...