Fibo Ontology

The FIBO ontology is best viewed using a dedicated ontology tool. We include instructions here for three popular tools, Protégé, TopBraid Composer and CCM (Cameo Concept Modeler). For each of these tools, the Production and Development versions of FIBO are available. See below for detailed instructions for loading FIBO in each of these tools.

Using FIBO

The FIBO Ontology is available online using the follow-your-nose pattern. This means that tools that use this pattern can read FIBO directly from the web. This ensures that you are always viewing the latest version of FIBO. Keep in mind, that when viewing FIBO in this way, that any edits you make to FIBO will only be reflected in your own copy, and won't be saved for others to see.

FIBO is also available for offline use by downloading a .zip of the current state. FIBO is updated every three months, so any such offline downloaded version will quickly be out of date.

NEW in 2019 Q1

  • FIBO Quickstart (see below)
  • FIBO Namespace Prefixes (see below)

Collaborations

The EDM Council is working in collaboration with many companies to offer open, easy access to FIBO content for discovery and analysis. Available now are:

FIBO Quickstart

FIBO content is available in a single file, that can be loaded into an ontology tool or into a database. The FIBO Quickstart does not include all the content structuring of FIBO, but does include all the content. FIBO Quickstart is most appropriate for read-only applications of FIBO and for users who are new to FIBO and are evaluating it.

Using quickstart in Protégé

Quickstart is currently only avaiable in RDF Turtle(.ttl) and N-Triples(.nt). More formats coming soon.

  • Download either the Development or Production version of Quickstart.
  • From the Protege menu, Choose "Open", and navigate to where you downloaded the file.

Using quickstart in TopBraid Composer

  • Download either the Development or Production version of Quickstart.
  • Open TopBraid Composer. Create a project (File>New>Project) called spec.edmcouncil.org.
  • Drag and drop the file into your the project you just created
  • Double-click the file you just dropped in the TopBraid Navigator pane

Using FIBO online

FIBO is published using the Web Ontology Language (OWL). There are a number of tools available, both commercial and open source, that can read and edit FIBO. We provide instructions for the most common ones.

Protégé

Please use Protégé version 5.2 or higher.

NOTE: Recent version of Java can cause Protégé to exit with an error message (on the Protégé console) to the effect "Comparison method violates its general contract!" This is an incompatibiliy between Protégé and Java, and has nothing to do with FIBO. If this happens, a work-around is to add the following to the java call line in the run.bat or run.sh (if you are on Windows or another platform, respectively):

 -Djava.util.Arrays.useLegacyMergeSort=true

Protégé is an open-source ontology editor that can be used to view and edit FIBO. Protégé works well in online mode, so you can point it to an LoadFIBO file, and it will load the rest.

  1. In Protégé, select File>Open from URL
  2. Copy and Paste the URL for the LoadFIBO.rdf file from the version you desire; https://spec.edmcouncil.org/fibo/ontology/master/latest/LoadFIBODev.rdf for the development version or https://spec.edmcouncil.org/fibo/ontology/master/2019Q2/LoadFIBOProd.rdf for the production version
Protégé will find and load all the FIBO files from the currently published version (for the selected version).

TopBraid Composer

At the moment, FIBO cannot be loaded online into TopBraid Composer.

CCM (Cameo Concept Modeler)

At the moment, FIBO cannot be loaded online into CCM.

Using FIBO offline

Many semantic tools can read OWL files that have been downloaded to local storage. Here are the instructions for doing that with the most common tools.

NOTE: FIBO imports resources from outside of FIBO, including SKOS, LCC and others. These are not included in the FIBO download, and must be loaded dynamically from the web. Therefore, even when loading FIBO in "offline" mode, you must have an active internet connection.

Protégé

Please use Protégé version 5.2 or higher.

Protégé prefers to manage files in RDF/XML format. Follow these instructions to download a zip file of FIBO in RDF/XML and load it into Protégé.

  1. Download a zipped file of FIBO in RDF/XML format from spec.edmcouncil.org. You'll need to specify which maturity level of FIBO you want; the Development version or the Production version.
  2. Unzip this to your hard drive. This creates a single directory called fibo, with all of the FIBO ontologies in subdirectories.
  3. Open Protégé.
  4. Select File>Open, and navigate to the folder where you unzipped FIBO. Navigate (three levels down; typically ontology/master/latest or ontology/master/2019Q2) to LoadFIBODev.rdf or LoadFiboProd.rdf (development and production, respectively), and select it.
  5. Protege will open all relevant FIBO files.

TopBraid Composer

