В последнее время я пытался описать данную RDB (реляционную базу данных) с конкретными семантическими онтологиями, используя Virtuoso. Онтологии, которые я хочу использовать: dc, foaf, dct, bibo, cito (я новичок в этом, поэтому я не совсем понял, являются ли dc и dct одним и тем же).
Я следовал этому руководству о том, как это сделать: http://virtuoso.openlinksw.com/whitepapers/relational%20rdf%20views%20mapping.html
Моя проблема в том, что в этом руководстве классы создаются с нуля, а мне нужно использовать существующие. К сожалению, мне также не разрешено публиковать ссылки на онтологии.
В частности, я хочу описать:
Таблица авторов (автор опубликованной статьи), в которой есть следующие столбцы:
AuthorID, AuthorName, AuthorMiddleName, AuthorSurname, AuthorURL, AuthorEmail, Department
Таблица ключевых слов (ключевые слова публикации) со столбцами:
PublicationID, Keyword (тип строки), KeywordOrder (тип Integer),
Таблица публикаций со столбцами:
PublicationID, PublicationTitle, MediaType (тип строки), PublicationType (целое число), MediaTitle, MediaPublisher, MediaEditors, MediaVolInfo, PublicationYear, PublicationNoOfPages, PublicationPagesInMedium, PublicationFileName, PublicationComments, PublicationRelatedKecLationURLation (тип PublicationRelatedURLation), PublicationRelatedURLation (Тип публикации) (тип Integer), DisplayOnWeb (тип Integer)
Таблица ссылок (ссылки на публикации) со столбцами:
RefID, RefPaperID, RefDetails, RefYear
Таблица прав (права публикации) со столбцами:
PublicationID, AuthorID, AuthorOrder
Я попытался выполнить часть этой работы, но думаю, у меня могут возникнуть проблемы.
Например, в настоящее время я пытаюсь выразить таблицу публикаций, и в моем файле есть следующее:
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix db: <http://lpis.csd.auth.gr/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix cito: <http://purl.org/net/cito/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix bibo: <http://purl.org/ontology/bibo/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix map: <http://lpis.csd.auth.gr#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix vocab: <http://localhost:2020/vocab/resource/> .
@prefix atr: <http://localhost:8890/rdfv_pt/schemas/authors#> .
@prefix kwrd: <http://localhost:8890/rdfv_pt/schemas/keywords#> .
@prefix pub: <http://localhost:8890/rdfv_pt/schemas/publications#> .
@prefix ref: <http://localhost:8890/rdfv_pt/schemas/references#> .
@prefix rig: http://localhost:8890/rdfv_pt/schemas/rights#> .
pub:Publication a rdfs:Class
rdfs:label "Publication" ;
rdfs:comment "Publication Class" .
pub:PublicationID a dc:identifier .
pub:PublicationTitle a dc:title .
pub:MediaType a rdf:Property ;
rdfs:domain pub:Publication;
rdfs:range xsd:string ;
rdfs:label "Media type" .
Вопрос 1:
Итак, это всего лишь фрагмент, но мой вопрос здесь в том, как я могу выразить, что Публикация является классом существующей онтологии? Как вы можете видеть выше, я определяю с нуля класс Publication.
Вопрос 2 (более важный):
Как вы можете видеть в руководстве, каким-то образом таблицы, которые были импортированы в виртуозном инструменте, были сопоставлены с определенным URL-адресом. Однако мне не удалось найти URL-адрес каждой таблицы, которую я импортировал в виртуоз, и я просто поместил несколько URL-адресов-заполнителей (это URL-адреса localhost). Как я могу узнать URL-адрес каждой из таблиц, импортированных в виртуоз?
PS. Любая информация была бы чрезвычайно полезной, спасибо.
PPS. Это мой первый пост, так что прошу прощения за форматирование, если оно неправильное.