sarefShape.ttl 3.12 KB
Newer Older
Maxime Lefrançois's avatar
Maxime Lefrançois committed
@prefix dash: <http://datashapes.org/dash#> .
@prefix saref: <https://saref.etsi.org/saref#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix vann: <http://purl.org/vocab/vann/> .

saref:DatatypeExampleShape
	a sh:NodeShape ;
	  #sh:targetNode <https://saref.etsi.org/saref#> ;
	  sh:targetClass owl:Ontology ;
	
	#owl:Ontology	
	sh:property [
		sh:targetNode <https://saref.etsi.org/saref#> ;
		sh:path rdf:type ;
		sh:value owl:Ontology ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
	
	] ;
	
	
	#owl:versionIRI	
	sh:property [
	
		sh:path owl:versionIRI ;
		sh:nodeKind sh:IRI ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
	
	] ;
	
	#owl:versionInfo	
	sh:property [
	
		sh:path owl:versionInfo ;
		sh:datatype xsd:string ;
		sh:minCount 1 ;
	
	] ;
	
	#owl:priorVersion	 potentially an owl:priorVersion, that points to the IRI of the previous module version;
	sh:property [
	
	] ;
	
	#owl:imports potentially one or more owl:imports that point to other ontologies (or ontology modules) to import, in their specific version.
	sh:property [
	
	] ;
	
	
	#voaf:vocabulary	
	#sh:property [
	#	sh:path voaf:vocabulary ;
	#	sh:minCount 1 ;
	#] ;
	
	
	#dctemrs:title	
	sh:property [
		sh:path dcterms:title ;
		sh:datatype xsd:string ;
		sh:minCount 1 ;
		#sh:languageIn ("en") ;
	] ;  
	
	#dcterms:description	
	sh:property [
		sh:path dcterms:description ;
		sh:datatype xsd:string ;
		sh:minCount 1 ;
		#sh:languageIn ("en") ;
	] ;
	
	#dctemrs:issued
		sh:property [
		sh:path dcterms:issued ;
		sh:datatype xsd:date ;
		sh:minCount 1 ;
		
	] ;
	
	#dctemrs:modified
		sh:property [
		sh:path dcterms:modified ;
		sh:datatype xsd:date ;
		sh:minCount 1 ;
		
	] ;
	
	#dcterms:creator
	#	sh:property [
	#	sh:path dcterms:creator ;
	#	sh:nodeKind sh:IRI ;
	#	sh:minCount 1 ;
	#] ;
	
	#dcterms:contributor
		sh:property [
		sh:path dcterms:contributor ;
		sh:nodeKind sh:IRI ;
		sh:minCount 0 ;
		
	] ;
		
	#dcterms:publisher
		sh:property [
		sh:path dcterms:publisher ;
		sh:nodeKind sh:IRI ;
		sh:pattern "https://www.etsi.org/" ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
		
	] ;
	
	#dcterms:license
		sh:property [
		sh:path dcterms:license ;
		sh:nodeKind sh:IRI ;
		sh:pattern "https://forge.etsi.org/etsi-software-license" ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
	] ;
	
	#vann:preferredNamespacePrefix
		sh:property [
		sh:path vann:preferredNamespacePrefix ;
		sh:pattern "saref" ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
	] ;
	
	#vann:preferredNamespaceUri
		sh:property [
		sh:path vann:preferredNamespaceUri ;
		#sh:nodeKind sh:IRI ;
		sh:pattern "https://saref.etsi.org/saref#" ;
		sh:minCount 1 ;
		sh:maxCount 1 ;
	] ;
	
	
	#rdfs:label #what else to add?
	#	sh:property [
	#	sh:targetClass owl:ObjectProperty ;
	#	sh:path rdfs:label ;
	#	sh:languageIn ( "en" "fr" "ar") ;
	#	] ;
	
	#rdfs:comment #what else to add?
	#	sh:property [
	#	sh:targetClass owl:ObjectProperty ;
	#	sh:path rdfs:comment ;
	#	sh:languageIn ( "en" "fr" "ar") ;
	#	] .