Page modifiée à 21:00, 23 Avr 2009 par Guillaume Ereteo?

Ipernity

De $1

  ipernity (10) (5).png

 

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <rdf:RDF    
  3.    xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"  
  4.    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"  
  5.    xmlns:owl="http://www.w3.org/2002/07/owl#"  
  6.    xmlns:xs="http://www.w3.org/2000/10/XMLSchema#"  
  7.    xmlns     ="http://www.w3.org/2000/01/rdf-schema#"   
  8.    xml:base  ="http://ns.inria.fr/ipernity/voc" >  
  9.   
  10.   
  11. <owl:Class rdf:ID="PrivateMessage">   
  12.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Item"  />  
  13.   <label xml:lang="en">Private message</label>  
  14.   <comment xml:lang="en">A private message between two user</comment>  
  15. </owl:Class>  
  16.   
  17.   
  18. <owl:ObjectProperty rdf:ID="sender">  
  19.     <subPropertyOf rdf:resource="http://rdfs.org/sioc/ns#creator"  />  
  20.     <domain rdf:resource="#PrivateMessage"  />  
  21.     <range rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  22.     <label xml:lang="en">sender</label>  
  23.     <comment xml:lang="en">defines the sender of a message</comment>  
  24. </owl:ObjectProperty>  
  25.   
  26. <owl:ObjectProperty rdf:ID="recipient">  
  27.     <domain rdf:resource="#PrivateMessage"  />  
  28.     <range rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  29.     <label xml:lang="en">recipient</label>  
  30.     <comment xml:lang="en">defines a recipient of a message</comment>  
  31. </owl:ObjectProperty>  
  32.   
  33.   
  34. <owl:Class rdf:ID="Visit">   
  35.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Item"  />  
  36.   <label xml:lang="en">Visit</label>  
  37.   <comment xml:lang="en">A visit of a resource</comment>  
  38. </owl:Class>  
  39.   
  40. <owl:ObjectProperty rdf:ID="visitorOf">  
  41.     <owl:inverseOf rdf:resource="#hasVisitor"  />  
  42.     <domain rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  43.     <range rdf:resource="#Visit"  />  
  44.     <label xml:lang="en">visitor of</label>  
  45.     <comment xml:lang="en">defines the user that made the visit</comment>  
  46. </owl:ObjectProperty>  
  47.   
  48.   
  49. <owl:ObjectProperty rdf:ID="hasVisitor">  
  50.     <owl:inverseOf rdf:resource="#visitorOf"  />  
  51.     <domain rdf:resource="#Visit"  />  
  52.     <range rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  53.     <label xml:lang="en">has visitor</label>  
  54.     <comment xml:lang="en">defines the user that made the visit</comment>  
  55. </owl:ObjectProperty>  
  56.   
  57. <owl:ObjectProperty rdf:ID="hasVisit">  
  58.     <owl:inverseOf rdf:resource="#visitedResource"  />  
  59.     <range rdf:resource="#Visit"  />  
  60.     <label xml:lang="en">has visit</label>  
  61.     <comment xml:lang="en">defines a visit for a resource</comment>  
  62. </owl:ObjectProperty>  
  63.   
  64. <owl:ObjectProperty rdf:ID="visitedResource">  
  65.     <owl:inverseOf rdf:resource="#hasVisit"  />  
  66.     <domain rdf:resource="#Visit"  />  
  67.     <label xml:lang="en">has visit</label>  
  68.     <comment xml:lang="en">defines a visit for a resource</comment>  
  69. </owl:ObjectProperty>  
  70.   
  71.   
  72. <owl:ObjectProperty rdf:ID="sharedWith">  
  73.     <subPropertyOf rdf:resource="amo:hasGivenAgent"  />   
  74.     <range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"  />  
  75.     <label xml:lang="en">shared with</label>  
  76.     <comment xml:lang="en">specifies the type of relationship that person must have to access this resource</comment>  
  77. </owl:ObjectProperty>  
  78.   
  79.   
  80. <owl:Class rdf:ID="UserHome">   
  81.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Item"  />  
  82.   <label xml:lang="en">User home</label>  
  83.   <comment xml:lang="en">The home space of the user</comment>  
  84. </owl:Class>  
  85.   
  86. <owl:ObjectProperty rdf:ID="userHomeOf">  
  87.     <owl:inverseOf rdf:resource="#hasUserHome"  />  
  88.     <subPropertyOf rdf:resource="http://rdfs.org/sioc/ns#has_container"  />   
  89.     <domain rdf:resource="#UserHome"  />  
  90.     <range rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  91.     <label xml:lang="en">user home of</label>  
  92.     <comment xml:lang="en">specifies the home space of a user</comment>  
  93. </owl:ObjectProperty>  
  94.   
  95.   
  96. <owl:ObjectProperty rdf:ID="hasUserHome">  
  97.     <owl:inverseOf rdf:resource="#userHomeOf"  />  
  98.     <subPropertyOf rdf:resource="http://rdfs.org/sioc/ns#has_container"  />   
  99.     <domain rdf:resource="http://rdfs.org/sioc/ns#User"  />  
  100.     <range rdf:resource="#UserHome"  />  
  101.     <label xml:lang="en">has user home</label>  
  102.     <comment xml:lang="en">specifies the home space of a user</comment>  
  103. </owl:ObjectProperty>  
  104.   
  105.   
  106. <owl:Class rdf:ID="Topic">  
  107.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Item"  />  
  108.   <label xml:lang="en">Topic</label>  
  109.   <comment xml:lang="en">A topic of discussion</comment>  
  110. </owl:Class>  
  111.   
  112. <owl:ObjectProperty rdf:ID="hasTopic">  
  113.     <domain rdf:resource="http://rdfs.org/sioc/ns#UserGroup"  />  
  114.     <range rdf:resource="#Topic"  />  
  115.     <label xml:lang="en">group discussion</label>  
  116.     <comment xml:lang="en">defines a discussion topic in a user group</comment>  
  117. </owl:ObjectProperty>  
  118.   
  119. <owl:Class rdf:ID="Document">  
  120.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Item"  />   
  121.   <rdfs:subClassOf rdf:resource="http://xmlns.com/foaf/O.1/Document"      />      
  122.   <label xml:lang="en">Document</label>  
  123.   <comment xml:lang="en">A document</comment>  
  124. </owl:Class>  
  125.   
  126. <owl:ObjectProperty rdf:ID="family">  
  127.     <subPropertyOf rdf:resource="http://xmlns.com/foaf/0.1/knows"  />   
  128.     <label xml:lang="en">family</label>  
  129.     <comment xml:lang="en">a family relation between two Persons</comment>  
  130. </owl:ObjectProperty>  
  131.   
  132.   
  133.   
  134. <!-- The family property is a top concept for properties of the relationship ontology-->  
  135. <rdf:Description rdf:about="http://purl.org/vocab/relationship/ancestorOf">    
  136.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  137. </rdf:Description>   
  138.   
  139. <rdf:Description rdf:about="http://purl.org/vocab/relationship/childOf">    
  140.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  141. </rdf:Description>   
  142.   
  143. <rdf:Description rdf:about="http://purl.org/vocab/relationship/descendantOf">    
  144.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  145. </rdf:Description>   
  146.   
  147. <rdf:Description rdf:about="http://purl.org/vocab/relationship/grandchildOf">    
  148.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  149. </rdf:Description>   
  150.   
  151. <rdf:Description rdf:about="http://purl.org/vocab/relationship/grandparentOf">    
  152.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  153. </rdf:Description>   
  154.   
  155. <rdf:Description rdf:about="http://purl.org/vocab/relationship/parentOf">    
  156.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  157. </rdf:Description>   
  158.   
  159. <rdf:Description rdf:about="http://purl.org/vocab/relationship/siblingOf">    
  160.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  161. </rdf:Description>   
  162.   
  163. <rdf:Description rdf:about="http://purl.org/vocab/relationship/spouseOf">    
  164.     <rdfs:subPropertyOf rdf:resource="#family"  />   
  165. </rdf:Description>   
  166.   
  167.   
  168. </rdf:RDF>  
 
 
  • Je ne comprend pas trop comment tu modélise les niveaux de partage...

