Changes between Version 27 and Version 28 of InstallationInstructions


Ignore:
Timestamp:
07/09/10 12:38:18 (14 years ago)
Author:
schwarz
Comment:

corrected structured text

Legend:

Unmodified
Added
Removed
Modified
  • InstallationInstructions

    v27 v28  
    2323 
    2424Well, and you MUST have several RDF files for rdfhomepage to work: 
    25  * a FOAF file specifying yourself and your "friends" and colleagues 
     25 * a FOAF file specifying yourself and your "friends" and colleagues 
    2626 * a bibtex files, that is, the text version PLUS the RDF version(!) of your publications 
    2727 * an organizational model, that is, your organizational properties and relations (your projects, department(s), roles...) 
     
    3939For 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: 
    4040 
    41  * Resources to be referenced from outside the RDF file need a URI => Your foaf:Person needs a URI. 
    42  * 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="...". 
    43  * 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". 
     41 * Resources to be referenced from outside the RDF file need a URI => Your foaf:Person needs a URI. 
     42 * 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="...". 
     43 * 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". 
    4444 * 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. 
    4545 
     
    4747{{{ 
    4848// The location of your FOAF file on the web (This is also the data source) 
    49 $MY_FOAF_FILE_URL = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml"; 
     49$MY_FOAF_FILE_URL = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml"; 
    5050 
    5151// Your URI in your FOAF file - Look this one up! 
    52 $MY_FOAF_URI = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me"; 
     52$MY_FOAF_URI = "http://www.dfki.uni-kl.de/~schwarz/foaf.xml#me"; 
    5353}}} 
    5454 
     
    6969At the END of the bibtex-file there is a rdf:Seq like this 
    7070{{{ 
    71   <rdf:Seq rdf:about="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList"> 
    72     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz05"/> 
    73     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz06"/> 
    74     <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#GrimnesSchwarzSauermann06"/> 
     71  <rdf:Seq rdf:about="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList"> 
     72    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz05"/> 
     73    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#Schwarz06"/> 
     74    <rdf:li rdf:resource="http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#GrimnesSchwarzSauermann06"/> 
    7575    . . . 
    76   &lt;/rdf:Seq&gt; 
     76  </rdf:Seq> 
    7777}}} 
    7878 
     
    8080{{{ 
    8181// The name (not path) of your bibtex.rdf 
    82 define(&#34;BIBTEX_FILE_NAME&#34;, &#34;bib_ss.rdf&#34;); 
     82define("BIBTEX_FILE_NAME", "bib_ss.rdf"); 
    8383 
    8484// The URL of your BibTeX file. (real BibTeX format, not RDF!) 
    85 $MY_BIB_TEX_URL = &#34;http://www.dfki.uni-kl.de/~schwarz/ss.bib&#34;; 
     85$MY_BIB_TEX_URL = "http://www.dfki.uni-kl.de/~schwarz/ss.bib"; 
    8686 
    8787// The URI of a sequence of all the articles in your bibtex file 
    88 $MY_BIB_TEX_SEQ_URI = &#34;http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList&#34;; 
     88$MY_BIB_TEX_SEQ_URI = "http://www.dfki.uni-kl.de/~schwarz/rdf/ss_bib.rdf#referenceList"; 
    8989}}} 
    9090 
     
    9494 
    9595The !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. 
    96 You 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/ 
     96You may have a look at our !OrgRep -> see {{{{rdfhomepage/vocabulary/OrgRepDFKI.*}}} -> best viewed with [http://protege.stanford.edu/ Protege], http://protege.stanford.edu/ 
    9797 
    9898There 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]] 
    9999I advise you take the following steps: 
    100100 1. Open {{{OrgRep.pprj}}} with Protege 
    101  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#). 
     101 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#). 
    102102 3. Open it again (with Protege) and add your people, projects, etc. therein. 
    103  4. There are some inverse properties, which may need manual care, e.g. between org:Project &lt;--&gt; org:Person 
     103 4. There are some inverse properties, which may need manual care, e.g. between org:Project <--> org:Person 
    104104 
    105105I 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. 
     
    109109// Your URI in the OrgRep ontology 
    110110// If in doubt, look it up in the OrgRep RDF File or ask somebody! 
    111 $MY_ORGREP_URI = &#34;http://km.dfki.de/model/org#OrganisationalModel_00077&#34;; 
     111$MY_ORGREP_URI = "http://km.dfki.de/model/org#OrganisationalModel_00077"; 
    112112}}} 
    113113 
     
    125125// as it can be found in the rdfhomepage.rdf file. 
    126126// You may commit to the default URI scheme, which is like 
    127 //     http://www.dfki.uni-kl.de/~schwarz    &lt;-- note: no trailing slash!!! 
     127//     http://www.dfki.uni-kl.de/~schwarz    <-- note: no trailing slash!!! 
    128128// or change this value 
    129 $MY_HOMEPAGE_URI= &#34;http://www.dfki.uni-kl.de/~schwarz&#34;; 
     129$MY_HOMEPAGE_URI= "http://www.dfki.uni-kl.de/~schwarz"; 
    130130}}} 
    131131 
    132132Another 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... ;) 
    133133{{{ 
    134     &lt;hp:bibtexName&gt;Sven Schwarz&lt;/hp:bibtexName&gt; 
     134    <hp:bibtexName>Sven Schwarz</hp:bibtexName> 
    135135}}} 
    136136Edit 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! 
     
    141141There could be a chunk containing short information about yourself: 
    142142{{{ 
    143     &lt;hp:shortBio&gt; 
    144     &lt;![CDATA[ 
    145         &lt;p align=&#34;justify&#34;&gt; 
     143    <hp:shortBio> 
     144    <![CDATA[ 
     145        <p align="justify"> 
    146146            My name is Bob. I am a researcher aiming at... 
    147         &lt;/p&gt; 
    148         &lt;p align=&#34;justify&#34;&gt; 
     147        </p> 
     148        <p align="justify"> 
    149149            I like tennis and swimming... 
    150         &lt;/p&gt; 
    151     ]]&gt; 
    152     &lt;/hp:shortBio&gt; 
     150        </p> 
     151    ]]> 
     152    </hp:shortBio> 
    153153}}} 
    154154 
     
    157157Most probably, there will be one or more chunks about projects you work for: 
    158158{{{ 
    159     &lt;hp:inProject&gt; 
    160         &lt;hp:Project rdf:about=&#34;http://orgrep_namespace#OrgRep_0815&#34;&gt; 
    161             &lt;hp:htmlText&gt; 
    162             &lt;![CDATA[ 
    163                 &lt;p align=&#34;justify&#34;&gt; 
    164                     This is one of two projects I work for.&lt;br/&gt; 
     159    <hp:inProject> 
     160        <hp:Project rdf:about="http://orgrep_namespace#OrgRep_0815"> 
     161            <hp:htmlText> 
     162            <![CDATA[ 
     163                <p align="justify"> 
     164                    This is one of two projects I work for.<br/> 
    165165                    I took talk hours about this project... 
    166                 &lt;/p&gt; 
    167             ]]&gt; 
    168             &lt;/hp:htmlText&gt; 
    169             &lt;hp:next rdf:resource=&#34;http://orgrep_namespace#OrgRep_0816&#34;/&gt; 
    170         &lt;/hp:Project&gt; 
    171     &lt;/hp:inProject&gt; 
    172  
    173     &lt;hp:inProject&gt; 
    174         &lt;hp:Project rdf:about=&#34;http://orgrep_namespace#OrgRep_0816&#34;&gt; 
    175             &lt;hp:htmlText&gt; 
    176             &lt;![CDATA[ 
    177                 &lt;p align=&#34;justify&#34;&gt; 
     166                </p> 
     167            ]]> 
     168            </hp:htmlText> 
     169            <hp:next rdf:resource="http://orgrep_namespace#OrgRep_0816"/> 
     170        </hp:Project> 
     171    </hp:inProject> 
     172 
     173    <hp:inProject> 
     174        <hp:Project rdf:about="http://orgrep_namespace#OrgRep_0816"> 
     175            <hp:htmlText> 
     176            <![CDATA[ 
     177                <p align="justify"> 
    178178                    And this is the second of the two projects I work for. 
    179                 &lt;/p&gt; 
    180             ]]&gt; 
    181             &lt;/hp:htmlText&gt; 
    182             &lt;!-- no next project --&gt; 
    183         &lt;/hp:Project&gt; 
    184     &lt;/hp:inProject&gt; 
     179                </p> 
     180            ]]> 
     181            </hp:htmlText> 
     182            <!-- no next project --> 
     183        </hp:Project> 
     184    </hp:inProject> 
    185185}}} 
    186186We see several things here: 
     
    195195 
    196196There can be one or more chunks about your (research) interest. 
    197 As &#34;interests&#34; are quite manifold, each interest belongs to (exactly!) one &#34;section&#34;. 
    198 I personally distinguish between &#34;research contributions&#34; and &#34;research applications&#34; (however, you do not have to do so as well): 
    199 {{{ 
    200     &lt;hp:hasInterest&gt; 
    201         &lt;hp:Interest rdf:about=&#34;http://some_namespace#MayorResearch&#34; 
    202              rdfs:label=&#34;Mayor Research Questions&#34;&gt; 
    203             &lt;hp:section&gt; 
    204                 &lt;hp:Section rdf:about=&#34;http://some_namespace#MyContribution&#34; 
    205                      hp:htmlText=&#34;My Contribution to Research&#34;/&gt; 
    206             &lt;/hp:section&gt; 
    207             &lt;hp:htmlText&gt; 
    208             &lt;![CDATA[ 
    209                 &lt;p align=&#34;justify&#34;&gt; 
     197As "interests" are quite manifold, each interest belongs to (exactly!) one "section". 
     198I personally distinguish between "research contributions" and "research applications" (however, you do not have to do so as well): 
     199{{{ 
     200    <hp:hasInterest> 
     201        <hp:Interest rdf:about="http://some_namespace#MayorResearch" 
     202             rdfs:label="Mayor Research Questions"> 
     203            <hp:section> 
     204                <hp:Section rdf:about="http://some_namespace#MyContribution" 
     205                     hp:htmlText="My Contribution to Research"/> 
     206            </hp:section> 
     207            <hp:htmlText> 
     208            <![CDATA[ 
     209                <p align="justify"> 
    210210                    My mayor research questions: 
    211                     &lt;ul&gt; 
    212                       &lt;li&gt;&lt;b&gt;research in ABC&lt;/b&gt;: ABC is my personal dream... &lt;/li&gt; 
    213                       &lt;li&gt;&lt;b&gt;DEF for GHI&lt;/b&gt;: In the next 2 months, ... &lt;/li&gt; 
    214                     &lt;/ul&gt; 
    215                 &lt;/p&gt; 
    216             ]]&gt; 
    217             &lt;/hp:htmlText&gt; 
    218             &lt;hp:next rdf:resource=&#34;http://some_namespace#MinorResearch&#34;/&gt; 
    219         &lt;/hp:Interest&gt; 
    220     &lt;/hp:hasInterest&gt; 
    221     &lt;hp:hasInterest&gt; 
    222         &lt;hp:Interest rdf:about=&#34;http://some_namespace#MinorResearch&#34; 
    223              rdfs:label=&#34;Minor Research Questions&#34;&gt; 
    224             &lt;hp:section rdf:resource=&#34;http://some_namespace#MyContribution&#34;/&gt;   &lt;!-- same section!!! --&gt; 
    225             &lt;hp:htmlText&gt; 
    226             &lt;![CDATA[ 
    227                 &lt;p align=&#34;justify&#34;&gt; 
     211                    <ul> 
     212                      <li><b>research in ABC</b>: ABC is my personal dream... </li> 
     213                      <li><b>DEF for GHI</b>: In the next 2 months, ... </li> 
     214                    </ul> 
     215                </p> 
     216            ]]> 
     217            </hp:htmlText> 
     218            <hp:next rdf:resource="http://some_namespace#MinorResearch"/> 
     219        </hp:Interest> 
     220    </hp:hasInterest> 
     221    <hp:hasInterest> 
     222        <hp:Interest rdf:about="http://some_namespace#MinorResearch" 
     223             rdfs:label="Minor Research Questions"> 
     224            <hp:section rdf:resource="http://some_namespace#MyContribution"/>   <!-- same section!!! --> 
     225            <hp:htmlText> 
     226            <![CDATA[ 
     227                <p align="justify"> 
    228228                    I'm also interested in 
    229                     &lt;ol&gt; 
    230                       &lt;li&gt;JKL, and&lt;/li&gt; 
    231                       &lt;li&gt;MNO&lt;/li&gt; 
    232                     &lt;/ol&gt; 
    233                 &lt;/p&gt; 
    234             ]]&gt; 
    235             &lt;/hp:htmlText&gt; 
    236             &lt;hp:next rdf:resource=&#34;http://some_namespace#ResearchApplication1&#34;/&gt; 
    237         &lt;/hp:Interest&gt; 
    238     &lt;/hp:hasInterest&gt; 
     229                    <ol> 
     230                      <li>JKL, and</li> 
     231                      <li>MNO</li> 
     232                    </ol> 
     233                </p> 
     234            ]]> 
     235            </hp:htmlText> 
     236            <hp:next rdf:resource="http://some_namespace#ResearchApplication1"/> 
     237        </hp:Interest> 
     238    </hp:hasInterest> 
    239239     
    240     &lt;hp:hasInterest&gt; 
    241         &lt;hp:Interest rdf:about=&#34;http://some_namespace#ResearchApplication1&#34; 
    242              rdfs:label=&#34;Research Application (1)&#34;&gt; 
    243             &lt;hp:section&gt; 
    244                 &lt;hp:Section rdf:about=&#34;http://some_namespace#ResearchApplication&#34; 
    245                      hp:htmlText=&#34;Research I Apply&#34;/&gt; 
    246             &lt;/hp:section&gt; 
    247             &lt;hp:htmlText&gt; 
    248             &lt;![CDATA[ 
    249                 &lt;p align=&#34;justify&#34;&gt; 
     240    <hp:hasInterest> 
     241        <hp:Interest rdf:about="http://some_namespace#ResearchApplication1" 
     242             rdfs:label="Research Application (1)"> 
     243            <hp:section> 
     244                <hp:Section rdf:about="http://some_namespace#ResearchApplication" 
     245                     hp:htmlText="Research I Apply"/> 
     246            </hp:section> 
     247            <hp:htmlText> 
     248            <![CDATA[ 
     249                <p align="justify"> 
    250250                    I'm heavily allying and relying of the following research areas: 
    251                     &lt;ul&gt; 
    252                       &lt;li&gt;&lt;b&gt;XXX&lt;/b&gt;: nobody can't without... &lt;/li&gt; 
    253                       &lt;li&gt;&lt;b&gt;XYY&lt;/b&gt;: also very important, because... &lt;/li&gt; 
    254                       &lt;li&gt;&lt;b&gt;XYZ&lt;/b&gt;: very interesting, but not yet really applicable... &lt;/li&gt; 
    255                     &lt;/ul&gt; 
    256                 &lt;/p&gt; 
    257             ]]&gt; 
    258             &lt;/hp:htmlText&gt; 
    259             &lt;!-- no hp:next --&gt; 
    260         &lt;/hp:Interest&gt; 
    261     &lt;/hp:hasInterest&gt; 
     251                    <ul> 
     252                      <li><b>XXX</b>: nobody can't without... </li> 
     253                      <li><b>XYY</b>: also very important, because... </li> 
     254                      <li><b>XYZ</b>: very interesting, but not yet really applicable... </li> 
     255                    </ul> 
     256                </p> 
     257            ]]> 
     258            </hp:htmlText> 
     259            <!-- no hp:next --> 
     260        </hp:Interest> 
     261    </hp:hasInterest> 
    262262}}} 
    263263We see several things here: 
     
    270270=== nice URLs via htaccess === 
    271271 
    272 This paragraph is about having &#34;nice&#34; URLs, i.e., we want to allow the following TWO possible versions to access rdfhomepage pages:[[BR]] 
     272This paragraph is about having "nice" URLs, i.e., we want to allow the following TWO possible versions to access rdfhomepage pages:[[BR]] 
    273273  {{{old version:}}} http://www.dfki.uni-kl.de/~schwarz/index.php?page=projects [[BR]] 
    274274  {{{new version:}}} http://www.dfki.uni-kl.de/~schwarz/projects 
     
    277277 
    278278Then for each page you have in rdfhomepage, you have to 
    279  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;: 
    280 {{{ 
    281 &lt;Files projects&gt; 
     279 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": 
     280{{{ 
     281<Files projects> 
    282282ForceType application/x-httpd-php 
    283 &lt;/Files&gt; 
    284 &lt;Files interests&gt; 
     283</Files> 
     284<Files interests> 
    285285ForceType application/x-httpd-php 
    286 &lt;/Files&gt; 
    287 }}} 
    288  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) 
     286</Files> 
     287}}} 
     288 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) 
    289289{{{ 
    290290ln -s index.php projects 
     
    304304    In that CSS file you would include the homepage.css of the rdfhomepage package. Example: 
    305305{{{ 
    306 @import url(&#34;rdfhomepage/homepage.css&#34;); 
     306@import url("rdfhomepage/homepage.css"); 
    307307 
    308308a { 
     
    320320 * template.css defines the layout for the multi-column layout. [[BR]] 
    321321 * color_and_font.css defines the colors and fonts to be used. 
    322  * homepage.css defines ordering and spacing of the &lt;div&gt;s. 
     322 * homepage.css defines ordering and spacing of the <div>s. 
    323323 
    324324If you just like to override the coloring or some fonts, then you could create an own {{{homepage.css}}} in your myrdfhomepage directory containing 
    325325{{{ 
    326 @import url(&#34;rdfhomepage/homepage.css&#34;); 
    327 @import url(&#34;color_and_font.css&#34;);         // &lt;--- private color_and_font.css 
     326@import url("rdfhomepage/homepage.css"); 
     327@import url("color_and_font.css");         // <--- private color_and_font.css 
    328328 
    329329a { 
     
    333333Then you can also create an own {{{color_and_font.css}}} in that directory containing 
    334334{{{ 
    335 @import url(&#34;rdfhomepage/color_and_font.css&#34;); 
     335@import url("rdfhomepage/color_and_font.css"); 
    336336 
    337337a.menuItem:hover { 
     
    345345Note, 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 
    346346{{{ 
    347 @import url(&#34;/home/share/rdfhomepage/homepage.css&#34;); 
     347@import url("/home/share/rdfhomepage/homepage.css"); 
    348348. . . 
    349 @import url(&#34;/home/share/rdfhomepage/color_and_font.css&#34;); 
     349@import url("/home/share/rdfhomepage/color_and_font.css"); 
    350350. . . 
    351 }}}954633916463 
     351}}}