PHPackages                             openeuropa/rdf\_skos - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. openeuropa/rdf\_skos

AbandonedArchivedDrupal-module

openeuropa/rdf\_skos
====================

Drupal module that contains the RDF SKOS entity types.

1.2.2(11mo ago)0152.3k↓37.8%4[3 PRs](https://github.com/openeuropa/rdf_skos/pulls)6EUPL-1.2PHPPHP &gt;=8.1

Since Apr 25Pushed 9mo ago18 watchersCompare

[ Source](https://github.com/openeuropa/rdf_skos)[ Packagist](https://packagist.org/packages/openeuropa/rdf_skos)[ RSS](/packages/openeuropa-rdf-skos/feed)WikiDiscussions 1.x Synced 1mo ago

READMEChangelog (10)Dependencies (10)Versions (46)Used By (6)

⚠️ This repository is archived
==============================

[](#warning-this-repository-is-archived)

Development has moved to [drupal.org](https://www.drupal.org/project/rdf_skos).

RDF SKOS
========

[](#rdf-skos)

This module provides a dedicated entity type for SKOS modeling. The module requires access to a [triplestore database](https://en.wikipedia.org/wiki/Triplestore), such as [Virtuoso 7](https://github.com/openlink/virtuoso-opensource).

Upgrade from 0.11.0 to 1.0.0-alpha1
-----------------------------------

[](#upgrade-from-0110-to-100-alpha1)

On `1.0.0-alpha1`, the `rdf_entity` module dependency has been removed and instead the `sparql_entity_storage` module has been introduced (see the [rdf\_entity module's Readme](https://github.com/ec-europa/rdf_entity#updating-from-10-alpha16-to-alpha17) for more information).

As suggested by the `rdf_entity` module itself, the following steps can be taken in order to update `rdf_skos` in production:

The update process needs to be split in three deployments, which will likely result into separate site releases.

**First deployment**

1. **Before you update `rdf_skos` to `1.0.0-alpha1`**, require an empty version of the `drupal/sparql_entity_storage` module: ```
    $ composer require drupal/sparql_entity_storage:dev-empty-module

    ```
2. Deploy to production.
3. Enable the module (this can be part of the deployment procedure above, depending on your setup).

At this point your site's `composer.json` should look like this:

```
{
    ...
    "openeuropa/rdf_skos": "~0.11.0",
    "drupal/sparql_entity_storage": "dev-empty-module",
    ...
}

```

**Second deployment**

1. Remove the empty `drupal/sparql_entity_storage` module requirement from your `composer.json`.
2. Require `drupal/rdf_entity` with the new `1.0-alpha21` version and `openeuropa/rdf_skos` with the new `1.0.0-alpha1` version.
3. Deploy to production.
4. Uninstall the `drupal/rdf_entity` module (this can be part of the deployment procedure above, depending on your setup).

At this point your site's `composer.json` should look like this:

```
{
    ...
    "openeuropa/rdf_skos": "~1.0.0-alpha1",
    "drupal/rdf_entity": "~1.0-alpha21",
    ...
}

```

**Third deployment**

1. Remove the `drupal/rdf_entity` dependency.
2. Deploy to production.

At this point your site's `composer.json` should look like this:

```
{
    ...
    "openeuropa/rdf_skos": "~1.0.0-alpha1",
    ...
}

```

After these steps your site should have the latest version `drupal/rdf_skos` module using `drupal/sparql_entity_storage`and the `drupal/rdf_entity` module should no longer be in your codebase.

Technical details and constraints
---------------------------------

[](#technical-details-and-constraints)

The module allows loading SKOS concept schemes and concepts as entities in Drupal. The entities will be loaded from the graph IRIs specified in the related configuration.

Since all the graphs are passed to the methods for loading entities, this enforces the limitation of having unique IRIs (IDs in Drupalese) for the SKOS entities present in all the graphs.

Development setup
-----------------

[](#development-setup)

### Initial setup

[](#initial-setup)

You can build the test site by running the following steps.

- Install Virtuoso. The easiest way to do this is by using the [Triple store](https://git.fpfis.tech.ec.europa.eu/fpfis/triple-store) Docker container which also pre-imports the main Europa vocabularies.
- Install all the composer dependencies:

```
$ composer install

```

- Customize build settings by copying `runner.yml.dist` to `runner.yml` and changing relevant values, like your database credentials.
- Setup test site by running:

```
$ ./vendor/bin/run drupal:site-setup

```

This will symlink the module in the proper directory within the test site and perform token substitution in test configuration files such as `behat.yml.dist`.

**Please note:** project files and directories are symlinked within the test site by using the [OpenEuropa Task Runner's Drupal project symlink](https://github.com/openeuropa/task-runner-drupal-project-symlink) command.

If you add a new file or directory in the root of the project, you need to re-run `drupal:site-setup` in order to make sure they are be correctly symlinked.

If you don't want to re-run a full site setup for that, you can simply run:

```
$ ./vendor/bin/run drupal:symlink-project

```

- Install test site by running:

```
$ ./vendor/bin/run drupal:site-install

```

Your test site will be available at `./build`.

### Using Docker Compose

[](#using-docker-compose)

Alternatively you can build a test site using Docker and Docker-compose with the provided configuration.

Requirements:

- [Docker](https://www.docker.com/get-docker)
- [Docker-compose](https://docs.docker.com/compose/)

You can make any alterations you need for your local Docker setup. However, the defaults should be enough to set the project up.

Run:

```
$ docker-compose up -d

```

Then:

```
$ docker-compose exec web composer install
$ docker-compose exec web ./vendor/bin/run drupal:site-install

```

Your test site will be available at .

To run the grumphp test:

```
$ docker-compose exec web ./vendor/bin/grumphp run

```

To run the phpunit test:

```
$ docker-compose exec web ./vendor/bin/phpunit

```

To run the behat test:

```
$ docker-compose exec web ./vendor/bin/behat

```

###  Health Score

52

—

FairBetter than 96% of packages

Maintenance55

Moderate activity, may be stable

Popularity33

Limited adoption so far

Community30

Small or concentrated contributor base

Maturity81

Battle-tested with a long release history

 Bus Factor3

3 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~71 days

Recently: every ~48 days

Total

33

Last Release

278d ago

Major Versions

0.12.0 → 1.0.0-alpha12021-02-03

0.x-dev → 1.0.0-alpha22021-03-22

PHP version history (6 changes)0.1.0PHP ^7.1

0.6.0PHP &gt;=7.2

1.0.0-alpha3PHP &gt;=7.3

1.0.0-alpha6PHP &gt;=7.4

1.0.0-alpha9PHP &gt;=8.0

1.0.0PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/d3b1f4079f9a82f6dd88fe6577d1256b4ecbbccbcd4a4ec9bea7c2fd6f72b99a?d=identicon)[DIGIT-CORE](/maintainers/DIGIT-CORE)

---

Top Contributors

[![upchuk](https://avatars.githubusercontent.com/u/5848933?v=4)](https://github.com/upchuk "upchuk (72 commits)")[![brummbar](https://avatars.githubusercontent.com/u/8488617?v=4)](https://github.com/brummbar "brummbar (46 commits)")[![imanoleguskiza](https://avatars.githubusercontent.com/u/14978592?v=4)](https://github.com/imanoleguskiza "imanoleguskiza (43 commits)")[![sergepavle](https://avatars.githubusercontent.com/u/9432036?v=4)](https://github.com/sergepavle "sergepavle (40 commits)")[![nagyad](https://avatars.githubusercontent.com/u/22004498?v=4)](https://github.com/nagyad "nagyad (37 commits)")[![22Alexandra](https://avatars.githubusercontent.com/u/22908988?v=4)](https://github.com/22Alexandra "22Alexandra (16 commits)")[![ademarco](https://avatars.githubusercontent.com/u/153362?v=4)](https://github.com/ademarco "ademarco (14 commits)")[![voidtek](https://avatars.githubusercontent.com/u/186827?v=4)](https://github.com/voidtek "voidtek (9 commits)")[![yenyasinn](https://avatars.githubusercontent.com/u/1183951?v=4)](https://github.com/yenyasinn "yenyasinn (8 commits)")[![piotrsmykaj](https://avatars.githubusercontent.com/u/10449853?v=4)](https://github.com/piotrsmykaj "piotrsmykaj (6 commits)")[![hernani](https://avatars.githubusercontent.com/u/707860?v=4)](https://github.com/hernani "hernani (6 commits)")[![drishu](https://avatars.githubusercontent.com/u/11507647?v=4)](https://github.com/drishu "drishu (2 commits)")[![intelektron](https://avatars.githubusercontent.com/u/3647601?v=4)](https://github.com/intelektron "intelektron (1 commits)")

### Embed Badge

![Health badge](/badges/openeuropa-rdf-skos/health.svg)

```
[![Health](https://phpackages.com/badges/openeuropa-rdf-skos/health.svg)](https://phpackages.com/packages/openeuropa-rdf-skos)
```

###  Alternatives

[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6939.5M343](/packages/drupal-core-recommended)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
