I have been lately trying to describe a given RDB(Relational Database) with specific semantic ontologies, using Virtuoso. The ontologies that i want to use are: dc,foaf,dct,bibo,cito(I am new to this so I didnt quite understand if dc and dct are the same thing).
I have been following this tutorial on how to do this:
http://virtuoso.openlinksw.com/whitepapers/relational%20rdf%20views%20mapping.html
My problem is that in this tutorial classes are created from zero while I need to use existing ones. Unfortunately I am not allowed to post the links of the ontologies too.
In particular I want to describe:
An "author" table(a published paper author) that has the following columns:
AuthorID, AuthorName, AuthorMiddleName, AuthorSurname, AuthorURL, AuthorEmail, Department
A "Keywords" table(publication's keywords) with the columns:
PublicationID, Keyword(type of string), KeywordOrder(type of Integer),
A "Publications" table with the columns:
PublicationID, PublicationTitle, MediaType(type of string), PublicationType(Integer), MediaTitle, MediaPublisher, MediaEditors, MediaVolInfo, PublicationYear, PublicationNoOfPages, PublicationPagesInMedium, PublicationFileName, PublicationComments, PublicationRelatedURL, PublicationRelatedURLText, PublicationLocation, PublicationPubURL, DisplayOnMLKD(type of Integer), DisplayOnISKP(type of Integer), DisplayOnWeb(type of Integer)
A "References" table (publication's references) with the columns:
RefID, RefPaperID, RefDetails, RefYear
A "Rights" table (publication's rights) with the columns:
PublicationID, AuthorID, AuthorOrder
I tried doing some of this work but I think I might have some problems.
For example, I am currently trying to express the "Publications" table and in my file I have the following:
@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" .
Question 1:
So this is just a fragment but my question here is how do I express that the "Publication" is a class of an existing ontology? As you can see above I am defining from zero the class "Publication".
Question 2(more important):
As you can see in the tutorial, somehow the tables that were imported in the virtuoso tool were mapped to a specific URL. However, I wasn't able to find the URL to each table that I imported to virtuoso and I just put some placeholder URLs (These are the localhost URLs). How can i find out the URL to each of the tables that I imported to virtuoso?
PS. Any information at all would be extremely useful, thank you.
PPS. This is my first post so please excuse my formatting if it's wrong.