TopBraid Composer prefers to manage files in RDF Turtle format. Follow these instructions to download a zip file of FIBO in Turtle and load it into TopBraid:

  1. Download a zipped file of FIBO in Turtle from spec.edmcouncil.org. You'll need to specify which maturity level of FIBO you want; the Development version or the Production version.
  2. Unzip this on your hard drive. This creates a single directory called fibo, with all of the FIBO ontologies in subdirectories.
  3. Open TopBraid Composer. Create a project (File>New>Project) called spec.edmcouncil.org.
  4. Drag and drop the fibo directory from your filesystem onto the project spec.edmcouncil.org in the TopBraid Composer Navigator pane. If prompted, select "Copy files"
  5. Navigate through the fibo directory in the Navigator pane to fibo/ontology/master/latest/LoadFIBODev.ttl or fibo/ontology/master/2019Q2/LoadFIBOProd.ttl (development and production, respectively) Double-click on LoadFIBO.ttl to open all FIBO files.

No Magic CCM Cameo Concept Modeler

CCM (Cameo Concept Modeler) imports both the RDF/XML and Turtle TTL formats, and pulls the ontology into a 'UML-like' model of the ontology, which is then ready to use.

  1. Download a zipped file of FIBO in RDF/XML format from spec.edmcouncil.org. You'll need to specify which maturity level of FIBO you want; the Development version or the Production version.
  2. Unzip this to your hard drive. This creates a single directory called fibo, with all of the FIBO ontologies in subdirectories.
  3. Open MagicDraw with the CCM plugin installed.
  4. In MagicDraw, create a new project: File/New Project. Select "Concept Modeling Project" as the project type. Select a name for the project and click "OK"
  5. Set the catalog file; from the Options menu, select Project. Navigate in the pop-up to General/Concept Modeling find the entry for "OWL Import Catalog", and click the three dots at the right to open a file navigator. Navigate to where you unzipped FIBO, Navigate down the tree until you can select the file catalog-v001.xml.
  6. Set the Project URI Construction Strategy to "303 URI": from the Options menu, select Project. Navigate in the pop-up to General/Concept Modeling, find the entry for "URI Construction Strategy", click the drop down menu at the right and select "303 URI".
  7. Import the FIBO Master: File/Import From/OWL Ontology File, and navigate to the folder where you unzipped FIBO. Navigate to LoadFIBODev.rdf, or LoadFIBOProd.ttl, depending on your preference, and import it.
  8. MagicDraw will import all of FIBO ontologies contained in the LoadFIBO file.
Note: FIBO makes reference to LCC (Languages, Countries and Codes) from the OMG, which includes information about these things from other standards bodies. When you load FIBO, all these tools will find these files via follow-your-nose. If you cannot reach these files on the omg.org web servers for any reason, you will see load errors for the files it couldn't find. These can be safely ignored, but you will not have details of the Languages, Countries and Codes available in your model.

Stardog

Stardog is a semantic data system that accomodates both RDF and OWL. Follow these steps to load FIBO into Stardog:
  1. Download the RDF/XML zip of the Development version or the Production version of FIBO.
  2. Open the zip and extract the directory fibo/ontology/master/latest which will be the subject of the remaining instructions
  3. Delete the files matching About*.rdf. You'll delete about 70 files
  4. Delete the files matching catalog*.xml. You'll delete about 12 files
  5. Open a grep tool (e.g. grepWin or similar) and carry out the following replace operation on the directory:
  6. File names matching: *.rdf
    Search string: fibo/ontology/master/latest/
    Replace string: fibo/ontology/
    
    It should make replacements in approx. 320 files.
  7. Zip up the directory e.g. as FIBO.zip.
  8. Use the following command line for database dbX (you would normally need to add username and passwd parameters):
    stardog data add dbX FIBO.zip

Adaptive

To load FIBO into Adaptive (version 8.1 or later), follow the first six steps under "Stardog" above. Note that even if you use the Development version Adaptive will indicate the status of each item (Release, Provisional or Informative). Then do the following:
  1. Add the file manifest.mf (from the Adaptive installation (a3/installation/FIBO/manifest.mf) into the zip
  2. In the Adaptive web interface select OWL Zip File Import from the Integrator page; select the file FIBO.zip, check the last item on the page Ignore Unresolved Hrefs, and Execute the import
  3. Repeat the previous step to re-import the file and resolve the references (there will still be some unresolved external references unless the Languages Countries and Codes ontology has been previously loaded. This is provided as LCC.zip in the Adaptive installation and is loaded in the same way)

Namespace prefixes in FIBO

XML, RDF and SPARQL all have mechanisms for recording shorthand versions of the long IRI names. FIBO has a standard set of prefixes for the resources in FIBO. These are currently incomplete, but will be completed shortly.

As an assist for developers using FIBO, we provide the namespace prefixes in many formats, prefixes.ttl (Turtle), prefixes.sq (SPARLQ), and prefixes.csv.