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:
AuthorID, AuthorName, AuthorMiddleName, AuthorSurname, AuthorURL, AuthorEmail, Department
PublicationID, Keyword(type of string), KeywordOrder(type of Integer),
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)
RefID, RefPaperID, RefDetails, RefYear
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" .
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".
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.
I think your issues start with following a rather old Whitepaper as a guide, rather than the more recent documentation. I encourage you to follow up on the latter through the channels above.