==> Si un document est partagé avec les amis: uri_doc ipernity:sharedWith rel:friendOf,  avec la famille: uri_doc ipernity:sharedWith ipernity:familiy (je viens de voir que dans relationship il n'y a pas super classe pour la famille...) et on délare les deux quand on partage avec la famille et les amis. Si c'est privé on ne déclare rien et personne n'y a accès, ca vous plait? 

  • Je ne vois pas les albums dans la modélisation !

 ==> sioct:ImageGallery

  • Définition de l'espace utilisateur: ipernity:UserHome sous classe de sioc:Item

messages privés

possibilités:

  • Bonne solution selon guigui: extension de sioc:Item ==> ipernity:PrivateMessage, on étend creator pour l'émeteur: 'from' et un modélise le destinaire: 'to', J'ai envie de modèliser les intéractions en ligne en étendant SIOC

existant:

  • sioc:MailMessage qui est une sous classe de sioc:Post, de même on étend creator pour l'émeteur: 'from' et un modélise le destinaire: 'to', mais bon ce ne sont pas des mails 
  • irc:PrivateMessage? dans irc:PrivateMessage étend irc:MessageEntry qui étend sioc:Post, on rest bien relié à SIOC mais on est pas dans la sémantique du message privé dans l'IRC tel que décrit dans cette ontologie
  • Nepomuk Message Ontology: http://www.semanticdesktop.org/ontologies/nmo/ mais ils ne sont reliés à aucun schéma...

Types d'élément

  • document ==> ipernity:Document, sous classe de sioc:Item et foaf:Document
  • post ==> sioc:Post :)
  • album ==> sioct:ImageGallery
  1. <owl:Class rdf:about="http://rdfs.org/sioc/types#ImageGallery">  
  2.   <rdfs:label xml:lang="en">Image Gallery</rdfs:label>  
  3.   <rdfs:comment xml:lang="en">Describes an image gallery, for example, a photo album.</rdfs:comment>  
  4.   <rdfs:subClassOf rdf:resource="http://rdfs.org/sioc/ns#Container"                                                                      />  
  5.   <rdfs:isDefinedBy rdf:resource="http://rdfs.org/sioc/types#"                                                                      />  
  6.   <rdfs:seeAlso rdf:resource="http://www.w3.org/2003/12/exif/ns/IFD"                                                                      />  
  7. </owl:Class>  

