Skip to content
/ omn Public
forked from w3c/omn

W3C Federated Infrastructures Community Group

Notifications You must be signed in to change notification settings

FITeagle/omn

This branch is 1 commit ahead of, 25 commits behind w3c/omn:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8ee75f8 · May 13, 2016
Sep 1, 2015
Sep 7, 2015
Oct 17, 2015
Jan 27, 2016
Sep 9, 2015
Dec 1, 2014
Sep 11, 2014
Jun 17, 2014
May 9, 2016
Oct 28, 2015
Nov 6, 2014
Apr 23, 2014
Sep 11, 2015
Mar 9, 2016
Nov 6, 2014
Oct 1, 2015
Sep 9, 2015
Sep 1, 2015

Repository files navigation

Federated Infrastructures Ontology

Build Status Coverage Status

Abstract

This repository contains the work conducted in the W3C Federated Infrastructures Community Group. It includes a formal information model for federated infrastructures (omn) and a Java library (omnlib) to translate between our Open-Multinet Ontology, GENI v3 RSpecs (plus extensions), OASIS TOSCA, and the IETF NFV models.

Further information

Java omnlib

The Java library helps developers to work with Open-Multinet related ontologies and includes a translator to convert between RDF, GENI RSpec XMLs, and TOSCA XML.

Using it

CLI

mvn compile
cd omnlib
./src/main/bin/omnlib -o ttl -i ./src/test/resources/geni/request/request_bound.xml

Web Service

Assuming you have a running WildFly instance

 cd omnweb
 mvn clean install
 mvn wildfly:deploy

Then convert the file

curl --data-urlencode content@../omnlib/src/test/resources/geni/request/request_bound.xml http://127.0.0.1:8080/omnweb/convert/request/ttl
curl --data-urlencode content@../omnlib/src/test/resources/geni/request/request_bound.xml http://demo.fiteagle.org:8080/omnweb/convert/request/ttl

Developing it

Using it in your own project

Add this repository to your pom.xml file:

<project>
  ...
  <repositories>
    <repository>
      <id>sonatype</id>
      <url>https://oss.sonatype.org/content/groups/public/</url>
    </repository>
  </repositories>
  ...
  <dependencies>
    <dependency>
      <groupId>info.open-multinet</groupId>
      <artifactId>omnlib</artifactId>
      <version>0.0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
  ...
</project>

Enhancing the library

  1. Checkout the code
  2. Run "mvn clean compile" to auto generate binding files
  3. Open with IDE (e.g. Eclipse or IntelliJ)

Directory Layout

  • bin: executables
  • data: example data to work with (to help validating and discussing the ontologies)
  • generated: auto generated files based (e.g. documentation, graphical representation, other serializations)
  • import: related ontologies to be reused (second main focus)
  • ontologies: upper ontologies (to main focus)
  • queries: example queries to work with (to help validating and discussing the ontologies)
  • src: omnlib (Java implementation and tests)

Suggested Tools

  • sparql (command line tool from jena to query data)
  • Protégé (graphical ontology editor)
  • Eclipse Xturtle (text based ontology editor with code completion and simple validation)
  • rdf.sh (command line ontology tools)
  • OwlToUml (to visualize simple ontologies as plantuml diagrams)
  • rapper (command line tool to convert and check ontologies)
  • lodlive (user friendly vizualization of a sparql endpoint)
  • yasgui (user friendly query of a sparql endpoint)
  • LODE (documentation generator for OWL files)

How To (rather old approach)

Run example Queries

./bin/runQuery.sh

Example (pre defined): Get the published nodes

./bin/runQuery.sh example2

Example (arbitrary): Get the status of the nodes for FLS

./bin/runQuery.sh advertisement-fp getnodestatus

About

W3C Federated Infrastructures Community Group

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 43.7%
  • Web Ontology Language 42.9%
  • CSS 5.1%
  • HTML 5.0%
  • Ruby 2.6%
  • Perl 0.4%
  • Other 0.3%