The Environmental Linked Feature Interoperability Experiment (ELFIE) has explored existing OGC and W3C standards with the goal of establishing a best practice for exposing cross-domain links between environmental domain and sampling features. The IE focused on two high-level functional goals:
-
The need to encode topological and domain specific relationships between cross-domain features
-
The need to link available observations data to sampled domain features.
While considering specific use cases, the IE has addressed issues of encoding specific (simplified and useful) views of a rich (arbitrarily complex) linked data graph that could potentially be known, discovered through links, and passed between systems. These graph views, which are italicized throughout for clarity of usage, support linked data architectures including catalogs and registries. For example, data providers could use these views as a best practice to expose their monitoring features and/or domain features to systems that traverse, harvest, and index available data. Similarly, integrated catalogs that index and construct links between features can use the views as a linked data response to queries. Views may correspond to concepts such as shapes (as per the W3C Shapes Constraint Language – SHACL), schema and profiles, however at this stage the formal correspondence has yet to be fully tested and articulated, and the relationships between these concepts themselves is not fully articulated. The W3C Data Exchange Working Group is currently developing a guidance document around the concept of profiles which may provide a useful baseline for formalizing these concepts in future.
Current OGC services, while flexible and capable, do not directly allow exposure of features in a REST-ful way or provide traversable hypermedia describing available methods, data, or interfaces to related (linked) content. The encodings demonstrated in the ELFIE turn the normal OGC service pattern (GetCapabilities request followed by introspection to understand contents) inside out by encoding associations between features as linked data predicates. This approach uses Resource Description Framework (RDF) triples (subject-predicate-object) to describe resource-relation-resource associations where the resources are unambiguous feature identifiers, but may resolve (dereference) to OGC web service requests as illustrated in the W3C/OGC Spatial Data On the Web Best Practices (Best Practice 1 cite:[Barnaghi:17:SDW]). This leverages the power of services such as WFS to provide feature instances, but expresses the structure of complex features or cross-service associated features explicitly.
The ELFIE has chosen to use JSON-LD as its encoding of RDF data. This was done in alignment and collaboration with the concurrent OGC work on JSON Best Practices. The ubiquity of JSON in Web development also contributed to the choice so as to ease implementing the RDF model by this community. The IE has specified a number of JSON-LD contexts cite:[Kellogg:14:J] that describe useful RDF views. JSON-LD documents that conform to these contexts can be delivered as the payload returned from a REST API endpoint. In this case, they are self-describing through inclusion of the context document reference. They may also be negotiated, for instance using the view pattern described by the Linked Data API. (The DXWG is currently developing a formal standard for “content negotiation by profile” which confirms the relevance of this pattern.). Using this approach, the recommendation takes advantage of the power and flexibility of Linked Data architecture while providing just enough guidance to foster interoperability within a simplified implementation regime based on JSON. By describing a partially resolved useful view of a linked data graph, it also allows resources that are important but not yet available using Semantic Web formalisms to be incorporated into a linked data system. This mechanism should provide a gateway to inclusion in and understanding the value of the Linked Open Data Cloud.
The scope of this work could have easily gotten out of control, since the Linked Data and Semantic Web itself has never fully come to grips with the issue of pragmatic limits to graph shapes, non-unique naming and content-negotiation, nor has the Web Services world addressed linking objects and granularity of responses in a distributed environment. To focus the work, the IE attempted to avoid issues not directly related to RDF encodings as would be passed from server to client via http to support the two high level abstract use cases above.
The ELFIE tested the assumption that broadly adopted web technologies for linked data could be applied in the environmental domain to satisfy the needs of a number of compelling use cases. The [Objectives] section describes engineering design goals and details the assumptions and scope that were used to constrain the magnitude of the IE. Much of the IE involved design discussions amongst participants where candidate use cases were considered and potential technologies and implementations were explored. The [Use_Cases] section describes these use cases and the select set that were more thoroughly tested to evolve the technologies that were agreed upon during design discussions.
The ELFIE technology selection criteria were that they be adoptable, common, and suitable to the needs of the ELFIE use cases. In some cases, new and thus lightly tested domain feature models were applied with the chosen, well established, technologies. The [Standards_Best_Practices] section is a brief discussion of the technologies and standards tested in the ELFIE. The technology chosen to provide a precise but not overly prescriptive description of the RDF views is the JSON-LD context. Details of the contexts defined in the ELFIE are discussed in the [Relations_Contexts] section.
The outcomes of the ELFIE provide guidance for creating (graph) views of environmental features and observations. A simple view intended to be a preview, suitable for basic indexing is specified. Views intended to provide topological as well as observational and domain feature model relationships were also explored. The Preview view was largely successful, but there was no one satisfactory solution for expression of a preview geometry because GeoJSON is incompatible with JSON-LD, WKT is thought to be difficult to work with in typical web environments, and the schema.org geometries were found to have limited utility. The experimentation with domain feature models led to the conclusion that the underlying linked data technologies are mature enough, but progress is still needed on domain feature ontologies and encoding geometry. These issues are discussed in more detail in the [Experiment_Outcomes_Summary] and [Issues_Recommendations] sections.
The ELFIE explored a number of interesting but tangential topics. Annex A: [ontology_from_uml] is a summary of one important topic discussed; how to generate a feature ontology from a UML model. Annex B: [linked_data_default] is a brief discussion of issues related to what the default response should be when resolving a URI for a non-information resource that may have multiple representations.