Closed thewillyhuman closed 4 years ago
These some are of the elements that compose at project. Cardinalities, if given, are tentative and should be discussed. I'm used to shapes from Wikidata where almost all fields are optional since data is extracted from multiple heterogeneous sources, but we need to define what information must exist for something to be a project:
There is still work to do on the following fields:
What about this?
prefix asio: <http://purl.org/hercules/asio/core#>
prefix xsd: <http://www.w3.org/2001/XMLSchema#>
prefix foaf: <http://xmlns.com/foaf/0.1/>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
# Asio project node.
asio:ProjectShape EXTRA rdf:type {
# Project type.
rdf:type [asio:RegionalProject asio:NationalProject asio:EuropeanProject asio:InternationalProject]+ ;
# Label and comment.
rdfs:label rdf:langString + ;
rdfs:comment rdf:langString * ;
# Project ID.
asio:projectId xsd:integer ? ;
# Project acronym.
asio:projectAcronym xsd:string ? ;
# Project coordinator/s.
asio:coordinatedBy @asio:AgentShape * ;
# Project aim.
asio:projectObjective rdf:langString ? ;
# Project keywords.
asio:projectKeyword rdf:langString * ;
# Project dates.
asio:projectEndDate xsd:date ? ;
asio:projectStartDate xsd:date ;
# Project foundings.
asio:isFundedBy @asio:FundingProgrammeShape * ;
# Project research field.
asio:hasResearchField @asio:ResearchFieldShape * ;
# Project outcome.
asio:projectOutcome . * ;
}
asio:AgentShape {
a [ foaf:Agent ]
}
asio:FundingProgrammeShape {
}
asio:ResearchFieldShape @asio:ESSubjectAreas3rdListShape OR @asio:ESSubjectAreas2ndListShape OR @asio:ESSubjectAreas1ndListShape
asio:ESSubjectAreas3rdListShape { }
asio:ESSubjectAreas2ndListShape { }
asio:ESSubjectAreas1ndListShape { }
Ok, we are losing some information there since the subject areas schemes (e.g. ESSubjectAreas3rdList) come from asioModules and not from asio (core), but I think that is not important for the validation. Or is it? Maybe we should also update the value of the asio prefix, currently it is in the ontology:
@prefix asio: <http://purl.org/hercules/asio/core#> .
Prefix updated
I open this issue to discuss the structure of the shape used to validate the project class of ontology.
Class: https://github.com/weso/hercules-ontology/blob/86659a7b83b6754492885771b3fa730738af7ede/src/asio-core.ttl#L1437-L1439