Persons and organizations' requirement
hibadjebabria169 opened this issue · comments
Here is the new modelisation of persons and organizations' objects in agroportal
we'll follow the diagram below to create and manipulate these objects
- organization and person are two classes that extend the class foaf:Agent
- both classes will have a unique id adding to their own attributes
- to clarify the bi-directional link between Agents and any submission, the property prov:contributed indicates that a given agent (person/organization) is contributing to a submission (by creation,curation...), and the other way around the submission has a set of properties to indicate agents and their roles attributed to them
Ok great
There a re couple of non-up-to-date element in this diagram @hibadjebabria169
- scoro:hasORCID and hasROR go away
- Agent needs an identifier type property
- Agent need a "type" property with restricted value Person/Organization so that we can distinguish them
- prefLabel and altLabel are in skos NS not nkos
- missing relation (affiliation) btw a person and an organization
Also can you list here the exact URIs for the properties identified so that is faster to encode them.
@hibadjebabria169 Can you update this diagram and requirements with the remarks done ?
By the way: I found the property to use for affilitation: https://www.w3.org/TR/vocab-org/#org:memberOf
I updated it and sent it to you on slack، need to be validated and add this property…
I’ll update it based on what you just added
I updated it and sent it to you on slack، need to be validated and add this property…
I’ll update it based on what you just added
@hibadjebabria169 can you put here the latest version of the model
For reference, this is what I have in my side
@hibadjebabria169 This diagram needs a few changes as it contains multiples ambiguities and errors.
Suggested changes:
- Person and Organization do not need a identifier => they have an URI (will be @id in our system)
- Agent has idetifier in addition of URI => property "Uses" should be a standard property "hasIdentifier" or alike from a standard vocab... hard to use dct:identifier has it has for range "Literal" and in our case it will not be a lIeteral
- We need a standard class for the Identifier object
- Is there a memberOf property in FOAF ? or is org:memberOf explicitly about connecting foaf:Organization and foaf:Person
- There is 2 errors in the name of properties in the Agent class
- Error on prov:Contributed => if its a property from PROV => no capital
To be discussed.
We need a standard class for the Identifier object
I suggestadms:Identifer,
below an example
<https://dcat.example.org/PoelenJorritHID> a adms:Identifier;
skos:notation "https://orcid.org/0000-0003-3138-4118"^^xsd:anyURI ;
# the authority/agency defining the identifier scheme, used if the agency has no URI
adms:schemaAgency "ORCID" ;
Source: https://www.w3.org/TR/vocab-dcat-2/#ex-adms-identifier
Agent has idetifier in addition of URI => property "Uses" should be a standard property "hasIdentifier" or alike from a standard vocab... hard to use dct:identifier has it has for range "Literal" and in our case it will not be a lIeteral
I suggest using adms:identifier
, which has as range adms:Identifier
(see reference here https://www.w3.org/TR/vocab-adms/#adms-identifier)
What do you think @hibadjebabria169 , @jonquet ?
adms:identifier and adms:Identifier c'est tres bien
We can then also use adms properties to describe the Identifier object.
Bon example d'usage ici: https://www.w3.org/TR/vocab-dcat-2/#ex-adms-identifier
Is there a memberOf property in FOAF ? or is org:memberOf explicitly about connecting foaf:Organization and foaf:Person
I checked. We can stay with org:memberOf
FOAF does not include this. It does at "member" but for foaf:Group which are not foaf:Organiaztion