###### tags: `WissKI`
# WissKI - Virtual Research Environment and Linked Open Data Management Extension for Drupal
WissKI is the German acronym for "Wissenschaftliche Kommunikationsinfrastruktur" (scientific communication infrastructure), and it provides users with the ability to enrich their data with various semantic web features. WissKI's core function is to annotate Drupal's bundles and fields with semantics and allows users to store their data in RDF format in a triplestore - or to read data from an RDF repository and display it in Drupal. In short, WissKI is a middleware between Drupal and an RDF repository.
The session aims to show interested users the possibilities, advantages and functionalities of WissKI to generate and publish linked open data.
How does WissKI work? WissKI consists of several submodules. Four of them provide the main functionality: The "WissKI Core" implements the WissKI entity, storage and all basic configuration pages. The "WissKI Abstraction Layer Zero" allows you to add connections to data repositories of various kinds. To talk to repositories that provide a SPARQL 1.1 endpoint, the "WissKI SPARQL 1.1 Adapter" module provides configuration options and translates your queries and statements to SPARQL. With these three modules enabled, you can import an ontology that provides the vocabulary and constraints for a semantic data model. Finally, the "WissKI Pathbuilder" brings a graphical user interface that allows you to create and annotate Drupal bundles and fields with semantics based on the imported ontology and lets you define the field definitions - providing a new place for semantic data modelling alongside Drupal's entity types.
By default, Drupal's data model consists of entity variants (e.g. "content"), entity types (e.g. "node"), bundles (e.g. "basic page") and fields (e.g. "text").
WissKI adds the entity type "WissKI entity" and allows the user to define bundles and corresponding fields of this entity type. In this way, for example, a bundle "person" can be defined, which is assigned to an ontological class "http://cidoc-crm/E21_Person". This bundle "person" can have a field, for example "name". This field is also stored with a semantic path, for example "http://cidoc-crm/E21_Person http://cidoc-crm/P1_is_identified_by http://cidoc-crm/E41_Appellation http://cidoc-crm/P3_has_note 'field value'". When a user creates a person using Drupal's input form, WissKI takes care of all the necessary steps to triplicate and store the data. It generates all necessary instances in the triplestore with namespaced and unique IDs, rdf type, object properties, data properties, values, etc.
However, you can also use WissKI to display existing data from a triplestore in Drupal, it is not necessary that the RDF data was created with WissKI. WissKI only serves as a mapping between Drupal's entity architecture and RDF data, and all data in the triplestore is accessible without a Drupal instance.
WissKI also allows you to combine different repositories, e.g. to get "Persons" from one source and "Places" from another, and to connect and reuse this data via semantic paths.
A useful feature for reusing resources is WissKI's disambiguation. With disambiguation points, you can check whether instances with a certain field value exist and reuse this instance instead of creating a new one.
WissKI are completely free and open-source and fully compliant with Drupal core and contributed modules. It ships with many self maintained submodules to facilitate some tasks (i.e. add authority file adapters, detect duplicates, add permalinks, and retrieve digital object identifiers) or implement useful libraries (i.e. IIP Image Viewer, Mirador Viewer).
Alongside these many features, however, we also struggle with the assumption in many modules (and to some extent in the Drupal core) that data is stored exclusively in SQL and that IDs require certain numeric data types, which in the world of linked open data with its IRIs as string identifiers leads to an over-complexity of primary keys and mappings.
Therefore, this session should not only serve WissKI as a tool for creating and managing linked open data, but also bring the topic of RDF into the consciousness of the Drupal community.