Tags

  1. <scot:Tag rdf:id="tag_ID">  
  2.   <scot:tagof rdf:resource="element_ID"                                              />  
  3.   <scot:usedBy rdf:resource="user_ID"                                             />  
  4.   <rdfs:label xml:lang="en"></rdfs:label                                             />  
  5. </scot:Tag>  

Topics

 

  • On ne peut pas utiliser has_discussion avec comme domain UserGroup:

Property: sioc:has_discussion

has_discussion - The discussion that is related to this Item. 

OWL Type: ObjectProperty
Domain: sioc:Item

 J'opte pour 

Property: sioc:topic

topic - A topic of interest, linking to the appropriate URI, e.g. in the Open Directory Project or of a SKOS category. 

OWL Type: ObjectProperty
sub-property-of: dcterms:subject

Par contre je défini une classe ipernity:Topic sous classe de sioc:Item qui peut avoir des réponses pour les commentaires.

 

Modèle

  • une table contenant les 10000 enregistrements d'utilisateurs avec comme colonne :
    • l'identifiant de l'utilisateur

 

  • une table contenant les enregistrements des documents de ces utilisateurs avec comme colonnes :
    • l'identifiant du document 
    • l'identifiant de l'utilisateur
    • le niveau de partage du document : valeurs = privé (personne n'y a accès), amis (tout ou rien), famille (tout ou rien), et déduit : famille et amis. QUESTION : valeurs numériques ?
    • le niveau de partage du document : 0=privé, 1=avec famille, 2=avec amis, 3=avec famille et amis, 4=public

  

  • une table contenant les enregistrements des posts de ces utilisateurs avec comme colonnes :
    • l'identifiant du post 
    • l'identifiant de l'utilisateur 
    • le niveau de partage du pos : IDEM
    • le niveau de partage du post : 0=privé, 1=avec famille, 2=avec amis, 3=avec famille et amis, 4=public

  

  • une table contenant les enregistrements des albums de ces utilisateurs avec comme colonnes : C'est quoi un album ?
    • l'identifiant de l'album
    • l'identifiant de l'utilisateur
    • le niveau de partage de l'album
    • les compteurs du nombre d'élements partagés: c=total des élements, family_c=partagés avec famille, ...

  

- une table contenant les relations entre ces utilisateurs avec comme colonnes:

         - l'identifiants de l'utilisateur 1

         - l'identifiants de l'utilisateur 2

         -          la relation donnée par l'utilisateur 1 à l'utilisateur 2 : c'est quoi ? AMI OU FAMILLE ?

      Il existe 3 type de relation entre membres : 4=simple contact (comme un favori), 1=réseau famille, 2=réseau amis, 3=réseau ami et famille.

- une table contenant les visites des utilisateurs avec comme colonnes:

         - l'identifiants de l'utilisateur visitant (user_id),

         - l'identifiants de l'utilisateur visité (en fait du propriétaire de l'élément : owner_id),

         - le nombre de visites (visits)

         - le type d'élément visité (item) (item) (doc, post, topic, album, home, blog) : VALEURS NUMERIQUES ?

item et item_id indiquent l'élément appartenant à owner_id. ex: "doc" 1 indique le document doc_id=1

         - l'identifiant de l'élément visité (item_id)
         - la date de la dernière visite (visit_at)
 

- une table contenant les commentaires des utilisateurs avec comme colonnes:

        - l'identifiants de l'utilisateur commentant (user_id)

        - le type d'élément commenté, (item) (doc, post, topic, album, home, blog):

         - l'identifiants de l'élément commenté (item_id)

        - l'identifiant du commentaire auquel répond ce commentaire (parent_id)

        - la date de création du commentaire (created_at)

  

- une table contenant les messages des utilisateurs avec comme colonnes:

         - l'identifiants de l'utilisateur auteur du message (sender_id),

       -          l'identifiants de l'utilisateur destinataire (recipient_id)

         -  la date du message (sent_at)

 

- une table contenant les tags des documents et posts avec comme colonnes:

En fait cette table (itemkeywords) devrait s'appeller itemtags car elle contient les tags keyword et profile.

         - l'identifiants de l'utilisateur auteur du tag (user_id),

         - le type d'élément sur lequel porte le tag (item = doc ou post)

         - l'identifiant de l'élément sur lequel porte le tag (item_id)

         - le  propriétaire de l'élement : owner_id

         - le type de tag (keyword / profile)

       -  l'identifiant du tag (id)

  

- une table contenant les tags mot-clé des utilisateurs avec comme colonnes:

         - l'identifiants du tag mot-clé,

         - texte du tag mot-clé

  

 - une table contenant les groupes des utilisateurs avec comme colonnes:

         - l'identifiants du groupe,

         - type du groupe (privé, public, sur invitation) ?

type 0 = privé invisible, nécessite une invitation. 1= public, 2= public + invitation

 - une table contenant les rôles des utilisateurs dans les groupes avec comme colonnes:

        - l'identifiants du groupe,

        - l'identifiants de l'utilisateur,

        - rôle : VALEURS ?

role : 1=administrateur, 2=moderateur, 4=membre

- une table contenant les topics des groupes avec comme colonnes:

C'est quoi un topic exactement ? : un topic est un sujet de discussion dans le groupe.

         - l'identifiants du topic,

         - l'identifiants du groupe,

         - l'identifiants de l'utilisateur auteur

Mots clés:
FichierTailleDateAttaché par 
 ipernity (5).rdf
Aucune description
6.13 Ko20:59, 23 Avr 2009Guillaume Ereteo?Actions
Images (1)
Voir 1 - 1 sur 1 images | Voir tout
Aucune description
ipernity ...  Actions
Commentaires (0)
Vous devez être connecté pour poster un commentaire.