wiki:InstallationInstructions

Version 14 (modified by schwarz, 17 years ago) (diff)

--

Short installation overview

Check out the rdfhomepage package:

cd ~homer/public_html/whereever/
svn co https://rdfhomepage.opendfki.de/repos/rdfhomepage/trunk/rdfhomepage

The rdfhomepage package also contains a directory myrdfhomepage providing you with some initial files you can use to view, edit, and replace. Copy or move the contents (not the folder!) of the myrdfhomepage/ directory to your public html space.

Before you start something else, you should call install.sh if you are installing rdfhomepage on a UNIX machine.

Then, you should edit the files (especially config.php and homepage.rdf), and then test and play around a bit.

Well, and you MUST have several RDF files for rdfhomepage to work:

  • a FOAF file specifying yourself and your "friends" and colleagues
  • a bibtex files, that is, the text version PLUS the RDF version(!) of your publications
  • an organizational model, that is, your organizational properties and relations (your projects, department(s), roles...)

FOAF / RDF

First of all: You MUST have a FOAF file for rdfhomepage to work!
But: Care has to be taken when creating a FOAF file.

There are a lot of tools out there for creation and management of your foaf file, however, (nearly) all of them produce a more or less crappy/ugly/bad/impractical RDF file. I am sorry, but I must advise to use a text editor for that concern. If you adapt the foaf RDFS to contain the right domain and range constraints, then Protege may also be useful, but a text editor together with disciplined(!) indentation is the best, fastest and easiest way.
The easiest way to come up with a good foaf file is to copy mine: http://www.dfki.uni-kl.de/~schwarz/foaf.xml open it in some text editor and edit everything ;)

For all RDF files to be used in rdfhomepage you have to follow the following rules (btw, you should follow these rules for all software using RDF). This holds especially for your FOAF file:

  • Resources to be referenced from outside the RDF file need a URI => Your foaf:Person needs a URI.
  • Blank/anonymous nodes can't be referenced from outside the RDF file. => Your foaf:Person needs a URI, no blank/anonymous node! So: don't use nodeID="...", but use rdf:about="...".
  • Some (most!) RDF parsers do not like relative URIs (or NodeIDs). => It is generally better to use ABSOLUTE URIs. So: don't use rdf:about="#me" in your foaf file, better use something like rdf:about="http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me".
  • Generally, every thing described in an RDF file, that could be relevant and/or referenced outside the RDF file, should have an absolute URI. However, the foaf:Persons I link with foaf:knows do not have a URI, because so many people out there do not have a URI for their foaf:Person.

If you have a FOAF file and a foaf description of your foaf:Person, then the URI of that foaf:Person has to be set in your config.php:

// The location of your FOAF file on the web (This is also the data source)
$MY_FOAF_FILE_URL = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml";

// Your URI in your FOAF file - Look this one up!
$MY_FOAF_URI = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me";

BIBTEX

We used bibtex2rdf from L3S (Hannover) to convert a text bibtex file to some RDF representation. Unfortunately the bibtex2rdf tool is NOT (YET?) open-source, and therefore the jar-file is not includes in the rdfhomepage package. But if you install rdfhomepage and drop me (Sven) an email, and you will get the jar-file.

Using the bibtex2jar tool, you can call the following to create/update your bibtex RDF file:

set BIBFILE=ss.bib
set URI=http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#
set OUT=bib_ss.rdf
java -jar bibtex2rdf.jar -baseuri %URI% %BIBFILE% %OUT%

At the END of the bibtex-file there is a rdf:Seq like this

  <rdf:Seq rdf:about="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList">
    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz05"/>
    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz06"/>
    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#GrimnesSchwarzSauermann06"/>
    . . .
  </rdf:Seq>

Take the URI of that rdf:Seq (here this is http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList ) and paste that URI in your config.php:

// The name (not path) of your bibtex.rdf
define("BIBTEX_FILE_NAME", "bib_ss.rdf");

// The URL of your BibTeX file. (real BibTeX format, not RDF!)
$MY_BIB_TEX_URL = "http://www.dfki.uni-kl.de/~schwarz/ss.bib";

// The URI of a sequence of all the articles in your bibtex file
$MY_BIB_TEX_SEQ_URI = "http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList";

OrgRep

The OrgRep models our/your organizational structure, that is, your organizational properties and relations, your projects, project leaders, department, research groups, etc. Especially the relations between people and projects will be used for rdfhomepage. You may have a look at our OrgRep -> see {rdfhomepage/vocabulary/OrgRepDFKI.* -> best viewed with Protege, http://protege.stanford.edu/

There is also a better, nearly-empty Protege-Projekt + RDF + RDFS, which you could use to model your own organizational structure(s): {rdfhomepage/vocabulary/OrgRep.*
I advise you take the following steps:

  1. Open OrgRep.pprj with Protege
  2. Save it again (File/Save as), maybe use other filenames like OrgRepACME.* - the important thing here is: choose an OTHER default namespace -> last edit field in the "Save as" dialog (initially, the value will be http://rdfhomepage.opendfki.de/please_choose_another_namespace#).
  3. Open it again (with Protege) and add your people, projects, etc. therein.
  4. There are some inverse properties, which may need manual care, e.g. between org:Project <--> org:Person

I would suggest better URIs than the automatically generated ones by Protege, but as Protege does not provide a GUI component to edit the URI (or does it?), you would have to edit/replace the URIs later using a text editor or shell command or whatever.

Anyway, you've got to look up the URI of your org:Person and enter that in the config.php:

// Your URI in the OrgRep ontology
// If in doubt, look it up in the OrgRep RDF File or ask somebody!
$MY_ORGREP_URI = "http://km.dfki.de/model/org#OrganisationalModel_00077";

homepage.rdf

This RDF contains your personal, *homepage relevant*(!) information, that is, your Curriculum Vita, your personal interpretation of your job in your projects, etc.

The most important thing is - again - that your hp:Homepage resource has got a URI. We use the URL of the homepage without the trailing slash as the URI, but that is not obligatory, you can choose whatever URI you like as long as it is unique and differs from the other URIs you use!

Copy the URI of your hp:Homepage resource to the config.php file:

// The URI of the RDF node anchoring the homepage data
// as it can be found in the rdfhomepage.rdf file.
// You may commit to the default URI scheme, which is like
//     http://www.dfki.uni-kl.de/~schwarz    <-- note: no trailing slash!!!
// or change this value
$MY_HOMEPAGE_URI= "http://www.dfki.uni-kl.de/~schwarz";