Table of Contents | ||
---|---|---|
|
Please click start to get a first introduction per video:
...
Welcome to the comprehensive setup and usage guide for ENAPSO together Free, specifically tailored for broadcasters. This document provides step-by-step instructions to get started with the Docker platform, from installation to managing your data with ENAPSO together free services.
Architecture Introduction
Here please introduce a diagram that shows the data flow of what we are doing below.
Model/Data => Knowledge Graph (SPARQL) => CRUD Templates (REST) => Feel Happy!
...
Prerequisites
Before you begin, ensure the following requirements are met:
Docker Installed: Docker must be installed and running on your machine to facilitate the deployment of applications within containers. For optimal performance and compatibility, ensure that your Docker installation is version 20.10 or above. To check your Docker version, open your command prompt or terminal and enter:
Code Block language bash docker --version
Internet Connection: Necessary to pull the Docker image from the repository.
Credentials: To request your username and access token for the ENAPSO together free platform powered by Innotrade, send an email to support@innotrade.de with the subject line "Request for Credentials." Optionally, you can include a message similar to the following as inspiration:
Info |
---|
Dear Support Team, I am interested in accessing the ENAPSO together free platform powered by Innotrade and would like to request a username and access token. Please let me know if additional information is required. Thank you! Best regards, |
Docker Setup
Docker Login
Open your command prompt or terminal. Log in to the Docker registry to access the ENAPSO together image using the following command:
Code Block | ||
---|---|---|
| ||
docker login registry.innotrade.com -u [username] -p [Personal Access Token] |
Replace [username]
and [Personal Access Token]
with your credentials.
Pull Docker Image
Still, in your command prompt or terminal, pull the latest version of ENAPSO together free:
Note |
---|
When running the pull command, please note that if an image is already running and you pull the latest one, it will overwrite existing data in the knowledge graph repository, resetting it to the default state. To avoid losing your data, follow the guidelines on the provided /wiki/spaces/ENAPSODOCS/pages/2239528974 to create a backup before pulling the latest image, and then restore your data afterward. |
Here we already need to add that a backup is required, since a new pull overwrites existing data!
Code Block | ||
---|---|---|
| ||
docker pull registry.innotrade.com/innotrade/enapso-together-free |
Run Docker Container
Now, run the Docker container to deploy the platform locally using this command:
Code Block | ||
---|---|---|
| ||
docker run -p 80:80 registry.innotrade.com/innotrade/enapso-together-free |
This maps the container's port 80 to your local machine's port 80.
Resolving Port Conflicts
If you encounter a port conflict when attempting to run the Docker container for the ENAPSO together Free platform, you have an option to resolve it and access the service:
Change the Host Port
If port 80 is already in use on your machine, you can map the container's internal port (80) to a different port on your host. For example, if you choose to use port 8080 on your host, you can modify your Docker run command like this:
Code Block |
---|
docker run -p 8080:80 registry.innotrade.com/innotrade/enapso-together-free |
After running the Docker command with the new port setting, you'll need to modify how you access the service through your web browser. Simply add :8080
(or whatever port number you chose) right after localhost
in the URL. For example, to access the service, you would use:
Code Block |
---|
http://localhost:8080/enapso-dev/view-management-service/api-docs/ |
This tells your browser to connect to the service at the new port you've set up.
Run Docker Container with Triplestore UI Access
To run the ENAPSO Together Free platform and enable access to the triplestore UI for enhanced monitoring and management, use the following Docker command:
Code Block | ||
---|---|---|
| ||
docker run -p 80:80 -p 3030:3030 registry.innotrade.com/innotrade/enapso-together-free |
This command maps the container's port 80 to your local machine's port 80 for the main service, and port 3030 to your local machine's port 3030 for accessing the Triplestore UI. After executing this command, open your web browser and navigate to http://localhost:3030
. This URL will lead you directly to the Triplestore UI, where you can monitor the repositories or perform various administrative operations. This setup ensures comprehensive access to both the platform's services and its user interface.
Verify Docker Image
To confirm that the Docker image is running correctly on your machine, use the following command in your command prompt or terminal:
Code Block | ||
---|---|---|
| ||
docker ps |
This command will list all running containers. Please verify that the ENAPSO together free container appears in the list, indicating it is active and running.
...
Swagger Documentation Access
Access the Swagger documentation for ENAPSO together free services through your web browser:
Service Name | Description | Access Link |
---|---|---|
View Management Service | API documentation for View Management | |
GraphDB Management Service | API documentation for GraphDB Management |
Uploading Your Ontology
This guide outlines the steps to prepare and upload the EBUCorePlus
ontology to your graph database. Follow these instructions to ensure your graph database is properly set up to manage and utilize ontology data, from downloading the necessary files to configuring the upload through the GraphDB Management Service's endpoint.
Access Swagger Documentation: Navigate to the GraphDB Management Service documentation in your web browser.
Prepare Your Ontology File: Ensure the
ebucoreplus
ontology file is saved on your local machine. You can obtain the EBUCorePlus ontology from the EBU GitHub repository. Once you open the link, you will see the content of the ontology file displayed. To download it, locate theDownload
icon on the upper right side of the page and click on it. This will automatically save the file to the default download folder on your local machine.Clone EBUCorePlus Repository: If you want to clone the entire repository, ensure that Git is installed on your computer. You can check this by running
git --version
in your terminal. If Git is not installed, you will need to download and install it from the official Git website. Open your command prompt (CMD), and move to the directory where you want the repository to be cloned. You can do this by running the commandcd path/to/your/directory
, replacingpath/to/your/directory
with the path to the desired directory on your local machine. Once you're in the desired directory, run the following command to clone the repository:Code Block language bash git clone https://github.com/ebu/ebucoreplus.git
This will clone the entire ebucoreplus repository to your local machine.
Upload the Ontology: Utilize the
upload-ontology-from-file
endpoint to upload the ontology to the graph database repository.Click the
Try it out
button.Fill out the following fields:
filename: Select and upload your
ebucoreplus
ontology file.format: Specify the format as
text/turtle
.baseIRI (Optional): Enter the base IRI for your ontology such as
http://www.ebu.ch/metadata/ontologies/ebucoreplus#
. Using this base IRI helps ensure consistent referencing within your ontology. If you need to use a specific or different IRI, replace the default with your custom IRI. Enter the base IRI for your ontology.context (Optional): Define the context (also known as a named graph) for your ontology within the graph database repository. The context is an identifier that organizes data within the graph database, such as
http://www.ebu.ch/metadata/ontologies/ebucoreplus
. If the context field is left empty, behavior varies by triplestore:In Fuseki, data will be added to the default context
http://ont.enapso.com/default
.In GraphDB by Ontotext, data will be added to the graph database's default context, as described in their documentation.
Execute the upload by clicking the
Execute
button:Upon execution, the response will indicate that the ontology has been successfully uploaded. You will see a message or a status code in the Swagger interface confirming the successful upload.
If you receive both HTTP
200
and HTTP201
responses for similar requests, it means:HTTP
200
is returned when you upload data that already exists in the graph database repository, indicating a successful overwrite.HTTP
201
is returned when the upload adds new data to the graph database repository.
Upload Demo Data
Here we need to add the upload of an ontology via the enapso-cli tool!
This guide outlines the steps to upload the demo data for the EditorialObject
to your graph database. Follow these instructions to effectively populate your graph databases with instances of the EditorialObject
within the EBUCorePlus
ontology, using either the GraphDB Management Service's provided API endpoints or the enapso-graphdb-cli
tool, which are explained below. Additionally, you can find the necessary TTL demo data here.
View file | ||
---|---|---|
|
Note |
---|
When running the pull command, please note that if an image is already running and you pull the latest one, it will overwrite existing data in the knowledge graph repository, resetting it to the default state. To avoid losing your data, follow the guidelines on the provided /wiki/spaces/ENAPSODOCS/pages/2239528974 to create a backup before pulling the latest image, and then restore your data afterward. |
Caution! Re-Pulling Docker Images leads to data loss!
Upload Demo Data via enapso-graphdb-cli tool
Prerequisites
Ensure Node.js is installed on your machine. If not, install it from the Node.js official website. This installation includes npm (Node Package Manager), which manages Node packages.
After installation, verify that Node.js and npm are successfully installed by doing the following:
Open a command prompt or terminal.
Run the command
node -v
and press Enter. This will display the version of Node.js if it is installed.Run the command
npm -v
and press Enter. This will display the version of npm if it is installed.
For using the ENAPSO tools, it's important to have at least Node.js version 10 or higher, as earlier versions might not support some functionalities of the tools.
If you need to update Node.js to the latest version, you can download it from the official Node.js website and install it on your system. It will automatically replace the older version with the new one.
Installation
Install the enapso-graphdb-cli tool globally using npm:
...
Table of Contents | ||
---|---|---|
|
Please click start to get a first introduction per video:
...
Welcome to the comprehensive setup and usage guide for ENAPSO together Free, specifically tailored for broadcasters. This document provides step-by-step instructions to get started with the Docker platform, from installation to managing your data with ENAPSO together free services.
Architecture Introduction
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Prerequisites
Before you begin, ensure the following requirements are met:
Docker Installed: Docker must be installed and running on your machine to facilitate the deployment of applications within containers. For optimal performance and compatibility, ensure that your Docker installation is version 20.10 or above. To check your Docker version, open your command prompt or terminal and enter:
Code Block language bash docker --version
Internet Connection: Necessary to pull the Docker image from the repository.
Credentials: To request your username and access token for the ENAPSO together free platform powered by Innotrade, send an email to support@innotrade.de with the subject line "Request for Credentials." Optionally, you can include a message similar to the following as inspiration:
Info |
---|
Dear Support Team, I am interested in accessing the ENAPSO together free platform powered by Innotrade and would like to request a username and access token. Please let me know if additional information is required. Thank you! Best regards, |
Docker Setup
Docker Login
Open your command prompt or terminal. Log in to the Docker registry to access the ENAPSO together image using the following command:
Code Block | ||
---|---|---|
| ||
docker login registry.innotrade.com -u [username] -p [Personal Access Token] |
Replace [username]
and [Personal Access Token]
with your credentials.
Pull Docker Image
Still, in your command prompt or terminal, pull the latest version of ENAPSO together free:
Note |
---|
When running the pull command, please note that if an image is already running and you pull the latest one, it will overwrite existing data in the knowledge graph repository, resetting it to the default state. To avoid losing your data, follow the guidelines on the provided Confluence page to create a backup before pulling the latest image, and then restore your data afterward. |
Code Block | ||
---|---|---|
| ||
docker pull registry.innotrade.com/innotrade/enapso-together-free |
Run Docker Container
Now, run the Docker container to deploy the platform locally using this command:
Code Block | ||
---|---|---|
| ||
docker run -p 80:80 registry.innotrade.com/innotrade/enapso-together-free |
This maps the container's port 80 to your local machine's port 80.
Expand | ||||
---|---|---|---|---|
| ||||
If you encounter a port conflict when attempting to run the Docker container for the ENAPSO together Free platform, you have the following option to resolve it and access the service. Change the Host PortIf port 80 is already in use on your machine, you can map the container's internal port (80) to a different port on your host. For example, if you choose to use port 8080 on your host, you can modify your Docker run command like this:
After running the Docker command with the new port setting, you'll need to modify how you access the service through your web browser. Simply add
This tells your browser to connect to the service at the new port you've set up. |
Expand | |||||
---|---|---|---|---|---|
| |||||
To run the ENAPSO together free platform and enable access to the triplestore UI for enhanced monitoring and management, use the following Docker command:
This command maps the container's port 80 to your local machine's port 80 for the main service, and port 3030 to your local machine's port 3030 for accessing the Triplestore UI. After executing this command, open your web browser and navigate to |
Verify Docker Image
To confirm that the Docker image is running correctly on your machine, use the following command in your command prompt or terminal:
Code Block | ||
---|---|---|
| ||
docker ps |
This command will list all running containers. Please verify that the ENAPSO together free container appears in the list, indicating it is active and running.
...
Swagger Documentation Access
Access the Swagger documentation for ENAPSO together free services through your web browser:
Service Name | Description | Access Link |
---|---|---|
View Management Service | API documentation for View Management | |
GraphDB Management Service | API documentation for GraphDB Management |
Quick Start Guide to Setting Up ENAPSO Demo
To perform the following tasks, you need to clone the repository and run the setup script:
Upload the ontology file, for detailed instructions and a step-by-step process, follow the link: Upload the Ontology File.
Upload the demo data file, for detailed instructions and a step-by-step process, follow the link: Upload the Demo Data.
Create CRUD templates for the
EditorialObject
class, for detailed instructions and a step-by-step process, follow the link: Create CRUD Templates.Set up REST routes for the CRUD operations, for detailed instructions and a step-by-step process, follow the link: Set up REST Routes.
Follow these steps to set up the ENAPSO demo on your local machine.
Open a new terminal and clone the repository to your local machine by running the following command:
Code Block language bash git clone https://github.com/innotrade/enapso-demo.git
This will download all the necessary files and scripts to set up the ENAPSO demo.
Navigate to the cloned repository directory
Code Block language bash cd enapso-demo
Run the appropriate setup script for your operating system.
For macOS and Linux
Code Block language bash cd scripts chmod +x setup_enapso_media_mac.sh ./setup_enapso_media_mac.sh
For Windows
Code Block language bash cd scripts setup_enapso_media_windows.bat
The setup script will perform the following tasks:
Upload the ontology file (
ontologies/ebucoreplus.owl
)Upload the demo data file (
demo-data/editorialObject_demoData.ttl
)Create CRUD templates for the
EditorialObject
classSet up REST routes for the CRUD operations
Testing the Setup
To verify that the ontology and data have been successfully uploaded, CRUD templates created, and routes established, open your terminal, and run the following command to read the instances of the EditorialObject
class:
Code Block |
---|
curl -X GET http://localhost/enapso-dev/view-management/v1/editorialObject |
Further HTTP method
For more details on other HTTP methods, including examples for each method, follow the link: Detailed CRUD Operation Examples
Uploading Your Ontology
This guide outlines the steps to prepare and upload the EBUCorePlus
ontology to your graph database. For details, open the expanders.
Expand | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
Follow these instructions to ensure your graph database is properly set up to manage and utilize ontology data, from downloading the necessary files to configuring the upload through the GraphDB Management Service's endpoint.
Upload EBUCoreplus Ontology via enapso-graphdb-cli toolPrerequisitesEnsure Node.js is installed on your machine. If not, install it from the Node.js official website. This installation includes npm (Node Package Manager), which manages Node packages. After installation, verify that Node.js and npm are successfully installed by doing the following:
For using the ENAPSO tools, it's important to have at least Node.js version 10 or higher, as earlier versions might not support some functionalities of the tools. If you need to update Node.js to the latest version, you can download it from the official Node.js website and install it on your system. It will automatically replace the older version with the new one. InstallationInstall the enapso-graphdb-cli tool globally using npm:
Uploading EBUCoreplus OntologyDataOpen the terminal, and navigate to the directory where the
Trigger CacheOpen the terminal and run the following
Upload EBUCoreplus Ontology via GraphDB Management Service's provided API
|
Upload Demo Data
This guide outlines the steps to upload the demo data for the EditorialObject
to your graph database. For details, open the expanders.
Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Follow these instructions to effectively populate your graph databases with instances of the
Upload Demo Data via enapso-graphdb-cli toolPrerequisitesRefer to the prerequisite information above and follow the same procedure. InstallationRefer to the installation information above and follow the same procedure. Uploading Demo DataOpen the terminal, and navigate to the directory where the
Upload Demo Data via GraphDB Management Service's provided API
|
...
|
CRUD Template Management
This section setion provides detailed instructions on how to generate CRUD (create
, read
, update
, delete
) templates for specific classes within your ontology using the View Management API. For details, open the expanders.
Expand | ||
---|---|---|
| ||
By following these steps, you can automate the creation of SPARQL templates that facilitate the management of instances of any specified class, such as the
|
Executing CRUD Operations
After generating your CRUD templates, you'll need to use them to manage data. This section explains how to execute the read
, create
, update
, and delete
templates for the EditorialObject
class. For details, open the expanders.
Expand | ||||||
---|---|---|---|---|---|---|
| ||||||
Executing the Read TemplateTo view existing instances of the
Creating a New InstanceTo create a new instance of the
Verifying the Creation of a New InstanceAfter creating a new instance of the
You can verify the changes made to the graph database re-executing the read template after performing CRUD operations provides an option to transparently. Updating an InstanceTo update an existing instance within your graph database, you first need to know which instance you're targeting. This is where the
Deleting an InstanceTo delete an instance from your ontology, you need to specify which instance to remove by using its IRI (Internationalized Resource Identifier). The IRI serves as a unique identifier for each instance and can be obtained by reading the instance data beforehand. Once you have the IRI, use it to indicate which instance you wish to delete.:
|
Conclusion
Congratulations on successfully setting up and starting to use the ENAPSO together Free platform for broadcasters. You've learned how to upload an ontology and manage data through CRUD operations, which are crucial for effective data handling within the platform.
As you continue to work with ENAPSO, explore further features and functionalities to enhance your data management capabilities. Remember, the documentation and support are there to help you maximize the platform's potential.
...