JSON implementation for open IoT standards: O-MI and O-DF

Loading...
Thumbnail Image
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu | Master's thesis
Date
2021-01-25
Department
Major/Subject
Computer Science
Mcode
SCI3042
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
58 + 26
Series
Abstract
With JSON becoming the most used text based data interchange format over XML, defining JSON implementations for existing XML based standards is gaining attention. XML provides powerful tools, such as namespaces and schema validation, but emerging technologies such as JSON Schema and JSON-LD also provide same kind of functionality to JSON format. JSON Schema is a standard validating JSON documents against a schema document, similarly to XML schema, which can be used to validate XML documents against an XML schema. The standard is currently under development and this work employs the Draft-07 version of the standard. JSON-LD is a method to encode linked data in JSON format and, among other things, provides a native way to manage XML namespaces by defining a context mapping that maps terms to Internationalized Resource Identifiers (IRIs). This work utilizes the two JSON technologies to define JSON implementation for existing XML based IoT standards: O-MI and O-DF. The open standards O-MI/O-DF are defined to ensure the interoperability between different IoT platforms, where O-MI defines the communication protocol and O-DF defines the data format. Entities that communicate using the O-MI/O-DF standards are called O-MI nodes. The JSON schema provided in this work is functionally equivalent to the XML schema used to define the O-MI/O-DF standards and can be used to validate JSON messages to ensure compatibility with the XML version. Existing O-MI node implementations may convert the JSON messages to XML format without losing meaningful information. On the other hand, the JSON-LD implementation of the standards introduces some additional features that existing O-MI nodes would have to implement for compatibility.

JSON-formaatin suosion ohittaessa XML:n käytetyimpänä tekstipohjaisena tiedonsiirtoformaattina kiinnostus luoda JSON-toteutus olemassa oleville XML-pohjaisille standardeille kasvaa. XML tarjoaa tehokkaita työkaluja, kuten nimiavaruudet (namespaces) ja skeemavahvistus (schema validation). JSON Schema ja JSON-LD ovat kaksi nousevaa teknologiaa, jotka mahdollistavat vastaavat toiminnallisuudet JSON-formaattiin. JSON Schema on standardi, joka mahdollistaa JSON-asiakirjojen rakenteen tarkistamisen skeematiedoston avulla samalla tavalla kuin XML-skeema mahdollistaa XML-asiakirjojen rakenteen tarkistamisen. JSON Schema -standardi on vielä kehitteillä ja tässä työssä käytetään standardin Draft-07 versiota. JSON-LD on tapa esittää yhdistettyä tietoa (linked data) JSON-formaatissa ja tarjoaa muun muassa tavan käsitellä XML-nimiavaruudet määrittämällä kontekstikartoituksen, joka yhdistää termit IRI-muotoon (Internationalized Resource Identifier). Tämä työ hyödyntää edellä mainittuja JSON-teknologioita määritettäessä JSON-toteutus olemassa oleville XML-pohjaisille IoT-standardeille: O-MI ja O-DF. Avoimet standardit O-MI ja O-DF on kehitetty takaamaan IoT-alustojen yhteensopivuus. O-MI määrittelee tietoliikenneprotokollan ja O-DF tiedostomuodon. Standardien avulla kommunikoivia sovelluksia kutsutaan O-MI-noodeiksi (O-MI node). Tässä työssä esitellyt JSON-skeematiedostot vastaavat toiminnallisesti XML-skeemoja, joiden avulla O-MI- ja O-DF-standardit on määritelty. Esiteltyjä JSON-skeematiedostoja voidaan käyttää varmistamaan yhteensopivuus standardin XML-version kanssa. Olemassa olevat O-MI-noodi toteutukset voivat muuntaa JSON-viestit XML-formaattiin menettämättä tärkeää informaatiota. Esitelty JSON-LD -formaatti kuitenkin tuo mukanaan toiminnallisuuksia, jotka O-MI-noodien tulee toteuttaa täyden yhteensopivuuden takaamiseksi.
Description
Supervisor
Främling, Kary
Thesis advisor
Malhi, Avleen
Keywords
Internet of Things, messaging standards, open messaging interface, open data format, JSON schema, JSON-LD
Other note
Citation