Difference between revisions of "IMarine APIs Consolidated Specifications"
From Gcube Wiki
(Created page with '{{lowercase title}}') |
|||
Line 1: | Line 1: | ||
− | {{lowercase | + | {{lowercase}} |
+ | |||
+ | [[Category:gCube Features]] | ||
+ | == Overview == | ||
+ | |||
+ | This page contains an overview about the specifications provided by the iMarine, along with links to the specifications' subsystems and to the Developer's guides. | ||
+ | The main aim is to provide a summary of the existing APIs at different granularities. The facilities regard the APIs produced in iMarine and are split into two main | ||
+ | categories: Data Management APIs and Data Consumption APIs. | ||
+ | |||
+ | == Key Features == | ||
+ | The iMarine APIs provide the following key features: | ||
+ | |||
+ | === Data Management & Data Consumption APIs === | ||
+ | |||
+ | ;Consistency across different client APIs | ||
+ | :Uniformity for APIs across standalone framework layers in inputs and outpus, context management, fault management, operation modes provision, etc. | ||
+ | |||
+ | ;Transparent system integration | ||
+ | :Design of APIs simplifying client usage, with respect to requirements specific to the system | ||
+ | |||
+ | ;Environment propagation | ||
+ | :Operational information among services transparently propagated over a range of protocols (SOAP, HTTP/S, and more) | ||
+ | |||
+ | ;Testability ensuring | ||
+ | :Design solutions that facilitate testing for clients | ||
+ | |||
+ | ;Support to standards | ||
+ | :Crucial functionalities are accessible via recognized standards in order to enhance interoperability | ||
+ | |||
+ | ;Compatibility endorsement | ||
+ | :Exploitation of framework simplifying building of modular systems | ||
+ | |||
+ | |||
+ | == APIs Categories == | ||
+ | ==== Data Management APIs ==== | ||
+ | ;[[Data Access and Storage APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Access_and_Storage_APIs) | ||
+ | :that support both client and back-end access to a range of structured and unstructured data sources available in the Data e-Infrastructure. They include Web Service APIs, local client APIs, data model implementations, auxiliary APIs, and development frameworks for service plugins. | ||
+ | |||
+ | ;[[Data Transfer APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Transfer_APIs) | ||
+ | :that provide access to transfer mechanisms for large sets of multi-type datasets distributed across the infrastructure. | ||
+ | |||
+ | ;[[Data Assessment and Harmonisation APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Assessment_and_Harmonisation_APIs) | ||
+ | :that provide access to services that handle heterogeneous sources with different data types as well as behavior | ||
+ | |||
+ | ==== Data Consumption APIs ==== | ||
+ | ;[[Data Retrieval APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Retrieval_APIs) | ||
+ | :that provide access to Information Retrieval facilites over heterogeneous environments, offer an approach for querying the information and allow easy integration of external data sources of information. | ||
+ | |||
+ | ;[[Data Manipulation APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Manipulation_APIs) | ||
+ | :that provide access to transformation facilities that satisfy system requirements for arbitrary transformation and homogenization of content and metadata. | ||
+ | |||
+ | ;[[Semantic Data Analysis APIs]] (https://gcube.wiki.gcube-system.org/gcube/index.php/Semantic_Data_Analysis_APIs) | ||
+ | :that provide access to facilities linking distributed data across community boundaries, based on the Semantic Web and the publication of expressive metadata in a shared knowledge framework. | ||
+ | |||
+ | == Specifications == | ||
+ | |||
+ | The specifications require preparatory information to be properly understood. | ||
+ | In particular: | ||
+ | |||
+ | ;[https://gcube.wiki.gcube-system.org/gcube/index.php/How_to_develop_a_gCube_Component How to Develop a gCube Component] | ||
+ | :A basic guide to build a gCube Component | ||
+ | |||
+ | ;[https://gcube.wiki.gcube-system.org/gcube/index.php/Featherweight_Stack Buiding Components using the gCube Fetherweight Stack] | ||
+ | :A guide to develop libraries or clients for the gCube Services | ||
+ | |||
+ | ;[https://gcube.wiki.gcube-system.org/gcube/index.php/Developer%27s_Guide Developer's Guide] | ||
+ | :the overall gCube Developer's Guide | ||
+ | |||
+ | |||
+ | Task oriented specifications can be found in the following: | ||
+ | |||
+ | ;[[Data Management APIs]] | ||
+ | :the specifications for the Data Management APIs | ||
+ | |||
+ | ;[[Data Consumption APIs]] | ||
+ | :the specifications for the Data Consumption APIs | ||
+ | |||
+ | GCube APIs: | ||
+ | *[https://gcube.wiki.gcube-system.org/gcube/index.php/Integration_and_Interoperability_Facilities_Framework:_Client_Libraries Client Libraries Framework Specification] | ||
+ | *[https://gcube.wiki.gcube-system.org/gcube/index.php/Integration_and_Interoperability_Facilities_Framework:_Application_Service_Layer_Framework_Specification Application Service Layer Framework Specification] | ||
+ | *[https://gcube.wiki.gcube-system.org/gcube/index.php/Integration_and_Interoperability_Facilities_Framework:_HTTP_API_Framework_Specification HTTP API Framework Specification] | ||
+ | *[https://gcube.wiki.gcube-system.org/gcube/index.php/Integration_and_Interoperability_Facilities_Framework:_WSRF_API_Framework_Specification WSRF API Framework Specification] |
Revision as of 10:40, 20 February 2014
Contents
Overview
This page contains an overview about the specifications provided by the iMarine, along with links to the specifications' subsystems and to the Developer's guides. The main aim is to provide a summary of the existing APIs at different granularities. The facilities regard the APIs produced in iMarine and are split into two main categories: Data Management APIs and Data Consumption APIs.
Key Features
The iMarine APIs provide the following key features:
Data Management & Data Consumption APIs
- Consistency across different client APIs
- Uniformity for APIs across standalone framework layers in inputs and outpus, context management, fault management, operation modes provision, etc.
- Transparent system integration
- Design of APIs simplifying client usage, with respect to requirements specific to the system
- Environment propagation
- Operational information among services transparently propagated over a range of protocols (SOAP, HTTP/S, and more)
- Testability ensuring
- Design solutions that facilitate testing for clients
- Support to standards
- Crucial functionalities are accessible via recognized standards in order to enhance interoperability
- Compatibility endorsement
- Exploitation of framework simplifying building of modular systems
APIs Categories
Data Management APIs
- Data Access and Storage APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Access_and_Storage_APIs)
- that support both client and back-end access to a range of structured and unstructured data sources available in the Data e-Infrastructure. They include Web Service APIs, local client APIs, data model implementations, auxiliary APIs, and development frameworks for service plugins.
- Data Transfer APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Transfer_APIs)
- that provide access to transfer mechanisms for large sets of multi-type datasets distributed across the infrastructure.
- Data Assessment and Harmonisation APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Assessment_and_Harmonisation_APIs)
- that provide access to services that handle heterogeneous sources with different data types as well as behavior
Data Consumption APIs
- Data Retrieval APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Retrieval_APIs)
- that provide access to Information Retrieval facilites over heterogeneous environments, offer an approach for querying the information and allow easy integration of external data sources of information.
- Data Manipulation APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Data_Manipulation_APIs)
- that provide access to transformation facilities that satisfy system requirements for arbitrary transformation and homogenization of content and metadata.
- Semantic Data Analysis APIs (https://gcube.wiki.gcube-system.org/gcube/index.php/Semantic_Data_Analysis_APIs)
- that provide access to facilities linking distributed data across community boundaries, based on the Semantic Web and the publication of expressive metadata in a shared knowledge framework.
Specifications
The specifications require preparatory information to be properly understood. In particular:
- How to Develop a gCube Component
- A basic guide to build a gCube Component
- Buiding Components using the gCube Fetherweight Stack
- A guide to develop libraries or clients for the gCube Services
- Developer's Guide
- the overall gCube Developer's Guide
Task oriented specifications can be found in the following:
- Data Management APIs
- the specifications for the Data Management APIs
- Data Consumption APIs
- the specifications for the Data Consumption APIs
GCube APIs: