This Maritime Information Sharing Environment (MISE) GitHub site is an unofficial 3rd party demo. See the MISE website for the official source material.
The MISE defines a low cost, implementable solution for maritime information sharing while providing mechanisms to mitigate associated legal and policy concerns. As a participant in the MISE, data providers and consumers manage and share maritime information through common data definitions and security attributes, resulting in an internet accessible, unclassified information sharing capability.
The MISE may be understood in terms of a "common profile" whereby a single reference view is expanded on by technical guidance views, each of which may have sub-views, either providing further technical guidance or details about specific implementations:
The Security and Data Technical Guidance views, along with their various subviews, define the exchange data formats as well as the security requirements for successful data exchange. For example, SAML is to be used to exchange authentication and authorization information, and SSL is to be used to provide confidentiality as well as machine-to-machine authentication.
This GitHub project shares some of the implementation-level code. The "Implementation View Plumbing" refers to code that implements TG view requirements like the ones mentioned above. The "Client Sample Code" shows how to access the publish service (including deleting position records) and the search and retrieve services.
Implementation | Toolkit | Client Sample Code |
---|---|---|
Java | source and binary jar files - MDA-clients/java/MDAUtils-1.0-*.jar † |
MDA-clients/java/src/test |
.Net (C#) | MDA-clients/dotnet/MdaToolkit | MDA-clients/dotnet/ClientTest/ClientTest.cs |
† The jar files must be accessed by downloading the zip file below, or by cloning this repository.
Position IEPD V3.2 Master Document - This IEPD is a set of NIEM 2.1-conformant exchange artifacts. It is conformant to the NIEM MPD (Model Package Description) Specification, version 1.1, and uses the file structure recommended by that document.
MISE Publish Specification - Provides the interface details for publishing, updating, and deleting recordsets within the MISE. The MISE follows the Representational State Transfer (REST) style. The MISE defines a URI endpoint for publication, and information-provider systems send HTTP requests and receive responses to URI paths beneath this URI endpoint.
TestPublishClient.java - Shows how to utilize the MDA Java client libraries to issue a publish request, e.g., of a vessel position record.
TestDeleteClient.java - Shows how to utilize the MDA Java client libraries to issue a DELETE request against a previously published resource, such as a vessel position record.
ClientTest.cs -
The publish()
and delete()
methods show how to utilize the MDA .Net client
libraries to publish and DELETE resources, such as vessel position records.
MISE Search/Retrieve Specification - Describes the data-consumer facing representational state transfer (REST) architecture providing search and retrieve (SR) functionality for the MISE. By conforming to this interface, the MISE provides data consumers with the ability to find and retrieve the right information at the right time, based on the needs, rights, and authorities of the user and the organizations requesting the information.
TestSearchClient.java - Shows how to utilize the MDA Java client libraries to issue a search request against shared resources, such as vessel position records.
TestRetrieveClient.java - Shows how to utilize the MDA Java client libraries to retrieve shared resources, such as vessel position records.
ClientTest.cs -
The search()
and retrieve()
methods show how to utilize the MDA .Net
client to search for and retrieve shared resources, such as vessel position
records.