Changes between Version 24 and Version 25 of InstallationInstructions


Ignore:
Timestamp:
11/30/06 00:55:27 (17 years ago)
Author:
anonymous
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • InstallationInstructions

    v24 v25  
     1 
    12== Short installation overview == 
    23 
     
    1516 
    1617Well, and you MUST have several RDF files for rdfhomepage to work: 
    17  * a FOAF file specifying yourself and your "friends" and colleagues 
     18 * a FOAF file specifying yourself and your "friends" and colleagues 
    1819 * a bibtex files, that is, the text version PLUS the RDF version(!) of your publications 
    1920 * an organizational model, that is, your organizational properties and relations (your projects, department(s), roles...) 
     
    3132For 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: 
    3233 
    33  * Resources to be referenced from outside the RDF file need a URI => Your foaf:Person needs a URI. 
    34  * 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="...". 
    35  * 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". 
     34 * Resources to be referenced from outside the RDF file need a URI => Your foaf:Person needs a URI. 
     35 * 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="...". 
     36 * 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". 
    3637 * 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. 
    3738 
     
    3940{{{ 
    4041// The location of your FOAF file on the web (This is also the data source) 
    41 $MY_FOAF_FILE_URL = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml"; 
     42$MY_FOAF_FILE_URL = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml"; 
    4243 
    4344// Your URI in your FOAF file - Look this one up! 
    44 $MY_FOAF_URI = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me"; 
     45$MY_FOAF_URI = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me"; 
    4546}}} 
    4647 
     
    6162At the END of the bibtex-file there is a rdf:Seq like this 
    6263{{{ 
    63   <rdf:Seq rdf:about="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList"> 
    64     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz05"/> 
    65     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz06"/> 
    66     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#GrimnesSchwarzSauermann06"/> 
     64  &lt;rdf:Seq rdf:about=&#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList&#34;&gt; 
     65    &lt;rdf:li rdf:resource=&#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz05&#34;/&gt; 
     66    &lt;rdf:li rdf:resource=&#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz06&#34;/&gt; 
     67    &lt;rdf:li rdf:resource=&#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#GrimnesSchwarzSauermann06&#34;/&gt; 
    6768    . . . 
    68   </rdf:Seq> 
     69  &lt;/rdf:Seq&gt; 
    6970}}} 
    7071 
     
    7273{{{ 
    7374// The name (not path) of your bibtex.rdf 
    74 define("BIBTEX_FILE_NAME", "bib_ss.rdf"); 
     75define(&#34;BIBTEX_FILE_NAME&#34;, &#34;bib_ss.rdf&#34;); 
    7576 
    7677// The URL of your BibTeX file. (real BibTeX format, not RDF!) 
    77 $MY_BIB_TEX_URL = "http://www.dfki.uni-kl.de/~schwarz/ss.bib"; 
     78$MY_BIB_TEX_URL = &#34;http://www.dfki.uni-kl.de/~schwarz/ss.bib&#34;; 
    7879 
    7980// The URI of a sequence of all the articles in your bibtex file 
    80 $MY_BIB_TEX_SEQ_URI = "http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList"; 
     81$MY_BIB_TEX_SEQ_URI = &#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList&#34;; 
    8182}}} 
    8283 
     
    8687 
    8788The !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. 
    88 You may have a look at our !OrgRep -> see {{{{rdfhomepage/vocabulary/OrgRepDFKI.*}}} -> best viewed with [http://protege.stanford.edu/ Protege], http://protege.stanford.edu/ 
     89You may have a look at our !OrgRep -&gt; see {{{{rdfhomepage/vocabulary/OrgRepDFKI.*}}} -&gt; best viewed with [http://protege.stanford.edu/ Protege], http://protege.stanford.edu/ 
    8990 
    9091There is also a better, nearly-empty Protege-Projekt + RDF + RDFS, which you could use to model your own organizational structure(s): {{{{rdfhomepage/vocabulary/OrgRep.*}}} [[BR]] 
    9192I advise you take the following steps: 
    9293 1. Open {{{OrgRep.pprj}}} with Protege 
    93  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#). 
     94 2. Save it again (File/Save as), maybe use other filenames like {{{OrgRepACME.*}}} - the important thing here is: choose an OTHER default namespace -&gt; last edit field in the &#34;Save as&#34; dialog (initially, the value will be http://rdfhomepage.opendfki.de/please_choose_another_namespace#). 
    9495 3. Open it again (with Protege) and add your people, projects, etc. therein. 
    95  4. There are some inverse properties, which may need manual care, e.g. between org:Project <--> org:Person 
     96 4. There are some inverse properties, which may need manual care, e.g. between org:Project &lt;--&gt; org:Person 
    9697 
    9798I 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. 
     
    101102// Your URI in the OrgRep ontology 
    102103// If in doubt, look it up in the OrgRep RDF File or ask somebody! 
    103 $MY_ORGREP_URI = "http://km.dfki.de/model/org#OrganisationalModel_00077"; 
     104$MY_ORGREP_URI = &#34;http://km.dfki.de/model/org#OrganisationalModel_00077&#34;; 
    104105}}} 
    105106 
     
    117118// as it can be found in the rdfhomepage.rdf file. 
    118119// You may commit to the default URI scheme, which is like 
    119 //     http://www.dfki.uni-kl.de/~schwarz    <-- note: no trailing slash!!! 
     120//     http://www.dfki.uni-kl.de/~schwarz    &lt;-- note: no trailing slash!!! 
    120121// or change this value 
    121 $MY_HOMEPAGE_URI= "http://www.dfki.uni-kl.de/~schwarz"; 
     122$MY_HOMEPAGE_URI= &#34;http://www.dfki.uni-kl.de/~schwarz&#34;; 
    122123}}} 
    123124 
    124125Another important thing in the homepage.rdf is the information about the name that is used in your bibtex. Unfortunately this information should be better stored in config.php, but it is in homepage.rdf for several reasons... ;) 
    125126{{{ 
    126     <hp:bibtexName>Sven Schwarz</hp:bibtexName> 
     127    &lt;hp:bibtexName&gt;Sven Schwarz&lt;/hp:bibtexName&gt; 
    127128}}} 
    128129Edit this to match the name (or abbreviation!) you use IN YOUR BIBTEX FILE. Currently, you have to decide on exactly ONE version! So: do not mix full names with abbreviations in your bibtex file! 
     
    133134There could be a chunk containing short information about yourself: 
    134135{{{ 
    135     <hp:shortBio> 
    136     <![CDATA[ 
    137         <p align="justify"> 
     136    &lt;hp:shortBio&gt; 
     137    &lt;![CDATA[ 
     138        &lt;p align=&#34;justify&#34;&gt; 
    138139            My name is Bob. I am a researcher aiming at... 
    139         </p> 
    140         <p align="justify"> 
     140        &lt;/p&gt; 
     141        &lt;p align=&#34;justify&#34;&gt; 
    141142            I like tennis and swimming... 
    142         </p> 
    143     ]]> 
    144     </hp:shortBio> 
     143        &lt;/p&gt; 
     144    ]]&gt; 
     145    &lt;/hp:shortBio&gt; 
    145146}}} 
    146147 
     
    149150Most probably, there will be one or more chunks about projects you work for: 
    150151{{{ 
    151     <hp:inProject> 
    152         <hp:Project rdf:about="http://orgrep_namespace#OrgRep_0815"> 
    153             <hp:htmlText> 
    154             <![CDATA[ 
    155                 <p align="justify"> 
    156                     This is one of two projects I work for.<br/> 
     152    &lt;hp:inProject&gt; 
     153        &lt;hp:Project rdf:about=&#34;http://orgrep_namespace#OrgRep_0815&#34;&gt; 
     154            &lt;hp:htmlText&gt; 
     155            &lt;![CDATA[ 
     156                &lt;p align=&#34;justify&#34;&gt; 
     157                    This is one of two projects I work for.&lt;br/&gt; 
    157158                    I took talk hours about this project... 
    158                 </p> 
    159             ]]> 
    160             </hp:htmlText> 
    161             <hp:next rdf:resource="http://orgrep_namespace#OrgRep_0816"/> 
    162         </hp:Project> 
    163     </hp:inProject> 
    164  
    165     <hp:inProject> 
    166         <hp:Project rdf:about="http://orgrep_namespace#OrgRep_0816"> 
    167             <hp:htmlText> 
    168             <![CDATA[ 
    169                 <p align="justify"> 
     159                &lt;/p&gt; 
     160            ]]&gt; 
     161            &lt;/hp:htmlText&gt; 
     162            &lt;hp:next rdf:resource=&#34;http://orgrep_namespace#OrgRep_0816&#34;/&gt; 
     163        &lt;/hp:Project&gt; 
     164    &lt;/hp:inProject&gt; 
     165 
     166    &lt;hp:inProject&gt; 
     167        &lt;hp:Project rdf:about=&#34;http://orgrep_namespace#OrgRep_0816&#34;&gt; 
     168            &lt;hp:htmlText&gt; 
     169            &lt;![CDATA[ 
     170                &lt;p align=&#34;justify&#34;&gt; 
    170171                    And this is the second of the two projects I work for. 
    171                 </p> 
    172             ]]> 
    173             </hp:htmlText> 
    174             <!-- no next project --> 
    175         </hp:Project> 
    176     </hp:inProject> 
     172                &lt;/p&gt; 
     173            ]]&gt; 
     174            &lt;/hp:htmlText&gt; 
     175            &lt;!-- no next project --&gt; 
     176        &lt;/hp:Project&gt; 
     177    &lt;/hp:inProject&gt; 
    177178}}} 
    178179We see several things here: 
     
    187188 
    188189There can be one or more chunks about your (research) interest. 
    189 As "interests" are quite manifold, each interest belongs to (exactly!) one "section". 
    190 I personally distinguish between "research contributions" and "research applications" (however, you do not have to do so as well): 
    191 {{{ 
    192     <hp:hasInterest> 
    193         <hp:Interest rdf:about="http://some_namespace#MayorResearch" 
    194              rdfs:label="Mayor Research Questions"> 
    195             <hp:section> 
    196                 <hp:Section rdf:about="http://some_namespace#MyContribution" 
    197                      hp:htmlText="My Contribution to Research"/> 
    198             </hp:section> 
    199             <hp:htmlText> 
    200             <![CDATA[ 
    201                 <p align="justify"> 
     190As &#34;interests&#34; are quite manifold, each interest belongs to (exactly!) one &#34;section&#34;. 
     191I personally distinguish between &#34;research contributions&#34; and &#34;research applications&#34; (however, you do not have to do so as well): 
     192{{{ 
     193    &lt;hp:hasInterest&gt; 
     194        &lt;hp:Interest rdf:about=&#34;http://some_namespace#MayorResearch&#34; 
     195             rdfs:label=&#34;Mayor Research Questions&#34;&gt; 
     196            &lt;hp:section&gt; 
     197                &lt;hp:Section rdf:about=&#34;http://some_namespace#MyContribution&#34; 
     198                     hp:htmlText=&#34;My Contribution to Research&#34;/&gt; 
     199            &lt;/hp:section&gt; 
     200            &lt;hp:htmlText&gt; 
     201            &lt;![CDATA[ 
     202                &lt;p align=&#34;justify&#34;&gt; 
    202203                    My mayor research questions: 
    203                     <ul> 
    204                       <li><b>research in ABC</b>: ABC is my personal dream... </li> 
    205                       <li><b>DEF for GHI</b>: In the next 2 months, ... </li> 
    206                     </ul> 
    207                 </p> 
    208             ]]> 
    209             </hp:htmlText> 
    210             <hp:next rdf:resource="http://some_namespace#MinorResearch"/> 
    211         </hp:Interest> 
    212     </hp:hasInterest> 
    213     <hp:hasInterest> 
    214         <hp:Interest rdf:about="http://some_namespace#MinorResearch" 
    215              rdfs:label="Minor Research Questions"> 
    216             <hp:section rdf:resource="http://some_namespace#MyContribution"/>   <!-- same section!!! --> 
    217             <hp:htmlText> 
    218             <![CDATA[ 
    219                 <p align="justify"> 
     204                    &lt;ul&gt; 
     205                      &lt;li&gt;&lt;b&gt;research in ABC&lt;/b&gt;: ABC is my personal dream... &lt;/li&gt; 
     206                      &lt;li&gt;&lt;b&gt;DEF for GHI&lt;/b&gt;: In the next 2 months, ... &lt;/li&gt; 
     207                    &lt;/ul&gt; 
     208                &lt;/p&gt; 
     209            ]]&gt; 
     210            &lt;/hp:htmlText&gt; 
     211            &lt;hp:next rdf:resource=&#34;http://some_namespace#MinorResearch&#34;/&gt; 
     212        &lt;/hp:Interest&gt; 
     213    &lt;/hp:hasInterest&gt; 
     214    &lt;hp:hasInterest&gt; 
     215        &lt;hp:Interest rdf:about=&#34;http://some_namespace#MinorResearch&#34; 
     216             rdfs:label=&#34;Minor Research Questions&#34;&gt; 
     217            &lt;hp:section rdf:resource=&#34;http://some_namespace#MyContribution&#34;/&gt;   &lt;!-- same section!!! --&gt; 
     218            &lt;hp:htmlText&gt; 
     219            &lt;![CDATA[ 
     220                &lt;p align=&#34;justify&#34;&gt; 
    220221                    I'm also interested in 
    221                     <ol> 
    222                       <li>JKL, and</li> 
    223                       <li>MNO</li> 
    224                     </ol> 
    225                 </p> 
    226             ]]> 
    227             </hp:htmlText> 
    228             <hp:next rdf:resource="http://some_namespace#ResearchApplication1"/> 
    229         </hp:Interest> 
    230     </hp:hasInterest> 
     222                    &lt;ol&gt; 
     223                      &lt;li&gt;JKL, and&lt;/li&gt; 
     224                      &lt;li&gt;MNO&lt;/li&gt; 
     225                    &lt;/ol&gt; 
     226                &lt;/p&gt; 
     227            ]]&gt; 
     228            &lt;/hp:htmlText&gt; 
     229            &lt;hp:next rdf:resource=&#34;http://some_namespace#ResearchApplication1&#34;/&gt; 
     230        &lt;/hp:Interest&gt; 
     231    &lt;/hp:hasInterest&gt; 
    231232     
    232     <hp:hasInterest> 
    233         <hp:Interest rdf:about="http://some_namespace#ResearchApplication1" 
    234              rdfs:label="Research Application (1)"> 
    235             <hp:section> 
    236                 <hp:Section rdf:about="http://some_namespace#ResearchApplication" 
    237                      hp:htmlText="Research I Apply"/> 
    238             </hp:section> 
    239             <hp:htmlText> 
    240             <![CDATA[ 
    241                 <p align="justify"> 
     233    &lt;hp:hasInterest&gt; 
     234        &lt;hp:Interest rdf:about=&#34;http://some_namespace#ResearchApplication1&#34; 
     235             rdfs:label=&#34;Research Application (1)&#34;&gt; 
     236            &lt;hp:section&gt; 
     237                &lt;hp:Section rdf:about=&#34;http://some_namespace#ResearchApplication&#34; 
     238                     hp:htmlText=&#34;Research I Apply&#34;/&gt; 
     239            &lt;/hp:section&gt; 
     240            &lt;hp:htmlText&gt; 
     241            &lt;![CDATA[ 
     242                &lt;p align=&#34;justify&#34;&gt; 
    242243                    I'm heavily allying and relying of the following research areas: 
    243                     <ul> 
    244                       <li><b>XXX</b>: nobody can't without... </li> 
    245                       <li><b>XYY</b>: also very important, because... </li> 
    246                       <li><b>XYZ</b>: very interesting, but not yet really applicable... </li> 
    247                     </ul> 
    248                 </p> 
    249             ]]> 
    250             </hp:htmlText> 
    251             <!-- no hp:next --> 
    252         </hp:Interest> 
    253     </hp:hasInterest> 
     244                    &lt;ul&gt; 
     245                      &lt;li&gt;&lt;b&gt;XXX&lt;/b&gt;: nobody can't without... &lt;/li&gt; 
     246                      &lt;li&gt;&lt;b&gt;XYY&lt;/b&gt;: also very important, because... &lt;/li&gt; 
     247                      &lt;li&gt;&lt;b&gt;XYZ&lt;/b&gt;: very interesting, but not yet really applicable... &lt;/li&gt; 
     248                    &lt;/ul&gt; 
     249                &lt;/p&gt; 
     250            ]]&gt; 
     251            &lt;/hp:htmlText&gt; 
     252            &lt;!-- no hp:next --&gt; 
     253        &lt;/hp:Interest&gt; 
     254    &lt;/hp:hasInterest&gt; 
    254255}}} 
    255256We see several things here: 
     
    262263=== nice URLs via htaccess === 
    263264 
    264 This paragraph is about having "nice" URLs, i.e., we want to allow the following TWO possible versions to access rdfhomepage pages:[[BR]] 
     265This paragraph is about having &#34;nice&#34; URLs, i.e., we want to allow the following TWO possible versions to access rdfhomepage pages:[[BR]] 
    265266  {{{old version:}}} http://www.dfki.uni-kl.de/~schwarz/index.php?page=projects [[BR]] 
    266267  {{{new version:}}} http://www.dfki.uni-kl.de/~schwarz/projects 
     
    269270 
    270271Then for each page you have in rdfhomepage, you have to 
    271  1. Edit the .htaccess file and add one mappings there. For each index.php?page=xxx, you will have an entry in .htaccess for xxx. Example for pages "projects" and "interests": 
    272 {{{ 
    273 <Files projects> 
     272 1. Edit the .htaccess file and add one mappings there. For each index.php?page=xxx, you will have an entry in .htaccess for xxx. Example for pages &#34;projects&#34; and &#34;interests&#34;: 
     273{{{ 
     274&lt;Files projects&gt; 
    274275ForceType application/x-httpd-php 
    275 </Files> 
    276 <Files interests> 
     276&lt;/Files&gt; 
     277&lt;Files interests&gt; 
    277278ForceType application/x-httpd-php 
    278 </Files> 
    279 }}} 
    280  2. Create a symbolic link to index.php with the name of the page. Following the example with the "projects" page, you have to execute (unix/linux) 
     279&lt;/Files&gt; 
     280}}} 
     281 2. Create a symbolic link to index.php with the name of the page. Following the example with the &#34;projects&#34; page, you have to execute (unix/linux) 
    281282{{{ 
    282283ln -s index.php projects 
     
    296297    In that CSS file you would include the homepage.css of the rdfhomepage package. Example: 
    297298{{{ 
    298 @import url("rdfhomepage/homepage.css"); 
     299@import url(&#34;rdfhomepage/homepage.css&#34;); 
    299300 
    300301a { 
     
    312313 * template.css defines the layout for the multi-column layout. [[BR]] 
    313314 * color_and_font.css defines the colors and fonts to be used. 
    314  * homepage.css defines ordering and spacing of the <div>s. 
     315 * homepage.css defines ordering and spacing of the &lt;div&gt;s. 
    315316 
    316317If you just like to override the coloring or some fonts, then you could create an own {{{homepage.css}}} in your myrdfhomepage directory containing 
    317318{{{ 
    318 @import url("rdfhomepage/homepage.css"); 
    319 @import url("color_and_font.css");         // <--- private color_and_font.css 
     319@import url(&#34;rdfhomepage/homepage.css&#34;); 
     320@import url(&#34;color_and_font.css&#34;);         // &lt;--- private color_and_font.css 
    320321 
    321322a { 
     
    325326Then you can also create an own {{{color_and_font.css}}} in that directory containing 
    326327{{{ 
    327 @import url("rdfhomepage/color_and_font.css"); 
     328@import url(&#34;rdfhomepage/color_and_font.css&#34;); 
    328329 
    329330a.menuItem:hover { 
     
    337338Note, that for the examples above it is assumed, that the rdfhomepage package can be found directly inside your myrdfhomepage directory. If you put the rdfhomepage package to let's say {{{/home/share/rdfhomepage}}} to share the rdfhomepage core, then the import statements have to be modified in the code above, i.e., changed to 
    338339{{{ 
    339 @import url("/home/share/rdfhomepage/homepage.css"); 
     340@import url(&#34;/home/share/rdfhomepage/homepage.css&#34;); 
    340341. . . 
    341 @import url("/home/share/rdfhomepage/color_and_font.css"); 
     342@import url(&#34;/home/share/rdfhomepage/color_and_font.css&#34;); 
    342343. . . 
    343 }}} 
     344}}}954633916463