Difference between revisions of "Skype-call 09-09-2016"
Line 25: | Line 25: | ||
# class representing profiles, that is, widget configurations associated with users | # class representing profiles, that is, widget configurations associated with users | ||
:Profile rdf:type rdfs:Class . | :Profile rdf:type rdfs:Class . | ||
− | |||
# profiles define entries | # profiles define entries | ||
− | :Entry rdf:type rdfs:Class . | + | :Entry rdf:type rdfs:Class . |
− | + | ||
# entries specify which widget they relate to | # entries specify which widget they relate to | ||
− | :Widget rdf:type rdfs:Class . | + | :Widget rdf:type rdfs:Class . |
− | + | ||
# entries can be associated with parameters to be added to widget requests | # entries can be associated with parameters to be added to widget requests | ||
− | :Parameter rdf:type rdfs:Class . | + | :Parameter rdf:type rdfs:Class . |
− | + | ||
# entries can also define operations to be executed upo loading of the widget | # entries can also define operations to be executed upo loading of the widget | ||
# since profile entries define (ordered) API calls as an rdf:List, list elements | # since profile entries define (ordered) API calls as an rdf:List, list elements | ||
# cannot have class :APICall as range, using property definitions seems to mitigate this | # cannot have class :APICall as range, using property definitions seems to mitigate this | ||
:APICall rdf:type rdfs:Class . | :APICall rdf:type rdfs:Class . | ||
− | + | ||
− | + | ||
# properties | # properties | ||
Line 46: | Line 41: | ||
:owner rdf:type rdfs:Property ; | :owner rdf:type rdfs:Property ; | ||
rdfs:domain :Profile ; | rdfs:domain :Profile ; | ||
− | rdfs:range foaf:Person . | + | rdfs:range foaf:Person . |
− | + | ||
# property "item" relate entries to the profile they belong to | # property "item" relate entries to the profile they belong to | ||
:item rdf:type rdfs:Property ; | :item rdf:type rdfs:Property ; | ||
rdfs:domain :Profile ; | rdfs:domain :Profile ; | ||
− | rdfs:range :Entry . | + | rdfs:range :Entry . |
− | + | ||
# property "target" indicate which widget an entry refers to | # property "target" indicate which widget an entry refers to | ||
:target rdf:type rdfs:Property ; | :target rdf:type rdfs:Property ; | ||
rdfs:domain :Entry ; | rdfs:domain :Entry ; | ||
− | rdfs:range :Widget . | + | rdfs:range :Widget . |
− | + | ||
# property "parameter" specify request parameters | # property "parameter" specify request parameters | ||
:parameter rdf:type rdfs:Property ; | :parameter rdf:type rdfs:Property ; | ||
rdfs:domain :Entry ; | rdfs:domain :Entry ; | ||
− | rdfs:range :Parameter . | + | rdfs:range :Parameter . |
− | + | ||
# property "paramName" specify the name of the parameter | # property "paramName" specify the name of the parameter | ||
:paramName rdf:type rdfs:Property ; | :paramName rdf:type rdfs:Property ; | ||
rdfs:domain :Parameter ; | rdfs:domain :Parameter ; | ||
− | rdfs:range xsd:string . | + | rdfs:range xsd:string . |
− | + | ||
# property "paramValue" specify the value of the parameter | # property "paramValue" specify the value of the parameter | ||
:paramValue rdf:type rdfs:Property ; | :paramValue rdf:type rdfs:Property ; | ||
rdfs:domain :Parameter ; | rdfs:domain :Parameter ; | ||
− | rdfs:range xsd:string . | + | rdfs:range xsd:string . |
− | + | ||
# property "apiCalls" specify a list of functions to be called upon loading of a widget | # property "apiCalls" specify a list of functions to be called upon loading of a widget | ||
:apiCalls rdf:type rdfs:Property ; | :apiCalls rdf:type rdfs:Property ; | ||
rdfs:domain :Entry ; | rdfs:domain :Entry ; | ||
− | rdfs:range rdf:List . | + | rdfs:range rdf:List . |
− | + | ||
# property "functionName" specify the name of the API function | # property "functionName" specify the name of the API function | ||
:functionName rdf:type rdfs:Property ; | :functionName rdf:type rdfs:Property ; | ||
rdfs:domain :APICall ; | rdfs:domain :APICall ; | ||
− | rdfs:range xsd:string . | + | rdfs:range xsd:string . |
− | + | ||
# property "functionArgs" specify additional parameters for the API function call | # property "functionArgs" specify additional parameters for the API function call | ||
:functionArgs rdf:type rdfs:Property ; | :functionArgs rdf:type rdfs:Property ; | ||
rdfs:domain :APICall ; | rdfs:domain :APICall ; | ||
− | rdfs:range xsd:string . | + | rdfs:range xsd:string . |
− | + | ||
# property "index" specify the ordering of widgets in the workspaces | # property "index" specify the ordering of widgets in the workspaces | ||
:index rdf:type rdfs:Property ; | :index rdf:type rdfs:Property ; | ||
rdfs:domain :Entry ; | rdfs:domain :Entry ; | ||
− | rdfs:range xsd:positiveInteger . | + | rdfs:range xsd:positiveInteger . |
− | + | ||
# property "workspace" specify the workspace a given profile entry refers to | # property "workspace" specify the workspace a given profile entry refers to | ||
:workspace rdf:type rdfs:Property ; | :workspace rdf:type rdfs:Property ; | ||
Line 98: | Line 83: | ||
rdfs:range xsd:positiveInteger . | rdfs:range xsd:positiveInteger . | ||
− | + | # default data | |
− | + | ||
:defProfile rdf:type :Profile ; | :defProfile rdf:type :Profile ; |
Revision as of 10:27, 9 September 2016
Partecipanti
- Cristiano Fugazza
- Monica Pepe
- Laura Criscuolo
- Stefano Menegon
- Diego Migliavacca
- Andrea Mancuso
Agenda
- Valutazione stato attuale interfaccia al seguente indirizzo [[1]]
- Discussione RDF schema per la rappresentazione dei profili
Rappresentazione dei profili
Draft schema di riferimento userProfile.ttl
@prefix : <http://sp7.irea.cnr.it/rdfdata/schemas#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . # classes # class representing profiles, that is, widget configurations associated with users :Profile rdf:type rdfs:Class . # profiles define entries :Entry rdf:type rdfs:Class . # entries specify which widget they relate to :Widget rdf:type rdfs:Class . # entries can be associated with parameters to be added to widget requests :Parameter rdf:type rdfs:Class . # entries can also define operations to be executed upo loading of the widget # since profile entries define (ordered) API calls as an rdf:List, list elements # cannot have class :APICall as range, using property definitions seems to mitigate this :APICall rdf:type rdfs:Class . # properties # a profile is related to a specific user (which can also be the default one) :owner rdf:type rdfs:Property ; rdfs:domain :Profile ; rdfs:range foaf:Person . # property "item" relate entries to the profile they belong to :item rdf:type rdfs:Property ; rdfs:domain :Profile ; rdfs:range :Entry . # property "target" indicate which widget an entry refers to :target rdf:type rdfs:Property ; rdfs:domain :Entry ; rdfs:range :Widget . # property "parameter" specify request parameters :parameter rdf:type rdfs:Property ; rdfs:domain :Entry ; rdfs:range :Parameter . # property "paramName" specify the name of the parameter :paramName rdf:type rdfs:Property ; rdfs:domain :Parameter ; rdfs:range xsd:string . # property "paramValue" specify the value of the parameter :paramValue rdf:type rdfs:Property ; rdfs:domain :Parameter ; rdfs:range xsd:string . # property "apiCalls" specify a list of functions to be called upon loading of a widget :apiCalls rdf:type rdfs:Property ; rdfs:domain :Entry ; rdfs:range rdf:List . # property "functionName" specify the name of the API function :functionName rdf:type rdfs:Property ; rdfs:domain :APICall ; rdfs:range xsd:string . # property "functionArgs" specify additional parameters for the API function call :functionArgs rdf:type rdfs:Property ; rdfs:domain :APICall ; rdfs:range xsd:string . # property "index" specify the ordering of widgets in the workspaces :index rdf:type rdfs:Property ; rdfs:domain :Entry ; rdfs:range xsd:positiveInteger . # property "workspace" specify the workspace a given profile entry refers to :workspace rdf:type rdfs:Property ; rdfs:domain :Entry ; rdfs:range xsd:positiveInteger . # default data :defProfile rdf:type :Profile ; :owner :defUser ; :item [ :target :widget_1 ; :parameter [ :paramName "pippo" ; :paramValue "A" ] ; :parameter [ :paramName "pluto" ; :paramValue "B" ] ; :apiCalls [ rdf:first [ :functionName "someFunction" ; :functionArgs "someArgument" ] ; rdf:rest [ rdf:first [ :functionName "someOtherFunction" ; :functionArgs "someOtherArgument" ] ; rdf:rest rdf:nil ] ] ; :index 1 ; :workspace 1 ] ; :item [ :target :widget_2 ; :parameter [ :paramName "ying" ; :paramValue "0" ] ; :parameter [ :paramName "yang" ; :paramValue "1" ] ; :apiCalls [ rdf:first [ :functionName "anotherFunction" ; :functionArgs "anotherArgument" ] ; rdf:rest rdf:nil ] ; :index 2 ; :workspace 1 ] ; :item [ :target :widget_3 ; :parameter [ :paramName "foo" ; :paramValue "X" ] ; :parameter [ :paramName "bar" ; :paramValue "Y" ] ; :apiCalls [ rdf:first [ :functionName "oneMoreFunction" ; :functionArgs "OneMoreArgument" ] ; rdf:rest rdf:nil ] ; :index 1 ; :workspace 2 ] . :defUser rdf:type foaf:Person . :widget_1 rdf:type :Widget . :widget_2 rdf:type :Widget . :widget_3 rdf:type :Widget .