solid / team

MIT License
3 stars 4 forks source link

Solid People to RDF : Which Ontologies #16

Open jeff-zucker opened 3 years ago

jeff-zucker commented 3 years ago

Please use this issue to discuss which ontologies and terms we should use for storing and displaying solid process information about the Team. See also Solid People to RDF : What to display or store? for discussion on what data we want. Here's my preliminary example of a Team member record.

@prefix  foaf:   <http://xmlns.com/foaf/0.1/> .
@prefix  org:    <https://www.w3.org/ns/org#> .
@prefix  solid:  <http://www.w3.org/ns/solid/terms#> .
@prefix  vcard:  <http://www.w3.org/2006/vcard/ns#> .
@prefix  dbo:    <http://dbpedia.org/ontology/>.
@prefix  dbp:    <http://dbpedia.org/page/>.
@prefix  gitter: <https://gitter.im/solid/> .
@prefix  forum:  <https://forum.solidproject.org/> .
@prefix  tbd:    <http://example.com/> .

<https://marrelleb.inrupt.net/profile/card#me">

    a foaf:Person ;
    foaf:name "Marrelle Bailey" ;
    foaf:nick "Marrelle" ;
    solid:preferredSubjectPronoun "she";
    solid:preferredObjectPronoun "her";
    dbo:locationCountry dbp:United_States ;
    foaf:thumbnail <https://avatars.githubusercontent.com/u/66318176?v=4> ;
    foaf:account 
        [ foaf:accountServiceHomepage github: ;
          foaf:accountName "MarrelleBailey" ;
          foaf:homepage github:MarrelleBailey
        ] ,
        [ foaf:accountServiceHomepage forum: ;
          foaf:accountName "@MarrelleB" ;
        ] ,
        [ foaf:accountServiceHomepage gitter:chat ;
          foaf:accountName "@MarrelleBailey" ;
        ] .
    foaf:weblog <TBD-get-Marrelle's-blog-address> ;
    org:memberOf  tbd:Administrators, tbd:DEI-Board, tbd:DEI-Team ;

    foaf:workplaceHomepage <https://inrupt.com> ;
    org:holds [ org:postin ex:Inrupt ]; 
    #
    # AND/OR schema:worksFor OR  schema:affiliation ?

    # there's no "biography" term I can find, maybe schema:description ?
    #
    vcard:note """
        Marrelle Bailey is the moderator for Solid World and works on managing
        the Solid Team projects. She is also the lead chair for the Diversity,
        Equity, and Inclusion Team for the Solid Community. She works at Inrupt
        as the Community & Communications Organizer.
    """ .

[edit : added foaf:Person] [edit : correct postin syntax]

kjetilk commented 3 years ago

I'd like to see the gender pronouns in a bigger vocabulary, my first choice would have been FOAF, but I'm not sure that FOAF is being updated anymore, so perhaps schema.org.

Schema.org has a gender property, which permits a URI or a literal, and the literal is so far encouraged for non-binary gender identities. Schema.org also has https://schema.org/GenderType but the subclasses only include Male and Female. But there's nothing stopping us from generating more subclasses. I guess we could start from something like https://ok2bme.ca/resources/kids-teens/what-does-lgbtq-mean/

kay-kim commented 3 years ago

Just curious -- there is https://schema.org/worksFor. I'm wondering if that might be more intuitive than https://www.w3.org/ns/org#postin.

jeff-zucker commented 3 years ago

@kay-kim - We can use any label we want for an ontology term. So what the user sees can be "Works for" regardless of which RDF ontology term we use. The ontology will mostly be handled behind the scenes by the software, it's not really for human consumption. I'd value your thoughts on the human consumption bits - user display and searching - here.

In terms of the ontology , you may be right that the schema:worksFor is a better choice. I made a mistake, the full semantics looks like this :

 <PersonX> org:holds [                                                           
   a org:Post ;                                                                 
   org:postin org:Organization ;                                                
   foaf:label "senior software developer" ;                                     
   org:role "front-end software developer" ;                                    
] .

So it lets us specify both the postition and the role, which convey different information. This is a much richer semantics than schema:worksFor which, AFAIK, has no implied semantic relationships. This may be overkill for our purposes.