{"id":24736372,"url":"https://github.com/engineering-research-and-development/semantic-asset-registry","last_synced_at":"2025-08-28T08:16:27.065Z","repository":{"id":49963657,"uuid":"123901086","full_name":"Engineering-Research-and-Development/semantic-asset-registry","owner":"Engineering-Research-and-Development","description":"Semantic Asset Registry to manipulate RDF ontologies","archived":false,"fork":false,"pushed_at":"2021-06-07T18:04:20.000Z","size":18240,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-27T21:24:45.817Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Engineering-Research-and-Development.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-03-05T10:08:27.000Z","updated_at":"2019-09-03T12:05:37.000Z","dependencies_parsed_at":"2022-09-20T21:50:38.746Z","dependency_job_id":null,"html_url":"https://github.com/Engineering-Research-and-Development/semantic-asset-registry","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Engineering-Research-and-Development%2Fsemantic-asset-registry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Engineering-Research-and-Development%2Fsemantic-asset-registry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Engineering-Research-and-Development%2Fsemantic-asset-registry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Engineering-Research-and-Development%2Fsemantic-asset-registry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Engineering-Research-and-Development","download_url":"https://codeload.github.com/Engineering-Research-and-Development/semantic-asset-registry/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244992558,"owners_count":20543832,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-27T21:24:59.824Z","updated_at":"2025-03-22T17:22:58.853Z","avatar_url":"https://github.com/Engineering-Research-and-Development.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/BEinCPPS/asset-registry-for-cpps.svg?branch=master)](https://travis-ci.org/BEinCPPS/asset-registry-for-cpps)\n\n# Semantic Asset Registry (SAR)\n\n## Description of the component\n\nThe **Semantic Asset Registry (SAR)** is a web-based, integrated platform for the management of Virtualized Asset based on [asset-registry-for-cpps](https://github.com/BEinCPPS/asset-registry-for-cpps) project. This Specific Enabler is targeted to the business user, who is not required to have IT expertise, nor an in-depth knowledge of ontology-related concepts and technologies.\n\nSemantic Asset Registry is based on several open source components, covering different functional areas; on top of these, it adds a rich layer of web-based, custom front-end functionalities which integrates low-level services into a unified, user-friendly experience.\n\nSemantic Asset Registry is delivered as a module that allows the user to manipulate ontologies adding classes and templates and create, manipulate and delete Assets.\n\nGI\n\nThis Semantic Asset Registry release contains two modules, **Semantic Asset Registry** and **Semantic Asset Registry API**.\n \n### Semantic Asset Registry\n\nSemantic Asset Registry is a web application that exploits cam-service APIs. SAR allows user to create, manipulate and delete Assets using a web interface.\n\n### Semantic Asset Registry API\n\nSemantic Asset Registry API component exposes its own public, proprietary REST-based web API. By means of API calls, the reference ontology, the asset repository and the service registry can be queried by external applications. The usual CRUD operations will be allowed on Class, Assets, Domains and Attributes.\n\t\n## Developer environment\n\nThis procedure assumes that you have [Apache Tomcat](https://tomcat.apache.org/download-80.cgi) (version \u003e= **7**)\nand [RDF4J 2.0M2](http://rdf4j.org/download/) installed in your environment.\n\nBefore start using application you must have RDF4J up and running, we also need to create a new repository in it. \nWe will refer to this repository as ```\u003cEXAMPLE_REPO\u003e```.\n\n• Open a web browser and navigate to your rdf4j:\n ```\n \u003chost\u003e:\u003cport\u003e/rdf4j-workbench/\n ```\n\n• Click on new repository, on top left, and fill id and title.\u003cbr/\u003e\n• Click next, select persistence mode and finally click finish.\u003cbr/\u003e\n\nIf creation is successful the user will be redirected to repository summary.\n\n\n+ **A.** Your project structure is as follows: \u003cbr/\u003e\n\n```\n\u003cyour_project_dir\u003e\n   |__ cam\n   |__ cam-service\n```\n\n+ **B.** Install Semantic Asset Registry: \u003cbr/\u003e\n\n1.\tOpen a terminal window and go to the root folder of SAR project .\n2.\tType the command: mvn package.\n3.\tCopy the war in ```target/``` to ```\u003cPATH_TO_TOMCAT\u003e/webapps```.\n4.\tBrowse to ```\u003cYOUR_HOST\u003e:\u003cYOUR_PORT\u003e/SAR ``` to start using application.\n\n+ **C.** Install Semantic Asset Registry API:\u003cbr/\u003e\n```bash\n$ cd cam-service\n$ mvn package -P prod\n```\n\nTo skip Unit Tests use ``-DskipTests`` maven parameter.\n\n+ **D.** Integration Test (This test uses **Sesame Repository in Memory** and **Apache Tomcat 7 Maven embedded**):\n\n```bash\n$ cd cam-service\n$ mvn package\n$ mvn verify \n```\n\nThe default port in order to use Semantic Asset Registry API with Sesame repo is 8080, feel free to change this parameter inside the file pom.xml.\n\nChange sesame repository properties with your sesame installation: \n\n```bash\nsesame.url\nsesame.repository (\u003cEXAMPLE_REPO\u003e)\nsesame.namespace\n```\n\nCopy the SARAPI.war into a Tomcat installation.\n\n```bash\n$ cp ./cam-service/target/sarAPI.war ./apache-tomcat-8.0.33/webapps\n```\n\n## Authentication\nIn the latest version of the project, authentication is **mandatory** for every type of environment.\u003cbr/\u003e\nSemantic Asset Registry Project uses [OAuth2](https://oauth.net/2/) by means of the *Fiware enabler* **[Identity Management - KeyRock](https://catalogue.fiware.org/enablers/identity-management-keyrock)** for authentication and authorization.\u003cbr/\u003e\n**Identity Manager - KeyRock** could be installed with different possibilities as explained in the official [Github page](https://github.com/ging/fiware-idm). \u003cbr/\u003e\n\n### Basic configuration\nThe **fastest way** to have a working idM instance in your environment, is using the *Docker image*, following this [guide](https://github.com/ging/fiware-idm/blob/master/extras/docker/README.md).\n\u003eIn particular way, follow the section '*Run the container from the last release in Docker Hub*'.\n\n#### IdM OAuth2 configuration\n**1**. Follow this [link](http://localhost:8000) to access to idM and authenticate with user and password of your installation (`idm/idm`in Docker image).\u003cbr/\u003e\nin **Home** page, in **Applications** section, **Register** a new application with these data (*):\n\n| Data        | Value                                           | \n| ------------- |:---------------------------------------------:| \n| Name\t\t| Semantic Asset Registry (SAR) \t                | \n| URL           | http://localhost:8080/CAM                     | \n| Callback URL  | http://localhost:8080/CAM/oauth_callback.html |\n\n**2**. Click next to register data.\u003cbr/\u003e\n**3**. In **Applications** section open SAR Application and in **OAuth2 Credentials** copy your **Client ID**.\n\u003e(*) SAR local installation on Tomcat standard port.\n\n#### SAR OAuth2 configuration\n**1**. In **cam** folder edit the following properties in [pom.xml](https://github.com/is3labengrd/semantic-asset-registry/blob/master/cam/pom.xml):\n\n```bash\n\u003cauthentication.service\u003eoAuth\u003c/authentication.service\u003e\n\u003chorizon.url\u003ehttp://localhost:8000\u003c/horizon.url\u003e\n\u003cclient.id\u003eyour Client ID\u003c/client.id\u003e\n```\n**2**. From the same folder launch the command `mvn package`\n\n**3**. In **cam-service** folder edit the following properties in [pom.xml](https://github.com/is3labengrd/semantic-asset-registry/blob/master/cam-service/pom.xml):\n \n```bash\n\u003ckeyrock.authentication.service\u003eOAUTH2\u003c/keyrock.authentication.service\u003e\n\u003chorizon.url\u003ehttp://localhost:8000\u003c/horizon.url\u003e\n\u003ckeystone.url\u003ehttp://localhost:5000\u003c/keystone.url\u003e\n\u003ckeystone.admin.user\u003eIDM_USER\u003c/keystone.admin.user\u003e\n\u003ckeystone.admin.password\u003eIDM_PWD\u003c/keystone.admin.password\u003e \n```\n\u003eYou can edit only the properties in `prod` profile.\n\n**4**. From the same folder launch the command `mvn package -P prod`\n\n**5**. Copy the `SAR.war` and `SARAPI.war` in your Tomcat webapps installation\n```bash\n$ cp ./cam-service/target/SARAPI.war ./apache-tomcat-8.0.33/webapps \u0026\u0026 ./cam/target/sar.war ./apache-tomcat-8.0.33/webapps\n```\n\n\n**Note**: This project uses [Travis-Ci](https://travis-ci.org/) for continuous integration.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fengineering-research-and-development%2Fsemantic-asset-registry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fengineering-research-and-development%2Fsemantic-asset-registry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fengineering-research-and-development%2Fsemantic-asset-registry/lists"}