# SHACL shapes, rendered from the LinkML model.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .

<https://smartdatamodels.org/SummaryGroup>
  a sh:PropertyGroup ;
  sh:order 0 ;
  rdfs:label "Základné"@sk, "Summary"@en .

<https://smartdatamodels.org/DetailGroup>
  a sh:PropertyGroup ;
  sh:order 1 ;
  rdfs:label "Detail"@sk, "Detail"@en .

<https://smartdatamodels.org/CityWorkShape>
  a sh:NodeShape ;
  sh:targetClass <https://smartdatamodels.org/CityWork> ;
  sh:closed false ;
  sh:property [
    sh:path <http://schema.org/name> ;
    sh:name "name" ;
    sh:order 0 ;
    sh:group <https://smartdatamodels.org/SummaryGroup> ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    rdfs:comment "The name, per language."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/permitKind> ;
    sh:name "permitKind" ;
    sh:order 1 ;
    sh:group <https://smartdatamodels.org/SummaryGroup> ;
    sh:in ( "event" "excavation" "trafficArrangement" ) ;
    sh:minCount 1 ;
    sh:maxCount 1 ;
    rdfs:comment "What the permit lets its holder do on the public area."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/permitNumber> ;
    sh:name "permitNumber" ;
    sh:order 2 ;
    sh:group <https://smartdatamodels.org/SummaryGroup> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1 ;
    rdfs:comment "The application number the city's permit register gives the permit, such as KP1900206-23."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/permitStatus> ;
    sh:name "permitStatus" ;
    sh:order 3 ;
    sh:group <https://smartdatamodels.org/SummaryGroup> ;
    sh:in ( "ongoing" "setup" "teardown" "upcoming" ) ;
    sh:minCount 1 ;
    sh:maxCount 1 ;
    rdfs:comment "Where the permitted work or event stands today."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/permitStart> ;
    sh:name "permitStart" ;
    sh:order 4 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:date ;
    sh:minCount 1 ;
    sh:maxCount 1 ;
    rdfs:comment "The first day the permit covers."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/permitEnd> ;
    sh:name "permitEnd" ;
    sh:order 5 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:date ;
    sh:minCount 1 ;
    sh:maxCount 1 ;
    rdfs:comment "The last day the permit covers."
  ] ;
  sh:property [
    sh:path <http://schema.org/description> ;
    sh:name "description" ;
    sh:order 6 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    rdfs:comment "A short description, per language."
  ] ;
  sh:property [
    sh:path <http://schema.org/address> ;
    sh:name "address" ;
    sh:order 7 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:anyURI ;
    sh:maxCount 1 ;
    rdfs:comment "The postal address as the source publishes it, field by field (Smart Data Models' common PostalAddress); a field the source leaves out is absent, never guessed from a line of text."
  ] ;
  sh:property [
    sh:path <https://joinedcontext.com/models/refDistrict> ;
    sh:name "refDistrict" ;
    sh:order 8 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:anyURI ;
    sh:maxCount 1 ;
    rdfs:comment "The district the record lies in."
  ] ;
  sh:property [
    sh:path <https://smartdatamodels.org/dataProvider> ;
    sh:name "dataProvider", "Poskytovatel"@cs, "Anbieter"@de, "Provider"@en, "Tarjoaja"@fi, "Poskytovateľ"@sk ;
    sh:order 9 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    rdfs:comment "Who publishes the data the entity was read from, as an application credits it beside the licence (CC BY 4.0 for every feed of this space)."
  ] ;
  sh:property [
    sh:path <https://smartdatamodels.org/source> ;
    sh:name "source", "Zdroj"@cs, "Quelle"@de, "Source"@en, "Lähde"@fi, "Zdroj"@sk ;
    sh:order 10 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:datatype xsd:anyURI ;
    sh:maxCount 1 ;
    rdfs:comment "The open-data service the entity was read from."
  ] ;
  sh:property [
    sh:path <https://purl.org/geojson/vocab#geometry> ;
    sh:name "location" ;
    sh:order 11 ;
    sh:group <https://smartdatamodels.org/DetailGroup> ;
    sh:maxCount 1 ;
    rdfs:comment "Where the entity is, as GeoJSON geometry."
  ] .
